blob: 97eab60040b873e83e26692bb86ab19da588523e (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
|
# Copyright 1999-2020 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI=7
inherit cmake-utils 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"
SRC_URI="
mirror://debian/pool/main/a/${PN}/${PN}_${PV/_*}.orig.tar.xz
mirror://debian/pool/main/a/${PN}/${PN}_${PV/_p/-}.debian.tar.xz
"
KEYWORDS="~amd64 ~x86"
IUSE="doc fuse systemd tcpd"
COMMON_DEPEND="
app-arch/bzip2
app-arch/xz-utils
dev-libs/libevent:=
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}-3.3.1-flags.patch
"${FILESDIR}"/${PN}-3.5-perl-syntax.patch
"${WORKDIR}"/debian/patches/debian-changes
)
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() {
local mycmakeargs=()
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
if tc-ld-is-gold; then
mycmakeargs+=( "-DUSE_GOLD=yes" )
else
mycmakeargs+=( "-DUSE_GOLD=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
newdoc "${WORKDIR}"/debian/changelog debian.changelog
# perl daily cron script
dosbin scripts/expire-caller.pl
insinto /etc/cron.daily
doins "${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}
}
|