summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--sys-boot/systemd-boot/Manifest1
-rw-r--r--sys-boot/systemd-boot/metadata.xml8
-rw-r--r--sys-boot/systemd-boot/systemd-boot-231.ebuild115
3 files changed, 124 insertions, 0 deletions
diff --git a/sys-boot/systemd-boot/Manifest b/sys-boot/systemd-boot/Manifest
new file mode 100644
index 000000000000..b8044e33c857
--- /dev/null
+++ b/sys-boot/systemd-boot/Manifest
@@ -0,0 +1 @@
+DIST systemd-231.tar.gz 4381464 SHA256 899733ad6c157cedbb89aec4efe3bc824dcfd65a1d6f6bebc7b043f7924e39b4 SHA512 199fa33a0494d1d15f7fe3c796fe14913ad386766571d4d3fbb1cb1c446e04f6d06a965213be4c594a7183e810fc2fd4804fe14f64f21b0a1278b717889811c6 WHIRLPOOL 7779291e9fb9873cb1773b8583cf6d4b7dec837363ea89c4a73c1e397a76752b66f8b57d8fc4d9cef768cc1855b5e325ad88a8a69eb5380aa924e0a6dead41b1
diff --git a/sys-boot/systemd-boot/metadata.xml b/sys-boot/systemd-boot/metadata.xml
new file mode 100644
index 000000000000..de09ffd8b089
--- /dev/null
+++ b/sys-boot/systemd-boot/metadata.xml
@@ -0,0 +1,8 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
+<pkgmetadata>
+ <maintainer type="person">
+ <email>floppym@gentoo.org</email>
+ <name>Mike Gilbert</name>
+ </maintainer>
+</pkgmetadata>
diff --git a/sys-boot/systemd-boot/systemd-boot-231.ebuild b/sys-boot/systemd-boot/systemd-boot-231.ebuild
new file mode 100644
index 000000000000..c034512caf71
--- /dev/null
+++ b/sys-boot/systemd-boot/systemd-boot-231.ebuild
@@ -0,0 +1,115 @@
+# Copyright 1999-2016 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: $
+
+EAPI=6
+
+inherit autotools eutils 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"
+IUSE=""
+
+COMMON_DEPEND="
+ >=sys-apps/util-linux-2.27.1:0=
+ sys-libs/libcap:=
+"
+DEPEND="${COMMON_DEPEND}
+ app-text/docbook-xml-dtd:4.2
+ app-text/docbook-xsl-stylesheets
+ dev-libs/libxslt:0
+ >=dev-util/intltool-0.50
+ >=sys-boot/gnu-efi-3.0.2
+"
+RDEPEND="${COMMON_DEPEND}
+ !sys-apps/systemd
+"
+
+S="${WORKDIR}/systemd-${PV}"
+
+src_prepare() {
+ default
+ eautoreconf
+}
+
+src_configure() {
+ local myeconfargs=(
+ EFI_CC="$(tc-getPROG "EFI_CC CC" gcc)"
+ cc_cv_CFLAGS__flto=no
+ cc_cv_LDFLAGS__Wl__fuse_ld_gold=no
+ --enable-blkid
+ --enable-efi
+ --enable-gnuefi
+ --disable-acl
+ --disable-apparmor
+ --disable-audit
+ --disable-bzip2
+ --disable-elfutils
+ --disable-gcrypt
+ --disable-gnutls
+ --disable-kmod
+ --disable-libcryptsetup
+ --disable-libcurl
+ --disable-libidn
+ --disable-lz4
+ --disable-microhttpd
+ --disable-myhostname
+ --disable-pam
+ --disable-qrencode
+ --disable-seccomp
+ --disable-selinux
+ --disable-xkbcommon
+ --disable-xz
+ --disable-zlib
+ )
+ econf "${myeconfargs[@]}"
+}
+
+efi-mt() {
+ case "$(tc-arch)" in
+ amd64) echo x64 ;;
+ arm64) echo aa64 ;;
+ x86) echo ia32 ;;
+ *) die "Unsupported arch" ;;
+ esac
+}
+
+src_compile() {
+ local args=(
+ libsystemd-shared.la
+ bootctl
+ man/bootctl.1
+ linux$(efi-mt).efi.stub
+ systemd-boot$(efi-mt).efi
+ )
+ emake built-sources
+ emake "${args[@]}"
+}
+
+src_install() {
+ local args=(
+ DESTDIR="${D%/}"
+
+ # libsystemd-shared
+ rootlibexec_LTLIBRARIES=libsystemd-shared.la
+ install-rootlibexecLTLIBRARIES
+
+ # bootctl
+ lib_LTLIBRARIES=
+ bin_PROGRAMS=bootctl
+ install-binPROGRAMS
+
+ man_MANS=man/bootctl.1
+ install-man1
+
+ install-bootlibDATA
+ )
+ emake "${args[@]}"
+ prune_libtool_files
+ einstalldocs
+}