commit:     828edf401796143ad465f0d1f8313cc80e0d3e14
Author:     Jeroen Roovers <jer <AT> gentoo <DOT> org>
AuthorDate: Tue Jan 14 04:04:58 2020 +0000
Commit:     Jeroen Roovers <jer <AT> gentoo <DOT> org>
CommitDate: Tue Jan 14 04:14:14 2020 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=828edf40

net-misc/apt-cacher-ng: Add live ebuild

Package-Manager: Portage-2.3.84, Repoman-2.3.20
Signed-off-by: Jeroen Roovers <jer <AT> gentoo.org>

 .../apt-cacher-ng/apt-cacher-ng-9999999.ebuild     | 130 +++++++++++++++++++++
 .../files/apt-cacher-ng-9999999-flags.patch        |  18 +++
 2 files changed, 148 insertions(+)

diff --git a/net-misc/apt-cacher-ng/apt-cacher-ng-9999999.ebuild 
b/net-misc/apt-cacher-ng/apt-cacher-ng-9999999.ebuild
new file mode 100644
index 00000000000..8bde423cde0
--- /dev/null
+++ b/net-misc/apt-cacher-ng/apt-cacher-ng-9999999.ebuild
@@ -0,0 +1,130 @@
+# Copyright 1999-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+inherit cmake-utils git-r3 toolchain-funcs user
+
+DESCRIPTION="Yet another caching HTTP proxy for Debian/Ubuntu software 
packages"
+HOMEPAGE="
+       https://www.unix-ag.uni-kl.de/~bloch/acng/
+       https://packages.qa.debian.org/a/apt-cacher-ng.html
+"
+LICENSE="BSD-4 ZLIB public-domain"
+SLOT="0"
+EGIT_REPO_URI="https://salsa.debian.org/blade/apt-cacher-ng.git";
+EGIT_BRANCH="upstream/sid"
+
+KEYWORDS=""
+IUSE="doc fuse systemd tcpd"
+
+COMMON_DEPEND="
+       app-arch/bzip2
+       app-arch/xz-utils
+       dev-libs/openssl:0=
+       sys-libs/zlib
+       systemd? (
+               sys-apps/systemd
+       )
+"
+BDEPEND="
+       ${COMMON_DEPEND}
+       dev-util/cmake
+       >sys-devel/gcc-4.8
+       virtual/pkgconfig
+"
+RDEPEND="
+       ${COMMON_DEPEND}
+       dev-lang/perl
+       fuse? ( sys-fs/fuse )
+       tcpd? ( sys-apps/tcp-wrappers )
+"
+PATCHES=(
+       "${FILESDIR}"/${PN}-9999999-flags.patch
+)
+S=${WORKDIR}/${P/_*}
+
+pkg_pretend() {
+       if [[ $(gcc-major-version) -lt 4 ]]; then
+               die "GCC 4.8 or greater is required but you have 
$(gcc-major-version).$(gcc-minor-version)"
+       elif [[ $(gcc-major-version) = 4 ]] && [[ $(gcc-minor-version) -lt 8 
]]; then
+               die "GCC 4.8 or greater is required but you have 
$(gcc-major-version).$(gcc-minor-version)"
+       fi
+}
+
+pkg_setup() {
+       # add new user & group for daemon
+       enewgroup ${PN}
+       enewuser ${PN} -1 -1 -1 ${PN}
+}
+
+src_configure(){
+       mycmakeargs=(
+               "-DCMAKE_INSTALL_PREFIX=/usr"
+               "-DCMAKE_SKIP_BUILD_RPATH=on"
+       )
+       if use fuse; then
+               mycmakeargs+=( "-DHAVE_FUSE_25=yes" )
+       else
+               mycmakeargs+=( "-DHAVE_FUSE_25=no" )
+       fi
+       if use tcpd; then
+               mycmakeargs+=( "-DHAVE_LIBWRAP=yes" )
+       else
+               mycmakeargs+=( "-DHAVE_LIBWRAP=no" )
+       fi
+
+       cmake-utils_src_configure
+
+       sed -i -e '/LogDir/s|/var/tmp|/var/log/'"${PN}"'|g' 
"${BUILD_DIR}"/conf/acng.conf || die
+}
+
+src_install() {
+       pushd "${BUILD_DIR}" || die
+       dosbin ${PN} acngtool
+       dolib.so libsupacng.so
+       if use fuse; then
+               dobin acngfs
+       fi
+       popd || die
+
+       newinitd "${FILESDIR}"/initd-r2 ${PN}
+       newconfd "${FILESDIR}"/confd-r1 ${PN}
+
+       insinto /etc/logrotate.d
+       newins "${FILESDIR}"/logrotate ${PN}
+
+       doman doc/man/${PN}*
+       if use fuse; then
+               doman doc/man/acngfs*
+       fi
+
+       # Documentation
+       dodoc doc/README TODO VERSION INSTALL ChangeLog
+       if use doc; then
+               dodoc doc/*.pdf
+
+               docinto html
+               dodoc doc/html/*
+
+               find conf -name '*.gz' -exec gzip -d {} \; || die
+               docinto examples/conf
+               dodoc conf/*
+       fi
+
+       # perl daily cron script
+       dosbin scripts/expire-caller.pl
+       exeinto /etc/cron.daily
+       newexe "${FILESDIR}"/cron.daily ${PN}
+
+       # default configuration
+       insinto /etc/${PN}
+       newins "${BUILD_DIR}"/conf/acng.conf ${PN}.conf
+       doins $( echo conf/* | sed 's|conf/acng.conf.in||g' )
+
+       keepdir /var/log/${PN}
+       # Some directories must exists
+       keepdir /var/log/${PN}
+       fowners -R ${PN}:${PN} \
+               /etc/${PN} \
+               /var/log/${PN}
+}

diff --git a/net-misc/apt-cacher-ng/files/apt-cacher-ng-9999999-flags.patch 
b/net-misc/apt-cacher-ng/files/apt-cacher-ng-9999999-flags.patch
new file mode 100644
index 00000000000..8fe769ada32
--- /dev/null
+++ b/net-misc/apt-cacher-ng/files/apt-cacher-ng-9999999-flags.patch
@@ -0,0 +1,18 @@
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -114,15 +114,6 @@
+ 
+ if(CMAKE_BUILD_TYPE MATCHES Debug)
+    set(USE_LTO_DEFAULT off)
+-else()
+-   set(CMAKE_REQUIRED_FLAGS "-Wl,--gc-sections")
+-   CHECK_CXX_COMPILER_FLAG("-Os -fdata-sections -ffunction-sections 
-Wl,--gc-sections" GC_SECTIONS)
+-   if(GC_SECTIONS)
+-           _append(ACNG_COMPFLAGS -fdata-sections -ffunction-sections)
+-           _append(CMAKE_EXE_LINKER_FLAGS -Wl,--gc-sections)
+-           _append(CMAKE_SHARED_LINKER_FLAGS -Wl,--gc-sections)
+-   endif()
+-   set(CMAKE_REQUIRED_FLAGS "")
+ endif()
+ 
+ option(USE_LTO "Enable Link Time Optimization (requires modern compilers)" 
${USE_LTO_DEFAULT})

Reply via email to