X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;f=Makefile;h=202f0e65d13fcd25a70939d0aae99872c7aa6f49;hb=2d486f53c3e3acb881ddca8e3625f4dee7bc81f7;hp=9d42905ec8e487debea3a3b3dfb4f07387ca7ecb;hpb=9935cba5a5cce263608115be8417619500686957;p=myslice.git diff --git a/Makefile b/Makefile index 9d42905e..202f0e65 100644 --- a/Makefile +++ b/Makefile @@ -1,3 +1,5 @@ +MAKE-SILENT = $(MAKE) --no-print-directory + ### first purpose, build and install from the specfile all: build @@ -9,7 +11,7 @@ bindir := /usr/bin PWD := $(shell pwd) -build: +build: static templates python setup.py build install: @@ -19,21 +21,10 @@ install: --install-data=$(DESTDIR)/$(datadir)/myslice -#################### compute emacs tags -# list files under git but exclude third-party stuff like bootstrap and jquery -myfiles: force - @git ls-files | egrep -v 'insert(_|-)above|/third-party/|/play/' - -# in general it's right to rely on the contents as reported by git -tags: force - $(MAKE) myfiles | xargs etags - -# however sometimes we have stuff not yet added, so in this case -ftags: force - find . -type f | fgrep -v '/.git/' | xargs etags - #################### third-party layout is kind of special -# because we have differents versions and all +# because we have differents versions, and also we +# try to preserve the file structure from upstream +# so let's handle this manually THIRD-PARTY-RESOURCES = # ignore variants, use the main symlink third-party/bootstrap THIRD-PARTY-RESOURCES += $(shell ls third-party/bootstrap/*/*) @@ -53,30 +44,31 @@ thirdparty-img: # we might have any of these as templates - e.g. ./engine/templates/plugin-setenv.js # so if there's a /templates/ in the path ignore the file -other-js: force +local-js: force @find . -type f -name '*.js' | egrep -v '/all-(static|templates)/|/third-party/|/templates/' -other-css: force +local-css: force @find . -type f -name '*.css' | egrep -v 'all-(static|templates)/|/third-party/|/templates/' -other-img: force +local-img: force @find . -type f -name '*.png' | egrep -v 'all-(static|templates)/|/third-party/|/templates/' -list-js: thirdparty-js other-js -list-css: thirdparty-css other-css -list-img: thirdparty-img other-img +list-js: thirdparty-js local-js +list-css: thirdparty-css local-css +list-img: thirdparty-img local-img # having templates in a templates/ subdir is fine most of the time except for plugins -list-templates: force +plugins-templates: force @find plugins -type f -name '*.html' +local-templates: force + @$(foreach tmpl,$(shell find . -name templates),ls -1 $(tmpl)/*;) + +list-templates: plugins-templates local-templates #################### manage static contents (extract from all the modules into the single all-static location) static run-static static-run: force mkdir -p ./all-static/js all-static/css all-static/img - ln -sf $(foreach x,$(shell $(MAKE) list-js),../../$(x)) ./all-static/js - ln -sf $(foreach x,$(shell $(MAKE) list-css),../../$(x)) ./all-static/css - ln -sf $(foreach x,$(shell $(MAKE) list-img),../../$(x)) ./all-static/img -# rsync -av $(shell $(MAKE) list-js) ./all-static/js -# rsync -av $(shell $(MAKE) list-css) ./all-static/css -# rsync -av $(shell $(MAKE) list-img) ./all-static/img + ln -sf $(foreach x,$(shell $(MAKE-SILENT) list-js),../../$(x)) ./all-static/js + ln -sf $(foreach x,$(shell $(MAKE-SILENT) list-css),../../$(x)) ./all-static/css + ln -sf $(foreach x,$(shell $(MAKE-SILENT) list-img),../../$(x)) ./all-static/img clean-static static-clean: force rm -rf ./all-static @@ -86,8 +78,7 @@ all-static: clean-static run-static #################### manage templates for the plugin area templates run-templates templates-run: force mkdir -p all-templates - ln -sf $(foreach x,$(shell $(MAKE) list-templates),../$(x)) ./all-templates -# rsync -av $(shell $(MAKE) list-templates) ./all-templates + ln -sf $(foreach x,$(shell $(MAKE-SILENT) list-templates),../$(x)) ./all-templates clean-templates templates-clean: force rm -rf ./all-templates @@ -97,6 +88,19 @@ all-templates: clean-templates run-templates #################### list-all list-resources: list-templates list-js list-css list-img +#################### compute emacs tags +# list files under git but exclude third-party stuff like bootstrap and jquery +myfiles: force + @git ls-files | egrep -v 'insert(_|-)above|/third-party/|/play/' + +# in general it's right to rely on the contents as reported by git +tags: force + $(MAKE-SILENT) myfiles | xargs etags + +# however sometimes we have stuff not yet added, so in this case +ftags: force + find . -type f | fgrep -v '/.git/' | xargs etags + #################### sync : push current code on a (devel) box running myslice SSHURL:=root@$(MYSLICEBOX):/ SSHCOMMAND:=ssh root@$(MYSLICEBOX)