Вы можете сделать то, что мы делаем для пакетов Rcpp *.Вот RcppGSL:
RcppGSL.pdf: RcppGSL/RcppGSL.Rnw
cp -f RcppGSL/RcppGSL.Rnw .
$(RSCRIPT) --vanilla -e "require(highlight); \
driver <- HighlightWeaveLatex(boxes = TRUE); \
Sweave( 'RcppGSL.Rnw', driver = driver ); "
$(RSCRIPT) -e "tools::texi2dvi( 'RcppGSL.tex', pdf = TRUE, clean = FALSE )"
bibtex RcppGSL
$(RSCRIPT) -e "tools::texi2dvi( 'RcppGSL.tex', pdf = TRUE, clean = TRUE )"
cp RcppGSL/RcppGSL-fake.Rnw RcppGSL.Rnw
Это сохраняет фактический источник и «поддельный» вариант в подкаталоге inst/doc/RcppGSL/
, чтобы обманным путем заставить R воссоздать pdf только тогда, когда мы этого тоже хотим - в противном случае он видитRnw и pdf с тем же базовым именем и счастливы.
Чуть более запутанный, чем базовый Makefile
, с которого вы начали, но в настоящее время все еще единственный способ переключиться на выделение , который мы знаем,