From 69f8ceb84efd9e5e6cc42863372ab8e04e75eb10 Mon Sep 17 00:00:00 2001 From: Phillip Lord Date: Fri, 25 Jan 2019 22:38:44 +0000 Subject: [PATCH] Working Configurable checkout for elpa Git update not working -- it was always running --- Makefile.in | 2 +- elpa/Makefile.in | 14 +++++--------- elpa/bin/extract-package.sh | 14 ++++++++------ elpa/bin/package-makefile.mk | 15 +++++++-------- 4 files changed, 21 insertions(+), 24 deletions(-) diff --git a/Makefile.in b/Makefile.in index 8e196074281..6c455aaf30b 100644 --- a/Makefile.in +++ b/Makefile.in @@ -842,7 +842,7 @@ endef ### target for GCC does not delete 'libgcc.a', because recompiling it ### is rarely necessary and takes a lot of time. mostlyclean_dirs = src oldXMenu lwlib lib lib-src nt doc/emacs doc/misc \ - doc/lispref doc/lispintro + doc/lispref doc/lispintro elpa $(foreach dir,$(mostlyclean_dirs),$(eval $(call submake_template,$(dir),mostlyclean))) diff --git a/elpa/Makefile.in b/elpa/Makefile.in index 2a3b28dbb8d..e7c23eed300 100644 --- a/elpa/Makefile.in +++ b/elpa/Makefile.in @@ -10,8 +10,7 @@ endif dirstate = .git/logs/HEAD VCSWITNESS = $(if $(wildcard $(srcdir)/$(dirstate)),$$(srcdir)/../$(dirstate)) - -all: all-packages +all: elpa-update all-packages ../lisp/elpa: mkdir ../lisp/elpa @@ -23,24 +22,22 @@ packages: mkdir packages $(ELPA_PATH): - echo Hello: $(ELPA_PATH) git clone --mirror https://git.savannah.gnu.org/git/emacs/elpa.git $(ELPA_PATH) elpa-update: $(VCSWITNESS) $(ELPA_PATH) cd $(ELPA_PATH);git fetch --all -directories: packages ../lisp/elpa ../test/lisp/elpa - -.PHONY: elpa-update directories +.PHONY: elpa-update PACKAGES= define package_template - packages/$(1)-$(2): elpa-update directories - ./bin/extract-package.sh -g $$(ELPA_PATH) -p $(1) -s $(2) $(3) + packages/$(1)-$(2): $(ELPA_PATH) + ./bin/extract-package.sh -g $(ELPA_PATH) -p $(1) -s $(2) $(3) $(1): packages/$(1)-$(2) $$(MAKE) -C packages/$(1)-$(2)/$(1) -f package-makefile.mk deploy PACKAGE=$(1) + .PHONY: $(1) PACKAGES:=$$(PACKAGES) $(1) endef @@ -52,7 +49,6 @@ $(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 cb2da55d20c..4b7b7b81a34 100755 --- a/elpa/bin/extract-package.sh +++ b/elpa/bin/extract-package.sh @@ -3,10 +3,11 @@ function grab_external { rm -rf packages/$PACKAGE* mkdir --parents $PACKAGE_LOC - pushd $GIT_LOC + cwd=`pwd` + cd $GIT_LOC git archive $SHA \ - | tar xv -C ../$PACKAGE_LOC - popd + | tar xv -C $cwd/$PACKAGE_LOC + cd $cwd cp --no-clobber bin/package-makefile.mk $PACKAGE_LOC } @@ -14,10 +15,11 @@ function grab_external { function grab_subtree { rm -rf packages/*$PACKAGE mkdir --parents $PACKAGE_LOC - pushd $GIT_LOC + cwd=`pwd` + cd $GIT_LOC git archive $SHA packages/$PACKAGE \ - | tar xv --strip-components=2 -C ../$PACKAGE_LOC - popd + | tar xv --strip-components=2 -C $cwd/$PACKAGE_LOC + cd $cwd cp --no-clobber bin/package-makefile.mk $PACKAGE_LOC } diff --git a/elpa/bin/package-makefile.mk b/elpa/bin/package-makefile.mk index fd25bd35329..897121aaa4c 100644 --- a/elpa/bin/package-makefile.mk +++ b/elpa/bin/package-makefile.mk @@ -7,7 +7,6 @@ TEST=$(wildcard *-test.el) TEST:=$(wildcard *-tests.el) $(TEST) LISP=$(filter-out $(TEST), $(wildcard *.el)) - LISP_DIR=../../../../lisp/elpa/$(PACKAGE)/ TEST_DIR=../../../../test/lisp/elpa/$(PACKAGE)/ @@ -15,23 +14,23 @@ LISP_TARGETS=$(addprefix $(LISP_DIR),$(LISP)) TEST_TARGETS=$(addprefix $(TEST_DIR),$(TEST)) deploy: $(LISP_TARGETS) $(TEST_TARGETS) - # LISP $(LISP_TARGETS) - # TEST $(TEST_TARGETS) define lisp_template - $(LISP_DIR)$(1): $(1) prepare + $(LISP_DIR)$(1): $(1) $(LISP_DIR) cp $$< $$@ endef $(foreach prereq, $(LISP), $(eval $(call lisp_template,$(prereq)))) define test_template - $(TEST_DIR)$(1): $(1) prepare + $(TEST_DIR)$(1): $(1) $(TEST_DIR) cp $$< $$@ endef $(foreach prereq, $(TEST), $(eval $(call test_template,$(prereq)))) -prepare: - -mkdir $(LISP_DIR) - -mkdir $(TEST_DIR) +$(LISP_DIR): + mkdir --parents $(LISP_DIR) + +$(TEST_DIR): + mkdir --parents $(TEST_DIR) -- 2.39.5