Skip to content

Commit ab3ecf1

Browse files
committed
Makefile
1 parent b7b1736 commit ab3ecf1

2 files changed

Lines changed: 82 additions & 0 deletions

File tree

.Rbuildignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
^.*\.Rproj$
22
^LICENSE\.md$
3+
^Makefile$
34
^README\.Rmd$
45
^\.Rproj\.user$
56
^\.github$

Makefile

Lines changed: 81 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
objects := $(wildcard R/*.R) DESCRIPTION
2+
version := $(shell egrep "^Version:" DESCRIPTION | awk '{print $$NF}')
3+
pkg := $(shell egrep "^Package:" DESCRIPTION | awk '{print $$NF}')
4+
tar := $(pkg)_$(version).tar.gz
5+
tinytest := $(wildcard tests/testthat/*.R)
6+
checkLog := $(pkg).Rcheck/00check.log
7+
qmd := $(wildcard vignettes/*.qmd)
8+
rmd := $(wildcard vignettes/*.Rmd)
9+
vignettes := $(patsubst %.qmd,%.html,$(qmd)) $(patsubst %.Rmd,%.html,$(rmd))
10+
11+
12+
.PHONY: check
13+
check: $(checkLog)
14+
15+
16+
.PHONY: build
17+
build: $(tar)
18+
19+
20+
.PHONY: install
21+
install: $(tar)
22+
R CMD INSTALL $(tar)
23+
24+
25+
.PHONY: preview
26+
preview: $(vignettes)
27+
28+
29+
.PHONY: pkgdown
30+
pkgdown:
31+
Rscript -e "library(methods); pkgdown::build_site();"
32+
33+
34+
$(tar): $(objects) $(qmd) $(rmd)
35+
@$(RM) -rf src/RcppExports.cpp R/RcppExports.R
36+
@Rscript -e "library(methods);" \
37+
-e "Rcpp::compileAttributes()" \
38+
-e "devtools::document();";
39+
R CMD build --compact-vignettes=gs+qpdf .
40+
41+
42+
$(checkLog): $(tar) $(tinytest)
43+
R CMD check $(tar)
44+
45+
46+
.PHONY: check-as-cran
47+
check-as-cran: $(tar)
48+
R CMD check --as-cran $(tar)
49+
50+
51+
.PHONY: check-revdep
52+
check-revdep: $(tar)
53+
@mkdir -p revdep
54+
@rm -rf revdep/*.Rcheck
55+
@cp $(tar) revdep
56+
R CMD BATCH --no-save --no-restore misc/revdep_check.R &
57+
58+
59+
vignettes/%.html: vignettes/%.Rmd
60+
Rscript -e "library(methods); rmarkdown::render('$?')"
61+
62+
63+
vignettes/%.html: vignettes/%.qmd
64+
quarto render $< --to html --output $@
65+
66+
67+
.PHONY: readme
68+
readme: README.md
69+
README.md: README.Rmd
70+
@Rscript -e "rmarkdown::render('$<')"
71+
72+
73+
.PHONY: TAGS
74+
TAGS:
75+
Rscript -e "utils::rtags(path = 'R', ofile = 'TAGS')"
76+
gtags
77+
78+
.PHONY: clean
79+
clean:
80+
@$(RM) -rf *~ */*~ *.Rhistroy *.tar.gz src/*.so src/*.o \
81+
*.Rcheck/ *.Rout .\#* *_cache

0 commit comments

Comments
 (0)