You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
gentoo-overlay/net-misc/apt-cacher-ng/apt-cacher-ng-0.9.1.ebuild

118 lines
2.5 KiB

# Copyright 1999-2015 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Id$
EAPI=5
inherit cmake-utils eutils toolchain-funcs user
DESCRIPTION="Yet another implementation of an HTTP proxy for Debian/Ubuntu software packages written in C++"
HOMEPAGE="
http://www.unix-ag.uni-kl.de/~bloch/acng/
http://packages.qa.debian.org/a/apt-cacher-ng.html
"
LICENSE="BSD-4 ZLIB public-domain"
SLOT="0"
SRC_URI="mirror://debian/pool/main/a/${PN}/${PN}_${PV}.orig.tar.xz"
KEYWORDS="~amd64 ~x86"
IUSE="doc fuse systemd tcpd"
COMMON_DEPEND="
app-arch/bzip2
app-arch/xz-utils
sys-libs/zlib
systemd? (
sys-apps/systemd
)
"
DEPEND="
${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 )
"
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"
if use fuse; then
mycmakeargs="-DHAVE_FUSE_25=yes ${mycmakeargs}"
else
mycmakeargs="-DHAVE_FUSE_25=no ${mycmakeargs}"
fi
if use tcpd; then
mycmakeargs="-DHAVE_LIBWRAP=yes ${mycmakeargs}"
else
mycmakeargs="-DHAVE_LIBWRAP=no ${mycmakeargs}"
fi
cmake-utils_src_configure
}
src_install() {
pushd ${CMAKE_BUILD_DIR}
dosbin ${PN}
if use fuse; then
dobin acngfs
fi
popd
newinitd "${FILESDIR}"/initd-r1 ${PN}
newconfd "${FILESDIR}"/confd ${PN}
insinto /etc/logrotate.d
newins "${FILESDIR}"/logrotate ${PN}
doman doc/man/${PN}*
if use fuse; then
doman doc/man/acngfs*
fi
# Documentation
dodoc README TODO VERSION INSTALL ChangeLog
if use doc; then
dodoc doc/*.pdf
dohtml doc/html/*
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 "${CMAKE_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}
}