summaryrefslogtreecommitdiff
path: root/dev-util/schroot/schroot-1.6.10-r4.ebuild
diff options
context:
space:
mode:
Diffstat (limited to 'dev-util/schroot/schroot-1.6.10-r4.ebuild')
-rw-r--r--dev-util/schroot/schroot-1.6.10-r4.ebuild146
1 files changed, 146 insertions, 0 deletions
diff --git a/dev-util/schroot/schroot-1.6.10-r4.ebuild b/dev-util/schroot/schroot-1.6.10-r4.ebuild
new file mode 100644
index 000000000000..432388f071b4
--- /dev/null
+++ b/dev-util/schroot/schroot-1.6.10-r4.ebuild
@@ -0,0 +1,146 @@
+# Copyright 1999-2018 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit cmake-utils eutils pam versionator bash-completion-r1
+
+MY_P=${PN}_${PV}
+DEB_REL=2
+
+DESCRIPTION="Utility to execute commands in a chroot environment"
+HOMEPAGE="https://packages.debian.org/source/sid/schroot"
+SRC_URI="mirror://debian/pool/main/${PN::1}/${PN}/${MY_P}.orig.tar.xz
+ mirror://debian/pool/main/${PN::1}/${PN}/${MY_P}-${DEB_REL}.debian.tar.xz"
+
+LICENSE="GPL-3"
+SLOT="0"
+KEYWORDS="amd64 ~arm x86"
+IUSE="btrfs +dchroot debug doc lvm nls pam test"
+
+COMMON_DEPEND="
+ >=dev-libs/boost-1.42.0
+ >=sys-apps/util-linux-2.16
+ btrfs? ( >=sys-fs/btrfs-progs-0.19-r2 )
+ lvm? ( sys-fs/lvm2 )
+ pam? ( sys-libs/pam )
+"
+
+DEPEND="${COMMON_DEPEND}
+ app-arch/xz-utils
+ sys-apps/groff
+ doc? (
+ app-doc/doxygen
+ media-gfx/graphviz
+ )
+ nls? (
+ >=app-text/po4a-0.40
+ sys-devel/gettext
+ )
+ test? ( >=dev-util/cppunit-1.10.0 )
+"
+RDEPEND="${COMMON_DEPEND}
+ sys-apps/debianutils
+ dchroot? ( !sys-apps/dchroot )
+ nls? ( virtual/libintl )
+"
+
+PATCHES=(
+ "${S}/debian/patches/Add-support-for-more-compression-formats.patch"
+ "${S}/debian/patches/Add-SESSION_SOURCE-and-CHROOT_SESSION_SOURCE.patch"
+ "${S}/debian/patches/10mount-Move-mount-directory-to-var-run.patch"
+ "${S}/debian/patches/Support-union-mounts-with-overlay-as-in-Linux-4.0.patch"
+ "${S}/debian/patches/GCC5-fixes-on-regexes.patch"
+)
+
+src_unpack() {
+ unpack ${MY_P}.orig.tar.xz
+ cd "${S}"
+ unpack ${MY_P}-${DEB_REL}.debian.tar.xz
+}
+
+src_prepare() {
+ sed -i -e 's/warn(/message(WARNING /' man/CMakeLists.txt || die
+ sed -i -e '/^have schroot/d' etc/bash_completion/schroot || die
+
+ cmake-utils_src_prepare
+}
+
+src_configure() {
+ local mycmakeargs=(
+ -Dbtrfs-snapshot=$(usex btrfs)
+ -Ddchroot=$(usex dchroot)
+ -Ddchroot-dsa=$(usex dchroot)
+ -Ddebug=$(usex debug)
+ -Ddoxygen=$(usex doc)
+ -Dlvm-snapshot=$(usex lvm)
+ -Dnls=$(usex nls)
+ -Dpam=$(usex pam)
+ -Dtest=$(usex test)
+ -Dbash_completion_dir="$(get_bashcompdir)"
+ -DCMAKE_INSTALL_SYSCONFDIR="${EPREFIX}/etc"
+ -DCMAKE_INSTALL_LOCALSTATEDIR="${EPREFIX}/var"
+ )
+ if ! use nls; then
+ mycmakeargs+=(-DPO4A_EXECUTABLE=NOTFOUND)
+ fi
+
+ cmake-utils_src_configure
+}
+
+src_compile() {
+ cmake-utils_src_compile all $(usev doc)
+}
+
+src_test() {
+ if [[ $EUID -ne 0 ]]; then
+ ewarn "Disabling tests because you are not root"
+ return 0
+ fi
+
+ cmake-utils_src_test
+}
+
+src_install() {
+ cmake-utils_src_install
+
+ insinto /usr/share/doc/${PF}/contrib/setup.d
+ doins contrib/setup.d/05customdir contrib/setup.d/09fsck contrib/setup.d/10mount-ssh
+
+ newdoc debian/schroot.NEWS NEWS.debian
+
+ newinitd "${FILESDIR}"/schroot.initd schroot
+ newconfd "${FILESDIR}"/schroot.confd schroot
+
+ if use doc; then
+ docinto html/sbuild
+ dohtml "${BUILD_DIR}"/doc/sbuild/html/*
+ docinto html/schroot
+ dohtml "${BUILD_DIR}"/doc/schroot/html/*
+ fi
+
+ if use pam; then
+ rm -f "${ED}"etc/pam.d/schroot
+ pamd_mimic_system schroot auth account session
+ fi
+}
+
+pkg_postinst() {
+ if [[ ${REPLACING_VERSIONS} == 1.[24]* ]]; then
+ elog "Please read /usr/share/doc/${PF}/NEWS.debian* for important"
+ elog "upgrade information."
+ fi
+ # If installing to a running system, upgrading from <=1.6.10-r3, then
+ # make sure that the runtime dirs are still visible to the new install
+ if [[ ${ROOT} == / && ${REPLACING_VERSIONS} ]] && ! version_is_at_least 1.6.10-r4 ${REPLACING_VERSIONS}; then
+ ln -s "${EPREFIX}"/var/lib/schroot "${EPREFIX}"/var/run/schroot
+ fi
+}
+
+pkg_postrm() {
+ if [[ -z ${REPLACED_BY_VERSION} ]]; then
+ for dir in $(find "${EROOT}"/var/lib/schroot/mount -maxdepth 1 -type d | tac); do
+ rmdir "$dir" || elog "Failed to remove session mount directory $dir: Please check for any stray mounts or data under this directory and remove by hand."
+ done
+ fi
+}