[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[bug#28185] [PATCH] build: emacs-build-system: Make the install phase mo
From: |
Christopher Baines |
Subject: |
[bug#28185] [PATCH] build: emacs-build-system: Make the install phase more helpful. |
Date: |
Tue, 29 Aug 2017 07:58:27 +0100 |
On Tue, 29 Aug 2017 11:55:08 +0530
Arun Isaac <address@hidden> wrote:
> Christopher Baines writes:
>
> > Modify the install phase to detect when nothing has been installed,
> > and error if this happens. This is preferable to continuing, and
> > allowing the next phase to fail.
> >
> > Also, when nothing can be found to be installed, print out each
> > file that was considered, along with the regular expressions that
> > were used to include and exclude it.
> >
> > * gnu/build/emacs-build-system.scm (install-file?): Add additional
> > error checking and logging.
> > ---
> > guix/build/emacs-build-system.scm | 45
> > ++++++++++++++++++++++++++++----------- 1 file changed, 32
> > insertions(+), 13 deletions(-)
>
> I feel that this adds a lot of complexity (lines of code) to the
> emacs-build-system checking for an error that can be quite easily
> identified and fixed otherwise.
>
> WDYT? Maybe, others can comment on this as well.
In my personal experience, I didn't find this easy to identify and fix.
For packaging emacs-minitest, I ended up writing this to pin down why
the emacs-build-system wasn't installing the key file.
I think validating that something has been installed is really
important, as otherwise the later phases fail in a very unclear way.
The extra functionality about explaining why each file hasn't been
installed is useful for debugging, and I agree that it adds significant
complexity.
But, I'd like for packaging emacs things to be really easy in the
general case, and I think making the build system more helpful when it
fails is one way to improve this. I wouldn't like to expect that you'd
need to read the implementation of the build system, or add in your own
debugging code just to package a emacs module.
pgpjVzHDX0xXC.pgp
Description: OpenPGP digital signature