Subject: emacs package broken with MACHINE_GNU_PLATFORM?
To: None <tech-pkg@netbsd.org>
From: Takahiro Kambe <taca@sky.yamashina.kyoto.jp>
List: tech-pkg
Date: 09/08/2001 18:51:18
Hi.
I found that emacs package is broken on NetBSD/i386. On configure
stage, MACHINE_GNU_PLATFORM is used. And it is defined in
/usr/pkgsrc/mk/bsd.prefs.mk (Revision 1.58):
MACHINE_GNU_PLATFORM?= ${LOWER_ARCH}-${LOWER_VENDOR}-${LOWER_OPSYS}
Then it is former defined in /usr/share/mk/bsd.own.mk (Revision
1.1777):
# In order to identify NetBSD to GNU packages, we sometimes need
# an "elf" tag for historically a.out platforms.
.if ${OBJECT_FMT} == "ELF" && \
(${MACHINE_ARCH} == "arm" || \
${MACHINE_ARCH} == "i386" || \
${MACHINE_ARCH} == "m68k" || \
${MACHINE_ARCH} == "sparc" || \
${MACHINE_ARCH} == "vax")
MACHINE_GNU_PLATFORM=${MACHINE_GNU_ARCH}--netbsdelf
.else
MACHINE_GNU_PLATFORM=${MACHINE_GNU_ARCH}--netbsd
.endif
So, configure use MACHINE_GNU_PLATFORM=i386--netbsdelf and some
binaries like movemail are installed to bellow (relative path from
LOCALBASE).
libexec/emacs/20.7/i386--netbsdelf
But emacs packages' PLIST specify the same directory as bellow.
libexec/emacs/20.7/${MACHINE_GNU_ARCH}-${LOWER_VENDOR}-${LOWER_OPSYS}
This results libexec/emacs/20.7/i386--netbsd.
There are two way to fix it.
o Change PLIST to use MACHINE_GNU_PLATFORM.
o Remove MACHINE_GNU_PLATFORM definition from bsd.own.mk.
What about on other platform (Linux or Solaris)?
--
Takahiro Kambe <taca@sky.yamashina.kyoto.jp>