# Copyright 1999-2022 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=7 inherit flag-o-matic meson pam toolchain-funcs DESCRIPTION="OpenRC manages the services, startup and shutdown of a host" HOMEPAGE="https://github.com/openrc/openrc/" if [[ ${PV} =~ ^9{4,}$ ]]; then EGIT_REPO_URI="https://github.com/OpenRC/${PN}.git" inherit git-r3 else SRC_URI="https://github.com/OpenRC/openrc/archive/${PV}.tar.gz -> ${P}.tar.gz" KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~loong ~m68k ~mips ppc ppc64 ~riscv ~s390 sparc x86" fi LICENSE="BSD-2" SLOT="0" IUSE="+apparmor audit bash debug +dkms elogind +havege ncurses pam newnet +netifrc selinux +settingsd +splash sysvinit sysv-utils unicode" COMMON_DEPEND=" apparmor? ( sys-apps/apparmor sys-apps/apparmor-utils sec-policy/apparmor-profiles ) ncurses? ( sys-libs/ncurses:0= ) pam? ( sys-libs/pam ) audit? ( sys-process/audit ) dkms? ( sys-kernel/dkms ) elogind? ( sys-auth/elogind ) havege? ( sys-apps/haveged ) sys-process/psmisc selinux? ( sys-apps/policycoreutils >=sys-libs/libselinux-2.6 ) settingsd? ( app-admin/openrc-settingsd ) amd64? ( splash? ( sys-boot/plymouth-openrc-plugin ) ) >=virtual/logger-1.314.1337" DEPEND="${COMMON_DEPEND} virtual/os-headers ncurses? ( virtual/pkgconfig )" RDEPEND="${COMMON_DEPEND} bash? ( app-shells/bash ) sysv-utils? ( !sys-apps/systemd[sysv-utils(-)] !sys-apps/sysvinit ) !sysv-utils? ( sysvinit? ( >=sys-apps/sysvinit-2.86-r6[selinux?] ) ) virtual/tmpfiles selinux? ( >=sec-policy/selinux-base-policy-2.20170204-r4 >=sec-policy/selinux-openrc-2.20170204-r4 ) " PDEPEND="netifrc? ( net-misc/netifrc )" src_prepare() { default if use dkms; then eapply "${FILESDIR}"/${PN}-dkms.patch fi eapply "${FILESDIR}"/${PN}-enable-rclogger.patch } src_configure() { local emesonargs=( $(meson_feature audit) "-Dbranding=\"Redcore Linux Hardened\"" $(meson_use newnet) -Dos=Linux $(meson_use pam) $(meson_feature selinux) -Drootprefix="${EPREFIX}" -Dshell=$(usex bash /bin/bash /bin/sh) $(meson_use sysv-utils sysvinit) -Dtermcap=$(usev ncurses) ) # export DEBUG=$(usev debug) meson_src_configure } # set_config