From mboxrd@z Thu Jan 1 00:00:00 1970 From: Arun Isaac Subject: emacs-build-system installs too many files Date: Fri, 14 Apr 2017 14:33:35 +0530 Message-ID: Mime-Version: 1.0 Content-Type: text/plain Content-Transfer-Encoding: quoted-printable Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:33651) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1cyx91-0000TH-53 for guix-devel@gnu.org; Fri, 14 Apr 2017 05:03:56 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1cyx8w-0001ir-W3 for guix-devel@gnu.org; Fri, 14 Apr 2017 05:03:55 -0400 Received: from o134.p8.mailjet.com ([87.253.233.134]:33947) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1cyx8w-0001hl-NY for guix-devel@gnu.org; Fri, 14 Apr 2017 05:03:50 -0400 List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: guix-devel The install phase of the emacs-build-system simply copies all files to the output directory. This ends up copying many unnecessary files such as README, Makefile, tests, hidden files such as .gitignore, .travis.yml, etc. MELPA package recipes, on the other hand, copy only a subset of the files. This is provided by the :files property in their recipe format (https://github.com/melpa/melpa#recipe-format). Quoting from their github page: #+BEGIN_QUOTE :files is an optional property specifying the elisp and info files used to build the package. Please do not override this if the default value (below) is adequate, which it should usually be: ("*.el" "*.el.in" "dir" "*.info" "*.texi" "*.texinfo" "doc/dir" "doc/*.info" "doc/*.texi" "doc/*.texinfo" (:exclude ".dir-locals.el" "test.el" "tests.el" "*-test.el" "*-tests.el"= )) This option is necessary when there are multiple packages in the repository and thus the package should only be built from a subset of .el files. For example, elisp test files should not normally be packaged. Any file specified at any path in the repository is copied to the root of the package. ... Note that elisp in subdirectories is never included by default, so you might find it convenient to separate auxiliiary files such as tests into subdirectories to keep packaging simple. #+END_QUOTE I suggest we modify the emacs-build-system to include a #:files argument similar to MELPA's :files property. If others are fine with this, I will start working on a patch. Regards, Arun Isaac. =