commit: fd098efcebdad3a92d40bcd00278d7011bd31404
Author: André Erdmann <dywi <AT> mailerd <DOT> de>
AuthorDate: Mon Mar 31 17:31:49 2014 +0000
Commit: André Erdmann <dywi <AT> mailerd <DOT> de>
CommitDate: Tue Apr 1 16:36:36 2014 +0000
URL:
http://git.overlays.gentoo.org/gitweb/?p=proj/R_overlay.git;a=commit;h=fd098efc
Makefile: parallel generate-config
---
Makefile | 81 ++++++++++++++++++++++++++++++++++++++++++++++------------------
1 file changed, 58 insertions(+), 23 deletions(-)
diff --git a/Makefile b/Makefile
index 5f5ac2c..9a41011 100644
--- a/Makefile
+++ b/Makefile
@@ -37,43 +37,36 @@ SRC_DOCDIR := ./doc
SELFDOC := $(SRC_DOCDIR)/pydoc
-.PHONY: default \
- clean clean-log _pyclean _pydoc_clean distclean \
- docs pydoc htmldoc \
- check test \
- generate-files \
- generate-config generate-doc generate-manifest \
- release dist \
- compress-config \
- install-all install \
- install-roverlay install-pymodules \
- install-data install-config-common \
- install-config-compressed install-config \
- uninstall-all uninstall \
- uninstall-roverlay uninstall-pymodules
-
+PHONY += default
default:
@false
+PHONY += check
check:
@true
+PHONY += test
test: ./bin/run_tests
./bin/run_tests
+PHONY += clean
clean:
rm -rf ./build/ $(BUILDDIR)/
+PHONY += clean-log
clean-log:
rm -rf -- $(LOGDIR)
+PHONY += _pyclean
_pyclean:
find . \( -name "*.pyc" -or -name "*.pyo" \) -delete -print
+PHONY += _pydoc_clean
_pydoc_clean:
rm -f -- $(SELFDOC)/*.html
! test -d $(SELFDOC) || rmdir --ignore-fail-on-non-empty -- $(SELFDOC)/
+PHONY += distclean
distclean: clean _pyclean _pydoc_clean
$(BUILDDIR):
@@ -86,60 +79,89 @@ $(SELFDOC):
$(PYDOC_SH) $(SELFDOC)
# alias to $(SELFDOC)
+PHONY += pydoc
pydoc: $(SELFDOC)
+PHONY += htmldoc
htmldoc: $(SRC_DOCDIR)/rst/usage.rst
@install -d $(SRC_DOCDIR)/html
$(RST_HTML) $(SRC_DOCDIR)/rst/usage.rst $(SRC_DOCDIR)/html/usage.html
+PHONY += generate-doc
generate-doc: htmldoc
+PHONY += generate-manifest
generate-manifest: $(MANIFEST_GEN)
$(MANIFEST_GEN) > $(MANIFEST_TMP)
mv -- $(MANIFEST_TMP) $(MANIFEST)
-generate-config: $(RV_SETUP)
- ROVERLAY_INSTALLED=1 $(RV_SETUP) \
- -O config/R-overlay.conf.install \
+
+$(CURDIR)/config/R-overlay.conf.install: $(RV_SETUP) FORCE | $(CURDIR)/config
+ ROVERLAY_INSTALLED=1 $< --target-type gentoo \
+ -O $@ \
-D $(DATADIR)/roverlay \
--conf-root $(CONFDIR)/roverlay --my-conf-root
$(CONFDIR)/roverlay \
-A $(CONFDIR)/roverlay/files \
mkconfig
- ROVERLAY_INSTALLED=0 $(RV_SETUP) \
- -O R-overlay.conf --prjroot-relpath \
+$(CURDIR)/config/R-overlay.conf.install.others: $(RV_SETUP) FORCE |
$(CURDIR)/config
+ ROVERLAY_INSTALLED=1 $< --target-type foreign \
+ -O $@ \
+ -D $(DATADIR)/roverlay \
+ --conf-root $(CONFDIR)/roverlay --my-conf-root
$(CONFDIR)/roverlay \
+ -A $(CONFDIR)/roverlay/files \
+ mkconfig
+
+$(CURDIR)/R-overlay.conf: $(RV_SETUP) FORCE
+ ROVERLAY_INSTALLED=0 $< --target-type gentoo \
+ -O $@ --prjroot-relpath \
-D files --conf-root config --my-conf-root config -A files -W
workdir \
mkconfig
- ROVERLAY_INSTALLED=0 $(RV_SETUP) \
- -O R-overlay.conf.others --prjroot-relpath --target-type
foreign \
+$(CURDIR)/R-overlay.conf.others: $(RV_SETUP) FORCE
+ ROVERLAY_INSTALLED=0 $< --target-type foreign \
+ -O $@ --prjroot-relpath \
-D files --conf-root config --my-conf-root config -A files -W
workdir \
mkconfig
+PHONY += generate-config
+generate-config: \
+ $(CURDIR)/config/R-overlay.conf.install \
+ $(CURDIR)/config/R-overlay.conf.install.others \
+ $(CURDIR)/R-overlay.conf \
+ $(CURDIR)/R-overlay.conf.others
+
+PHONY += generate-files
generate-files: generate-config generate-doc generate-manifest
# creates a src tarball (.tar.bz2)
# !!! does not include config files
+PHONY += release
release: generate-files
@echo "Note: the release tarball does not include any config files!"
@install -d $(PKG_DISTDIR)
./$(SETUP_PY) sdist --dist-dir=$(PKG_DISTDIR) --formats=bztar
+PHONY += dist
dist: distclean release
+PHONY += compress-config
compress-config: $(BUILDDIR)
@install -d $(BUILDDIR)/config
cp -vLr -p --no-preserve=ownership config/simple-deprules.d
$(BUILDDIR)/config/
find $(BUILDDIR)/config/simple-deprules.d/ -type f -print0 | xargs -0
-n 5 --verbose $(X_COMPRESS)
$(X_COMPRESS) -c config/license.map > $(BUILDDIR)/config/license.map
+PHONY += install-roverlay
install-roverlay: ./roverlay.py
install -T -D -- ./roverlay.py $(BINDIR)/roverlay
+PHONY += install-pymodules
install-pymodules: ./setup.py
$(PYTHON) ./setup.py install --record $(PYMOD_FILE_LIST)
+PHONY += install-config-common
install-config-common:
install -m 0755 -d $(CONFDIR)/roverlay
install -m 0644 -t $(CONFDIR)/roverlay \
@@ -148,11 +170,13 @@ install-config-common:
install -m 0644 -T \
config/R-overlay.conf.install $(CONFDIR)/roverlay/R-overlay.conf
+PHONY += install-config-compressed
install-config-compressed: install-config-common
cp -vLr -p --no-preserve=ownership \
$(BUILDDIR)/config/simple-deprules.d
$(BUILDDIR)/config/license.map \
$(CONFDIR)/roverlay/
+PHONY += install-config
install-config: install-config-common
cp -vLr -p --no-preserve=ownership \
config/simple-deprules.d config/license.map \
@@ -160,7 +184,7 @@ install-config: install-config-common
# license.map deprules
-
+PHONY += install-data
install-data:
install -m 0755 -d \
$(DATADIR)/roverlay/shlib $(DATADIR)/roverlay/hooks \
@@ -175,17 +199,28 @@ install-data:
install -m 0644 -t $(DATADIR)/roverlay/mako_templates \
files/mako_templates/*.*
+PHONY += install
install: install-pymodules install-roverlay
+PHONY += install-all
install-all: install
+PHONY += uninstall-roverlay
uninstall-roverlay:
rm -vf -- $(BINDIR)/roverlay
+PHONY += uninstall-pymodules
uninstall-pymodules: $(PYMOD_FILE_LIST)
xargs rm -vrf < $(PYMOD_FILE_LIST)
+PHONY += uninstall
uinstall:
@false
+PHONY += uninstall-all
uninstall-all: uninstall
+
+PHONY += FORCE
+FORCE:
+
+.PHONY: $(PHONY)