From d76974aad450b3d6ea6a3afd13ff2207e2ae46e0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=C4=90o=C3=A0n=20Tr=E1=BA=A7n=20C=C3=B4ng=20Danh?= Date: Wed, 2 Dec 2020 19:47:39 +0700 Subject: [PATCH] grub: build grub-x86_64-efi for i686, build manpages Close #25267 --- srcpkgs/grub/template | 39 ++++++++++++++++++++------------------- 1 file changed, 20 insertions(+), 19 deletions(-) diff --git a/srcpkgs/grub/template b/srcpkgs/grub/template index 76f9ce3f368..33c565bca50 100644 --- a/srcpkgs/grub/template +++ b/srcpkgs/grub/template @@ -1,8 +1,8 @@ # Template file for 'grub' pkgname=grub version=2.04 -revision=3 -hostmakedepends="python3 pkg-config flex freetype-devel font-unifont-bdf" +revision=4 +hostmakedepends="python3 pkg-config flex freetype-devel font-unifont-bdf help2man" makedepends="libusb-compat-devel ncurses-devel freetype-devel liblzma-devel device-mapper-devel fuse-devel" depends="os-prober" @@ -27,10 +27,11 @@ case "$XBPS_TARGET_MACHINE" in ;; i686*) CFLAGS="-D_FILE_OFFSET_BITS=64" + hostmakedepends+=" cross-x86_64-linux-musl" configure_args+=" ac_cv_sizeof_off_t=8" _NATIVE_PLATFORM=pc - _SUPPLEMENTARY_BUILDS="i386-efi i386-coreboot i386-xen" - subpackages+=" grub-i386-efi grub-i386-coreboot grub-xen" + _SUPPLEMENTARY_BUILDS="i386-efi x86_64-efi i386-coreboot i386-xen" + subpackages+=" grub-i386-efi grub-x86_64-efi grub-i386-coreboot grub-xen" ;; aarch64*) _NATIVE_PLATFORM=efi @@ -48,12 +49,13 @@ post_extract() { do_configure() { unset CC AS LD RANLIB CPP - CFLAGS="$CFLAGS -fno-stack-protector" + local NO_ALTIVEC # building with altivec generates broken grub core case "$XBPS_TARGET_MACHINE" in - ppc*) CFLAGS="$CFLAGS -mno-altivec" ;; + ppc*) NO_ALTIVEC="-mno-altivec" ;; esac + CFLAGS="$CFLAGS -fno-stack-protector $NO_ALTIVEC" configure_args+=" --enable-device-mapper --enable-cache-stats --enable-nls --enable-grub-mkfont --enable-grub-mount --disable-werror @@ -63,14 +65,11 @@ do_configure() { sed -i 's|/usr/share/fonts/unifont|/usr/share/fonts/misc|' configure # build tools - _configure_args=${configure_args} - if [ -n "${_NATIVE_PLATFORM}" ]; then - _configure_args="--with-platform=${_NATIVE_PLATFORM} ${_configure_args}" - fi msg_normal "Configuring grub tools...\n" mkdir $wrksrc/build cd $wrksrc/build - ../configure --host=${XBPS_TARGET_MACHINE} ${_configure_args} + ../configure --host=${XBPS_TARGET_MACHINE} ${configure_args} \ + ${_NATIVE_PLATFORM:+--with-platform=${_NATIVE_PLATFORM}} for _SUPP_BUILD in ${_SUPPLEMENTARY_BUILDS}; do _TARGET=${_SUPP_BUILD%%-*} @@ -78,7 +77,14 @@ do_configure() { msg_normal "Configuring ${_TARGET} ${_PLATFORM} grub...\n" mkdir $wrksrc/${_PLATFORM}_${_TARGET}_build cd $wrksrc/${_PLATFORM}_${_TARGET}_build - ../configure --host=${XBPS_TARGET_MACHINE} --target=${_TARGET} --with-platform=${_PLATFORM} ${configure_args} \ + if [ "$_TARGET" = x86_64 ] && + [ "${XBPS_TARGET_MACHINE%-musl}" = i686 ]; then + _TARGET=x86_64-linux-musl + fi + CFLAGS="-fno-stack-protector $NO_ALTIVEC" \ + ../configure --host=${XBPS_TARGET_MACHINE} \ + --target=${_TARGET} \ + --with-platform=${_PLATFORM} ${configure_args} \ --disable-efiemu \ --libdir=/usr/lib done @@ -90,14 +96,14 @@ do_build() { msg_normal "Building grub tools...\n" cd $wrksrc/build - make ${makejobs} &> make.log || tail -n100 make.log + make ${makejobs} for _SUPP_BUILD in ${_SUPPLEMENTARY_BUILDS}; do _TARGET=${_SUPP_BUILD%%-*} _PLATFORM=${_SUPP_BUILD##*-} msg_normal "Building ${_TARGET} ${_PLATFORM} grub...\n" cd $wrksrc/${_PLATFORM}_${_TARGET}_build - make ${makejobs} &> make.log || tail -n100 make.log + make ${makejobs} done } @@ -162,7 +168,6 @@ grub-utils_package() { } } grub-x86_64-efi_package() { - archs=noarch depends="grub>=$version dosfstools efibootmgr" short_desc+=" - x86_64 EFI support" pkg_install() { @@ -170,7 +175,6 @@ grub-x86_64-efi_package() { } } grub-i386-efi_package() { - archs=noarch depends="grub>=$version dosfstools efibootmgr" short_desc+=" - i386 EFI support" pkg_install() { @@ -178,7 +182,6 @@ grub-i386-efi_package() { } } grub-i386-coreboot_package() { - archs=noarch depends="grub>=$version" short_desc+=" - i386 coreboot support" pkg_install() { @@ -200,7 +203,6 @@ grub-xen_package() { } } grub-arm64-efi_package() { - archs=noarch depends="grub>=$version dosfstools efibootmgr" short_desc+=" - arm64 EFI support" pkg_install() { @@ -208,7 +210,6 @@ grub-arm64-efi_package() { } } grub-powerpc-ieee1275_package() { - archs=noarch depends="grub>=$version powerpc-utils" short_desc+=" - powerpc Open Firmware support" pkg_install() {