aboutsummaryrefslogtreecommitdiff
path: root/GNUmakefile
diff options
context:
space:
mode:
authorjranke <jranke@edb9625f-4e0d-4859-8d74-9fd3b1da38cb>2013-11-11 20:22:40 +0000
committerjranke <jranke@edb9625f-4e0d-4859-8d74-9fd3b1da38cb>2013-11-11 20:22:40 +0000
commit4091cfd04c58cdd106b7c48c8b9a51e9179f4875 (patch)
treea77beb8b1d0ab94813a7c5669373dab6e9f80eed /GNUmakefile
parent42a415484fd632116e6fd19a00761e9142240706 (diff)
- Add a simple makefile
- Add a .Rbuildignore file - Clean up unit tests a bit - Test the gwidgets notebook from the knitr demo git-svn-id: svn+ssh://svn.r-forge.r-project.org/svnroot/kinfit/pkg/mkin@150 edb9625f-4e0d-4859-8d74-9fd3b1da38cb
Diffstat (limited to 'GNUmakefile')
-rw-r--r--GNUmakefile62
1 files changed, 62 insertions, 0 deletions
diff --git a/GNUmakefile b/GNUmakefile
new file mode 100644
index 0000000..e5cecea
--- /dev/null
+++ b/GNUmakefile
@@ -0,0 +1,62 @@
+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 <task>\` where <task> is one of:"
+ @echo ""
+ @echo "Development Tasks"
+ @echo "-----------------"
+ @echo " build Invoke docs and then create a package"
+ @echo " check Invoke build and then check the package"
+ @echo " install Invoke build and then install the result"
+ @echo " test Install a new copy of the package and run it "
+ @echo " through the testsuite"
+ @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 --no-tests $(PKGNAME)_$(PKGVERS).tar.gz
+
+test: install
+ cd tests;\
+ "$(RBIN)/Rscript" doRUnit.R
+
+#------------------------------------------------------------------------------
+# Packaging Tasks
+#------------------------------------------------------------------------------
+release:
+ @echo "\nCheck for updates in the svn repository"
+ @svn update
+ @echo "\nHow about make test, make check and make vignette?"
+ @echo "\nIs the DESCRIPTION file up to date?"

Contact - Imprint