From 4f6df43aae87cbcc3d41728e6102a03ab42f25a9 Mon Sep 17 00:00:00 2001 From: Phillip Lord Date: Wed, 14 Sep 2016 23:50:33 +0100 Subject: [PATCH] README added --- packages/README.org | 66 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 66 insertions(+) create mode 100644 packages/README.org diff --git a/packages/README.org b/packages/README.org new file mode 100644 index 00000000000..719b13dce27 --- /dev/null +++ b/packages/README.org @@ -0,0 +1,66 @@ + +* Intro + +This directory structure is there to support packaged lisp files in +core emacs, as well as linking through to ELPA. + +The main drivers for this are: + + - Most Emacs Lisp is developed and distributed as package.el + packages, so adding support just makes life easier. + - Packaged files are self-contained. + - Source files and Tests can be distributed together. + - Some packages are both in ELPA and core. Currently these are + largely merged into core. With this directory structure, we should + be able to git subtree these into here from ELPA. + +* Design + +Currently, there is a single directory "core" inside "package" +containing packages. These are build and tested from makefile, using +an autogenerated makefile. + +The intention here is that different directories can be used to group +packages probably by policy -- those which are core only, those which +are also available in ELPA and so on. + +* Limitations + +It is not expected that all files would ever be in this directory +structure. Emacs must be fully built from bootstrap, and all the files +necessary for this cannot be here. + + +* Changes outside of this directory + + - Makefile.in -- now includes package as a subdir + - test/Makefile.in -- now drives tests in package also + - .gitignore -- remove a couple of things (including "core") + - lisp/emacs-lisp/package.el -- force load of package directory + +* Status + +Packages now build, test and summarise correctly. + +Preliminary ELPA support has been added also, but is correctly +disabled. Most of these do not have regular test file locations at the moment. + +* Things to do + +There is no support for make install. + +There is no support for autoconf. + +There is no support for info. + +Files in the "admin" directory should probably be in the emacs-root admin. + +* Bugs + +package.el does not initialize when emacs is launched with -q. This is +somewhat problematic, since packages in the "core" dir should probably +always be loaded. Unfortunately package.el is either initialized or +not -- it can be done just for one directory. Currently this means +that if files were moved from the "lisp" directory to the "package" +directory, they would disappear under "emacs -q", until +package-initialize is called. -- 2.39.5