Re: New from emacs-snapshot
Jérôme Marant <jmarant@free.fr> writes:
> Daniel Brockman <daniel@brockman.se> writes:
>
>> # These files must always exist, i.e. can't ever be cleaned.
>> PERSISTENT_AUTOGEN_FILES := debian/control debian/copyright
>> @@ -418,11 +418,13 @@
>> ${expand_file_subst_vars}
>>
>> define build_cmd
>> - ${MAKE} CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}"
>> + ${MAKE} CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" \
>> + locallisppath=${local_lpath}
>> endef
>
> Thanks. I forgot about this one.
I don't know if you want to add the other parameters as well.
The emacs21 package has this,
define build_cmd
${MAKE} CFLAGS="${CFLAGS}" LDFLAGS="${LDFLAGS}" \
prefix=/usr \
sharedstatedir=/var/lib \
libexecdir=/usr/lib \
infodir=/usr/share/info \
manext=.1emacs${major_ver} \
locallisppath=${local_lpath}
endef
but I don't understand why we would need the first four, since this
# Common confflags
confflags += --prefix=/usr
confflags += --sharedstatedir=/var/lib
confflags += --libexecdir=/usr/lib
confflags += --localstatedir=/var
confflags += --infodir=/usr/share/info
confflags += --mandir=/usr/share/man
confflags += --with-pop=yes
confflags += --with-gif
causes those options (prefix, sharedstatedir, libexecdir, and infodir)
to be passed to `configure' (which will of course put them right into
the Makefile), and you seem to already have dealt with the `manext'
issue here:
emacs_inst = (${MAKE} install \
INSTALL_STRIP="-s" \
debepkgdir=${1} \
prefix=${1}/usr \
sharedstatedir=${1}/var/lib \
localstatedir=${1}/var \
libexecdir=${1}/usr/lib \
infodir=${1}/usr/share/info/${info_emacsdir} \
mandir=${1}/usr/share/man \
manext=.1${bin_name} \
locallisppath=${local_lpath})
>> emacs_inst = (${MAKE} install \
>> INSTALL_STRIP="-s" \
>> + debepkgdir=${1} \
>> prefix=${1}/usr \
>> sharedstatedir=${1}/var/lib \
>> localstatedir=${1}/var \
>
> OK, I realized I had not taking too much care of this change.
>
> However, I think we could avoid patching Makefile.in and adding and
> extra 'debepkgdir' parameter, that way:
>
> emacs_inst = (${MAKE} install \
> INSTALL_STRIP="-s" \
> prefix=${1}/usr \
> sharedstatedir=${1}/var/lib \
> localstatedir=${1}/var \
> libexecdir=${1}/usr/lib \
> infodir=${1}/usr/share/info/${info_emacsdir} \
> mandir=${1}/usr/share/man \
> manext=.1${bin_name} \
> locallisppath=$(EMACS_COMMON)/$(subst :,:$(EMACS_COMMON)/,${local_lpath}))
>
> What do you think? (I haven't tested)
Ah, yes, that looks great. I didn't realize that locallisppath is
only used in that one place in Makefile.in.
I will try building with this change.
>> @@ -467,11 +469,13 @@
>> # Emacs must be boostraped at least once in order to
>> # generate .elc files
>> CFLAGS="${CFLAGS}" ./configure ${emacs_confflags}
>> + ${build_cmd} epaths-force
>> ${build_cmd} bootstrap
>> ${build_cmd} distclean
>>
>> # Build emacs
>> CFLAGS="${CFLAGS}" ./configure ${emacs_confflags}
>> + ${build_cmd} epaths-force
>> ${build_cmd}
>> # save binary from deletion
>> mv src/emacs src/x-emacs
>> @@ -479,6 +483,7 @@
>>
>> # Build emacs-gtk
>> CFLAGS="${CFLAGS}" ./configure ${emacs_gtk_confflags}
>> + ${build_cmd} epaths-force
>> time ${build_cmd}
>> # save binary from deletion
>> mv src/emacs src/gtk-emacs
>> @@ -486,6 +491,7 @@
>>
>> # Build emacs-nox
>> CFLAGS="${CFLAGS}" ./configure ${emacs_nox_confflags}
>> + ${build_cmd} epaths-force
>> time ${build_cmd}
>> # save binary from deletion
>> mv src/emacs src/nox-emacs
>
> Oh right, I understand now why it is necessary to run it out of
> configure now.
>
>> That'll let you get rid of the `load-path' hack ---
>> /etc/emacs/site-start.d/00ensure-policy-conforming-load-path.el.
>>
>> Yes, it actually seems to work this time. :-)
>
> Thank you very much!
You're welcome! :-)
--
Daniel Brockman <daniel@brockman.se>
Reply to: