[syslinux] Syslinux 6.00 released
Igor Sverkos
igor.sverkos at googlemail.com
Sat Jun 29 07:40:00 PDT 2013
Hi,
seems like there is a problem in gnu-efi Makefiles:
When you are not on Debian, this will be installed (from
$source/inc/Makefile, called from $source/Makefile):
install:
mkdir -p $(INSTALLROOT)$(PREFIX)/include/efi
mkdir -p $(INSTALLROOT)$(PREFIX)/include/efi/protocol
mkdir -p $(INSTALLROOT)$(PREFIX)/include/efi/$(ARCH)
$(INSTALL) -m 644 *.h $(INSTALLROOT)$(PREFIX)/include/efi
$(INSTALL) -m 644 protocol/*.h $(INSTALLROOT)$(PREFIX)/include/efi/protocol
$(INSTALL) -m 644 $(ARCH)/*.h $(INSTALLROOT)$(PREFIX)/include/efi/$(ARCH)
ifeq ($(ARCH),ia64)
mkdir -p $(INSTALLROOT)$(PREFIX)/include/efi/protocol/ia64
$(INSTALL) -m 644 protocol/ia64/*.h
$(INSTALLROOT)$(PREFIX)/include/efi/protocol/ia64
endif
So if you are not on ia32/ia64, no ia32/ia64 headers will be installed.
But on Debian (from $source/Debian/Makefile):
install: build
dh_testdir
dh_testroot
dh_clean -k
dh_installdirs -A
# gnu-efi files
cp -r inc/* debian/gnu-efi/usr/include/efi/
rm debian/gnu-efi/usr/include/efi/Makefile
rm debian/gnu-efi/usr/include/efi/inc.mak
rm debian/gnu-efi/usr/include/efi/make.inf
rm debian/gnu-efi/usr/include/efi/makefile.hdr
rm debian/gnu-efi/usr/include/efi/protocol/make.inf
rm debian/gnu-efi/usr/include/efi/protocol/makefile.hdr
rm debian/gnu-efi/usr/include/efi/protocol/readme.txt
ifeq ($(buildarch),ia64)
rm -rf debian/gnu-efi/usr/include/efi/ia32
rm -rf debian/gnu-efi/usr/include/efi/x84_64
else
rm -rf debian/gnu-efi/usr/include/efi/ia64
endif
[...]
Debian will copy *everything* from inc. When it is an ia64 system,
they will remove the ia32 and x84_64 headers (so you should be unable
to build syslinux in ia64 on Debian, too).
This will raise the question: Why does syslinux require these headers
if you don't build for these archs? This would require gnu-efi too
install headers for every arch, not only the arch you are on...
But maybe I am totally wrong :)
--
Regards,
Igor
More information about the Syslinux
mailing list