[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Emacs-diffs] feature/core-elpa-by-copy a5f5801 04/13: Probably working
From: |
Phillip Lord |
Subject: |
[Emacs-diffs] feature/core-elpa-by-copy a5f5801 04/13: Probably working but untested version |
Date: |
Sat, 26 Jan 2019 05:29:36 -0500 (EST) |
branch: feature/core-elpa-by-copy
commit a5f5801ddb9c120366058c8794a2e8b6a260b7a8
Author: Phillip Lord <address@hidden>
Commit: Phillip Lord <address@hidden>
Probably working but untested version
---
Makefile.in | 2 +-
elpa/Makefile.in | 7 +++++--
elpa/bin/extract-package.sh | 19 +++++++++++++++----
elpa/bin/package-makefile.mk | 39 +++++++++++++++++++++++++++++++++++++--
notes.org | 17 +++++++++++++++++
5 files changed, 75 insertions(+), 9 deletions(-)
diff --git a/Makefile.in b/Makefile.in
index b6cd04d..5214876 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -311,7 +311,7 @@ EMACS = ${EMACS_NAME}${EXEEXT}
EMACSFULL = `echo emacs-${version} | sed '$(TRANSFORM)'`${EXEEXT}
# Subdirectories to make recursively.
-SUBDIR = $(NTDIR) lib lib-src src lisp
+SUBDIR = $(NTDIR) elpa lib lib-src src lisp
# The subdir makefiles created by config.status.
SUBDIR_MAKEFILES_IN = @SUBDIR_MAKEFILES_IN@
diff --git a/elpa/Makefile.in b/elpa/Makefile.in
index 1469737..20339d1 100644
--- a/elpa/Makefile.in
+++ b/elpa/Makefile.in
@@ -29,12 +29,15 @@ packages/d28cf8632d2691dc93afbb28500126242d37961c-pabbrev:
elpa-update directori
./bin/extract-package.sh -s d28cf8632d2691dc93afbb28500126242d37961c -p
pabbrev -e
pabbrev: packages/d28cf8632d2691dc93afbb28500126242d37961c-pabbrev
- $(MAKE) -C packages/d28cf8632d2691dc93afbb28500126242d37961c-pabbrev/
-f package-makefile.mk deploy
+ $(MAKE) -C
packages/d28cf8632d2691dc93afbb28500126242d37961c-pabbrev/pabbrev -f
package-makefile.mk deploy PACKAGE=pabbrev
packages/cba688842ac089ad516155d1b2d6d73826929449-hydra: elpa-update
directories
./bin/extract-package.sh -s cba688842ac089ad516155d1b2d6d73826929449 -p
hydra
hydra: packages/cba688842ac089ad516155d1b2d6d73826929449-hydra
- $(MAKE) -C packages/cba688842ac089ad516155d1b2d6d73826929449-hydra -f
package-makefile.mk deploy
+ $(MAKE) -C
packages/cba688842ac089ad516155d1b2d6d73826929449-hydra/hydra -f
package-makefile.mk deploy PACKAGE=hydra
+
clean:
rm -rf packages
+ rm -rf ../lisp/elpa
+ rm -rf ../test/lisp/elpa
diff --git a/elpa/bin/extract-package.sh b/elpa/bin/extract-package.sh
index a8440df..7325d95 100755
--- a/elpa/bin/extract-package.sh
+++ b/elpa/bin/extract-package.sh
@@ -2,12 +2,23 @@
function grab_external {
rm -rf packages/*$PACKAGE
- mkdir packages/$SHA-$PACKAGE
+ mkdir --parents packages/$SHA-$PACKAGE/$PACKAGE
cd elpa-git
git archive $SHA \
- | tar xv -C ../packages/$SHA-$PACKAGE
+ | tar xv -C ../packages/$SHA-$PACKAGE/$PACKAGE
cd ..
- cp bin/package-makefile.mk packages/$SHA-$PACKAGE
+ cp --no-clobber bin/package-makefile.mk packages/$SHA-$PACKAGE/$PACKAGE/
+}
+
+
+function grab_subtree {
+ rm -rf packages/*$PACKAGE
+ mkdir --parents packages/$SHA-$PACKAGE/$PACKAGE
+ cd elpa-git
+ git archive $SHA \
+ | tar xv -C ../packages/$SHA-$PACKAGE/$PACKAGE
+ cd ..
+ cp --no-clobber bin/package-makefile.mk packages/$SHA-$PACKAGE/$PACKAGE
}
SHA=
@@ -34,4 +45,4 @@ then
exit 0
fi
-exit 1
+grab_subtree
diff --git a/elpa/bin/package-makefile.mk b/elpa/bin/package-makefile.mk
index 70bff68..d368fc0 100644
--- a/elpa/bin/package-makefile.mk
+++ b/elpa/bin/package-makefile.mk
@@ -1,2 +1,37 @@
-deploy:
- echo hello `pwd`
+FILE = $(realpath $(lastword $(MAKEFILE_LIST)))
+DIR = $(dir $(FILE))
+DIRS = $(subst /, ,$(DIR))
+PACKAGE=$(lastword $(DIRS))
+
+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)/
+
+LISP_TARGETS=$(addprefix $(LISP_DIR),$(LISP))
+TEST_TARGETS=$(addprefix $(TEST_DIR),$(TEST))
+
+deploy: prepare $(LISP_TARGETS) $(TEST_TARGETS)
+ # LISP $(LISP_TARGETS)
+ # TEST $(TEST_TARGETS)
+
+define lisp_template
+ $(LISP_DIR)$(1): $(1)
+ cp $$< $$@
+endef
+
+$(foreach prereq, $(LISP), $(eval $(call lisp_template,$(prereq))))
+
+define test_template
+ $(TEST_DIR)$(1): $(1)
+ cp $$< $$@
+endef
+
+$(foreach prereq, $(TEST), $(eval $(call test_template,$(prereq))))
+
+prepare:
+ -mkdir $(LISP_DIR)
+ -mkdir $(TEST_DIR)
diff --git a/notes.org b/notes.org
index 259299d..ebce306 100644
--- a/notes.org
+++ b/notes.org
@@ -1,5 +1,22 @@
+* Working on
+
+Have package checkout working for external
+Next get it working for non external so we can template
+
+Then how to get the submakes working
+
+
+
+* To Fix
+
+Think we are running git fetch --all on every package. Is there
+something more intelligent we can do here? Lookup VCS Witness
+elsewhere.
+
+* Notes
+
1) Scripting?
Guess we have to use sh
- [Emacs-diffs] feature/core-elpa-by-copy e2cf6b1 05/13: Top level make file plumbing, (continued)
- [Emacs-diffs] feature/core-elpa-by-copy e2cf6b1 05/13: Top level make file plumbing, Phillip Lord, 2019/01/26
- [Emacs-diffs] feature/core-elpa-by-copy 4f0ca28 03/13: Build process started, Phillip Lord, 2019/01/26
- [Emacs-diffs] feature/core-elpa-by-copy bf7519e 12/13: And dependencies all working, Phillip Lord, 2019/01/26
- [Emacs-diffs] feature/core-elpa-by-copy 05e20b8 13/13: Fix dependency between packages and ELPA checkout, Phillip Lord, 2019/01/26
- [Emacs-diffs] feature/core-elpa-by-copy e26f1ab 06/13: Fix concurrent build, add some more, Phillip Lord, 2019/01/26
- [Emacs-diffs] feature/core-elpa-by-copy fd618c5 08/13: Working --enable-elpa with conditional build, Phillip Lord, 2019/01/26
- [Emacs-diffs] feature/core-elpa-by-copy b3dad07 07/13: Semi working attempt to get configure to work, Phillip Lord, 2019/01/26
- [Emacs-diffs] feature/core-elpa-by-copy 69f8ceb 10/13: Working Configurable checkout for elpa, Phillip Lord, 2019/01/26
- [Emacs-diffs] feature/core-elpa-by-copy e557b18 11/13: Depedency mostly working, Phillip Lord, 2019/01/26
- [Emacs-diffs] feature/core-elpa-by-copy 2cfe571 02/13: Extraction of code working, Phillip Lord, 2019/01/26
- [Emacs-diffs] feature/core-elpa-by-copy a5f5801 04/13: Probably working but untested version,
Phillip Lord <=
- [Emacs-diffs] feature/core-elpa-by-copy 9594e37 09/13: Configurable location for git checkout, Phillip Lord, 2019/01/26