From: Phillip Lord Date: Mon, 21 Jan 2019 14:23:19 +0000 (+0000) Subject: Fix concurrent build, add some more X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=e26f1ab73e0dfed3e5b294161872332fcfe11605;p=emacs.git Fix concurrent build, add some more --- diff --git a/.gitignore b/.gitignore index b2ad1f9a4dc..66d178d77c4 100644 --- a/.gitignore +++ b/.gitignore @@ -151,6 +151,8 @@ test/manual/indent/*.new # ELPA /elpa/elpa-git/ /elpa/packages/ +/lisp/elpa/ +/test/lisp/elpa/ # ctags, etags. TAGS diff --git a/elpa/Makefile.in b/elpa/Makefile.in index 20339d161ad..06ffd39b8aa 100644 --- a/elpa/Makefile.in +++ b/elpa/Makefile.in @@ -3,7 +3,7 @@ dirstate = .git/logs/HEAD VCSWITNESS = $(if $(wildcard $(srcdir)/$(dirstate)),$$(srcdir)/../$(dirstate)) -all: pabbrev hydra +all: all-packages ../lisp/elpa: mkdir ../lisp/elpa @@ -25,17 +25,25 @@ directories: packages ../lisp/elpa ../test/lisp/elpa .PHONY: elpa-update directories -packages/d28cf8632d2691dc93afbb28500126242d37961c-pabbrev: elpa-update directories - ./bin/extract-package.sh -s d28cf8632d2691dc93afbb28500126242d37961c -p pabbrev -e +PACKAGES= +define package_template + packages/$(1)-$(2): elpa-update directories + ./bin/extract-package.sh -p $(1) -s $(2) $(3) -pabbrev: packages/d28cf8632d2691dc93afbb28500126242d37961c-pabbrev - $(MAKE) -C packages/d28cf8632d2691dc93afbb28500126242d37961c-pabbrev/pabbrev -f package-makefile.mk deploy PACKAGE=pabbrev + $(1): packages/$(1)-$(2) + $$(MAKE) -C packages/$(1)-$(2)/$(1) -f package-makefile.mk deploy PACKAGE=$(1) -packages/cba688842ac089ad516155d1b2d6d73826929449-hydra: elpa-update directories - ./bin/extract-package.sh -s cba688842ac089ad516155d1b2d6d73826929449 -p hydra + PACKAGES:=$$(PACKAGES) $(1) +endef -hydra: packages/cba688842ac089ad516155d1b2d6d73826929449-hydra - $(MAKE) -C packages/cba688842ac089ad516155d1b2d6d73826929449-hydra/hydra -f package-makefile.mk deploy PACKAGE=hydra +$(info $(call package_template,pabbrev,d28cf8632d2691dc93afbb28500126242d37961c,-e)) +$(eval $(call package_template,pabbrev,d28cf8632d2691dc93afbb28500126242d37961c,-e)) +$(eval $(call package_template,darkroom,73701d95133ba6581a95cec9489224b87f483cc0)) +$(eval $(call package_template,queue,cf2001d3e83e05af5820174e9fa1f9638a4f8c08)) + + +all-packages: $(PACKAGES) + # PACKAGES $(PACKAGES) clean: rm -rf packages diff --git a/elpa/bin/extract-package.sh b/elpa/bin/extract-package.sh index 7325d95e28d..507b1dbf855 100755 --- a/elpa/bin/extract-package.sh +++ b/elpa/bin/extract-package.sh @@ -1,24 +1,24 @@ #!/bin/bash function grab_external { - rm -rf packages/*$PACKAGE - mkdir --parents packages/$SHA-$PACKAGE/$PACKAGE + rm -rf packages/$PACKAGE* + mkdir --parents $PACKAGE_LOC cd elpa-git git archive $SHA \ - | tar xv -C ../packages/$SHA-$PACKAGE/$PACKAGE + | tar xv -C ../$PACKAGE_LOC cd .. - cp --no-clobber bin/package-makefile.mk packages/$SHA-$PACKAGE/$PACKAGE/ + cp --no-clobber bin/package-makefile.mk $PACKAGE_LOC } function grab_subtree { rm -rf packages/*$PACKAGE - mkdir --parents packages/$SHA-$PACKAGE/$PACKAGE + mkdir --parents $PACKAGE_LOC cd elpa-git - git archive $SHA \ - | tar xv -C ../packages/$SHA-$PACKAGE/$PACKAGE + git archive $SHA packages/$PACKAGE \ + | tar xv --strip-components=2 -C ../$PACKAGE_LOC cd .. - cp --no-clobber bin/package-makefile.mk packages/$SHA-$PACKAGE/$PACKAGE + cp --no-clobber bin/package-makefile.mk $PACKAGE_LOC } SHA= @@ -39,6 +39,8 @@ while getopts "s:p:e" opt; do esac done +PACKAGE_LOC=packages/$PACKAGE-$SHA/$PACKAGE + if (($EXTERNAL)) then grab_external diff --git a/elpa/bin/package-makefile.mk b/elpa/bin/package-makefile.mk index d368fc07aa1..fd25bd35329 100644 --- a/elpa/bin/package-makefile.mk +++ b/elpa/bin/package-makefile.mk @@ -14,19 +14,19 @@ TEST_DIR=../../../../test/lisp/elpa/$(PACKAGE)/ LISP_TARGETS=$(addprefix $(LISP_DIR),$(LISP)) TEST_TARGETS=$(addprefix $(TEST_DIR),$(TEST)) -deploy: prepare $(LISP_TARGETS) $(TEST_TARGETS) +deploy: $(LISP_TARGETS) $(TEST_TARGETS) # LISP $(LISP_TARGETS) # TEST $(TEST_TARGETS) define lisp_template - $(LISP_DIR)$(1): $(1) + $(LISP_DIR)$(1): $(1) prepare cp $$< $$@ endef $(foreach prereq, $(LISP), $(eval $(call lisp_template,$(prereq)))) define test_template - $(TEST_DIR)$(1): $(1) + $(TEST_DIR)$(1): $(1) prepare cp $$< $$@ endef