diff options
Diffstat (limited to 'sys-boot/systemd-boot')
-rw-r--r-- | sys-boot/systemd-boot/Manifest | 3 | ||||
-rw-r--r-- | sys-boot/systemd-boot/files/249-libshared-static.patch | 27 | ||||
-rw-r--r-- | sys-boot/systemd-boot/systemd-boot-249.ebuild | 126 |
3 files changed, 156 insertions, 0 deletions
diff --git a/sys-boot/systemd-boot/Manifest b/sys-boot/systemd-boot/Manifest index cfd22172e6b5..07aa0129e3e1 100644 --- a/sys-boot/systemd-boot/Manifest +++ b/sys-boot/systemd-boot/Manifest @@ -1,4 +1,7 @@ AUX 237-libshared-static.patch 659 BLAKE2B f97c3c4e9d6ef3da674bc74fce8326d18fe1ebd4008e0929f1362ef0c2e854a67c8786c0b4ce9b29aee2b4409c54c668429f61e3c4ab85844d72c3d060b41925 SHA512 79cd97a176c91c76b512bce5f30605d673fb5480921cc76e221da9e78a8f7caec802efb481f8811c7aefba2901d007e340ba032a07a53e907f77e4bbd52169a7 +AUX 249-libshared-static.patch 881 BLAKE2B 436aa658b7f24cafad5126c5ce867508639e876a35168fa834591646dfbff6c8132348d33298d47627e1497d41be2ed1b73c288a2c0d504d2687dbdbc3f8a38b SHA512 5bb94984cddc26f35bec6edd02c7574ebd851e45efe551454d4372174ba2bca86c92c7be71936ddce4c2792886395467354e976a6a1f6e1505e95ba464a9466f DIST systemd-245.tar.gz 8993479 BLAKE2B be0b1fca5ba8585978f570868bc9135c1fee78ea64dcdf8b1a3419e856a83da90104ed2f86e5f3e5b0b6f29d4b34f603bfe1e4cbc61ccf71bedce547db62ff35 SHA512 1b80d0e02472dfc4197f11dab4f56cf90e8a6e105ce19f837cb11335b6d8577ed49031dad94cdb41aa9bdc06ec8eec62c8e9246272b83935e7bb9dcd3cd8c012 +DIST systemd-249.tar.gz 10588828 BLAKE2B f7896dea0bdec25125188b94ee84270b972649b1eb16599bed1967ced79f62dbfd1494e22362934f418823c054b342fb24dc57706b49520814beb95b6956bf27 SHA512 0810d09cc32e4aaa4425ee5b7ddf129262b061ce159cbd43571fabda48285243d8f80b566379ece9215d531b9407ee45e1e72c71935644fea31c7bca1bbf540c EBUILD systemd-boot-245.ebuild 2512 BLAKE2B 4b2f10ed6e8dc496744248bcdac1ee81fcced374b12a6097f6ac4331aef87ddc9fdb175b3366904380d278465bd8f95d35963427be662d40c90d532a20cbd6fd SHA512 f89f93cac8d826b11838736b7886a24debd5890097323e3baeb82f3f72d14f9d5f634a7025126d6862b98dae5e3127846e167145fd090fa3099027999b3e505b +EBUILD systemd-boot-249.ebuild 2641 BLAKE2B d5a14dba84ed7b88689fa12066c89c853421867e4949eb0d3147318035a1b3b1391f68a36c280f1e0e512b1b9fb9827a739d8edfc4444ea023f200f6fac23a70 SHA512 4fdb2244f6c7612e1cb56c69501ecf959f772c5fd3a958048917da7c76f569870f808cdb2691ff814e8966d4ed79ca829ead82c8e0250b450db29473a4b126f3 MISC metadata.xml 326 BLAKE2B e83f99b56ed59bed68ba738195e4eb54340f462bf786cebba3c044b3d086ed8a75946598b61c208c325f7fa053716c5dbdc6d5bfa52d4ea5fe1dfc7fcef590bb SHA512 6aaccf80be1b01c3f928038202a6fbafc86ddedea14c58d0561cc316e3e1e974433a4000d5e52d5a84e3fe47ba94461c7646c69db6e0dfbebda2f5f70712e80c diff --git a/sys-boot/systemd-boot/files/249-libshared-static.patch b/sys-boot/systemd-boot/files/249-libshared-static.patch new file mode 100644 index 000000000000..c08e451af9fc --- /dev/null +++ b/sys-boot/systemd-boot/files/249-libshared-static.patch @@ -0,0 +1,27 @@ +From eac425295227c5deda4536fd647ecf11b643e1ca Mon Sep 17 00:00:00 2001 +From: Mike Gilbert <floppym@gentoo.org> +Date: Sun, 29 Aug 2021 09:22:33 -0400 +Subject: [PATCH] Link bootctl against libshared_static + +--- + meson.build | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/meson.build b/meson.build +index 738879eb21..96042b6906 100644 +--- a/meson.build ++++ b/meson.build +@@ -2150,9 +2150,8 @@ if conf.get('ENABLE_EFI') == 1 and conf.get('HAVE_BLKID') == 1 + 'bootctl', + 'src/boot/bootctl.c', + include_directories : includes, +- link_with : [libshared], ++ link_with : [libshared_static, libsystemd_static], + dependencies : [libblkid], +- install_rpath : rootlibexecdir, + install : true) + + public_programs += executable( +-- +2.33.0 + diff --git a/sys-boot/systemd-boot/systemd-boot-249.ebuild b/sys-boot/systemd-boot/systemd-boot-249.ebuild new file mode 100644 index 000000000000..d9ed991ef5c6 --- /dev/null +++ b/sys-boot/systemd-boot/systemd-boot-249.ebuild @@ -0,0 +1,126 @@ +# Copyright 2016-2021 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 +PYTHON_COMPAT=( python3_{7..10} ) + +inherit meson python-any-r1 toolchain-funcs + +DESCRIPTION="UEFI boot manager from systemd (formerly gummiboot)" +HOMEPAGE="https://www.freedesktop.org/wiki/Software/systemd/systemd-boot/" +SRC_URI="https://github.com/systemd/systemd/archive/v${PV}.tar.gz -> systemd-${PV}.tar.gz" + +LICENSE="GPL-2 LGPL-2.1 MIT public-domain" +SLOT="0" +KEYWORDS="~amd64 ~arm64" +IUSE="" +RESTRICT="test" + +BDEPEND=" + app-text/docbook-xml-dtd:4.2 + app-text/docbook-xml-dtd:4.5 + app-text/docbook-xsl-stylesheets + dev-libs/libxslt:0 + sys-devel/gettext + dev-util/gperf + virtual/pkgconfig + ${PYTHON_DEPS} + $(python_gen_any_dep 'dev-python/jinja[${PYTHON_USEDEP}]') +" + +python_check_deps() { + has_version -b "dev-python/jinja[${PYTHON_USEDEP}]" +} + +COMMON_DEPEND=" + >=sys-apps/util-linux-2.30 +" +DEPEND="${COMMON_DEPEND} + >=sys-boot/gnu-efi-3.0.2 + sys-libs/libcap +" +RDEPEND="${COMMON_DEPEND} + !sys-apps/systemd +" + +QA_FLAGS_IGNORED="usr/lib/systemd/boot/efi/.*" +QA_EXECSTACK="usr/lib/systemd/boot/efi/*" + +S="${WORKDIR}/systemd-${PV}" + +PATCHES=( + "${FILESDIR}/249-libshared-static.patch" +) + +src_configure() { + # https://bugs.gentoo.org/725794 + tc-export OBJCOPY + + local emesonargs=( + -Dblkid=true + -Defi=true + -Dgnu-efi=true + -Defi-cc="$(tc-getCC)" + -Defi-ld="$(tc-getLD)" + -Defi-libdir="/usr/$(get_libdir)" + -Dsplit-usr=true + -Drootprefix="${EPREFIX:-/}" + + -Dacl=false + -Dapparmor=false + -Daudit=false + -Dbzip2=false + -Delfutils=false + -Dgcrypt=false + -Dgnutls=false + -Dkmod=false + -Dlibcryptsetup=false + -Dlibcurl=false + -Dlibidn=false + -Dlibidn2=false + -Dlibiptc=false + -Dlz4=false + -Dmicrohttpd=false + -Dpam=false + -Dqrencode=false + -Dseccomp=false + -Dselinux=false + -Dxkbcommon=false + -Dxz=false + ) + meson_src_configure +} + +set_efi_arch() { + case "$(tc-arch)" in + amd64) efi_arch=x64 ;; + arm) efi_arch=arm ;; + arm64) efi_arch=aa64 ;; + x86) efi_arch=x86 ;; + esac +} + +src_compile() { + local efi_arch + set_efi_arch + local targets=( + bootctl + man/bootctl.1 + man/kernel-install.8 + src/boot/efi/linux${efi_arch}.{efi,elf}.stub + src/boot/efi/systemd-boot${efi_arch}.efi + ) + meson_src_compile "${targets[@]}" +} + +src_install() { + local efi_arch + set_efi_arch + dobin "${BUILD_DIR}"/bootctl src/kernel-install/kernel-install + doman "${BUILD_DIR}"/man/{bootctl.1,kernel-install.8} + exeinto usr/lib/kernel/install.d + doexe src/kernel-install/*.install + insinto usr/lib/systemd/boot/efi + doins "${BUILD_DIR}"/src/boot/efi/{linux${efi_arch}.{efi,elf}.stub,systemd-boot${efi_arch}.efi} + einstalldocs +} |