[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
bug#11806: (setq load-path ..) of elisp-comp
From: |
Jack Kelly |
Subject: |
bug#11806: (setq load-path ..) of elisp-comp |
Date: |
Sun, 1 Jul 2012 09:03:32 +1000 |
On Sat, Jun 30, 2012 at 11:19 AM, Makoto Fujiwara <address@hidden> wrote:
> With your advice for VPATH issue, I am now using attached patch,
> thanks a lot,
> --- lib/elisp-comp.orig 2012-01-31 20:41:18.000000000 +0900
> +++ lib/elisp-comp 2012-04-13 22:14:39.000000000 +0900
> @@ -62,6 +62,7 @@
> fi
>
> tempdir=elc.$$
> +currdir=`pwd`
>
> # Cleanup the temporary directory on exit.
> trap 'ret=$?; rm -rf "$tempdir" && exit $ret' 0
> @@ -72,7 +73,7 @@
>
> (
> cd $tempdir
> - echo "(setq load-path (cons nil load-path))" > script
> + echo "(setq load-path (cons \"$currdir\" (cons nil load-path)))" > script
> $EMACS -batch -q -l script -f batch-byte-compile *.el || exit $?
> mv *.elc ..
> ) || exit $?
Hi,
Unfortunately your patch doesn't quite work, because in a VPATH build
the build dir is not the sourcedir, so when you set $currdir, you are
setting the wrong path.
I'm not sure of the best way to fix this. The rules for calling
elisp-comp could be updated so that $(abs_srcdir) is passed along:
abs_srcdir="$(abs_srcdir)" EMACS="$(EMACS)" $(SHELL)
$(elisp_comp) "$$@" || exit 1; \
, which is then added to load-path. elisp-comp would still need a
patch, but that's ok.
As to providing test cases, something like this should work:
configure.ac:
AC_INIT([foo], [bar], address@hidden)
AM_INIT_AUTOMAKE([foreign])
AM_PATH_LISPDIR
AC_CONFIG_FILES([Makefile])
AC_OUTPUT
Makefile.am:
lisp_LISP = foo.el
lisp_DATA = bar.el
foo.el:
(require 'bar)
bar.el:
(provide 'bar)
Once elisp-comp (and whatever else) is fixed, this setup should
survive a ./configure && make in both a normal and VPATH build.
(Aside: my copyright paperwork should still be in order. Email me
off-list if it is not.)
-- Jack