PKGNAME := $(shell sed -n "s/Package: *\([^ ]*\)/\1/p" DESCRIPTION) PKGVERS := $(shell sed -n "s/Version: *\([^ ]*\)/\1/p" DESCRIPTION) PKGSRC := $(shell basename $(PWD)) # Specify the directory holding R binaries. To use an alternate R build (say a # pre-prelease version) use `make RBIN=/path/to/other/R/` or `export RBIN=...` # If no alternate bin folder is specified, the default is to use the folder # containing the first instance of R on the PATH. RBIN ?= $(shell dirname "`which R`") .PHONY: help help: @echo "\nExecute development tasks for $(PKGNAME)\n" @echo "Usage: \`make \` where is one of:" @echo "" @echo "Development Tasks" @echo "-----------------" @echo " build Create the package" @echo " check Invoke build and then check the package" @echo " install Invoke build and then install the result" @echo "" @echo "Packaging Tasks" @echo "---------------" @echo " release Give some reminders" @echo "" @echo "Using R in: $(RBIN)" @echo "Set the RBIN environment variable to change this." @echo "" #------------------------------------------------------------------------------ # Development Tasks #------------------------------------------------------------------------------ build: cd ..;\ "$(RBIN)/R" CMD build $(PKGSRC) install: build cd ..;\ "$(RBIN)/R" CMD INSTALL $(PKGNAME)_$(PKGVERS).tar.gz check: build cd ..;\ "$(RBIN)/R" CMD check --as-cran $(PKGNAME)_$(PKGVERS).tar.gz