forked from gentoo/gentoo
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
2 changed files
with
121 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,3 @@ | ||
DIST dhcpcd-6.10.0.tar.xz 179804 SHA256 ab56af9b2e86913c55a965cb0f835e87749df78318564acf90d5d698f413ad35 SHA512 f31c95beaa7668deb03e3d657660cd32434dbb0ef440e9bc568bb4a672a510bffb5e79e15d139b40fa7730e9a642c3c2167aaa1389fb8c449bfbcd0039ed30f0 WHIRLPOOL 70a18c39f317cb2cf51ec0a44d79d7fba99e381c47ecd2753bef41b68994193e9c846789aa2c1725a6261e82324434bee3231b056b93a8af3e10e9d26815a5b0 | ||
DIST dhcpcd-6.10.1.tar.xz 180112 SHA256 284abf8c3be0580bbac5eaca95359346ab0d78d4072317b6ce87cc68f2e8ae7b SHA512 f323c155cff47f21dde181c216408b79f10e6ed923aa3d1f3482feff47a1e88e02193ec82f831da4ef63d3703ca1837715c36a47cf3f5d09f117f6eb53bfcf67 WHIRLPOOL 805e8a1b4dad400825197dae7918a2172093d152986d5d97f4d1993f2c27cf3fbe097a5dc4f7a5292e98676b5d7fad6079ed64e4bffabeb7ccf9d91f4db80de9 | ||
DIST dhcpcd-6.9.0.tar.bz2 176736 SHA256 1566a58ef785880c07762ff6c520e974cf42872be5fbb23b4520f4446b120a68 SHA512 bb02005ff54ad722961208be69f48c61fb72cf56c9ca89348f3e0973e96317b06b4eaf48412ec5e763c9e20bad6f38e06d520048f3412d3bf46716f5dfb671a6 WHIRLPOOL 450b89ff260cfef8e865d1f02b7aa7119d0e37a231d08577545d0091496cee370f5f9c2614e6d5ef2b9a99b412d909d3ed4711c7433b6de085b7dc62df84a4fb |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,120 @@ | ||
# Copyright 1999-2016 Gentoo Foundation | ||
# Distributed under the terms of the GNU General Public License v2 | ||
# $Id$ | ||
|
||
EAPI=5 | ||
|
||
if [[ ${PV} == "9999" ]]; then | ||
FOSSIL_URI="http://roy.marples.name/projects/dhcpcd" | ||
else | ||
MY_P="${P/_alpha/-alpha}" | ||
MY_P="${MY_P/_beta/-beta}" | ||
MY_P="${MY_P/_rc/-rc}" | ||
SRC_URI="http://roy.marples.name/downloads/${PN}/${MY_P}.tar.xz" | ||
KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~amd64-fbsd ~sparc-fbsd ~x86-fbsd ~amd64-linux ~arm-linux ~x86-linux" | ||
S="${WORKDIR}/${MY_P}" | ||
fi | ||
|
||
inherit eutils systemd toolchain-funcs | ||
|
||
DESCRIPTION="A fully featured, yet light weight RFC2131 compliant DHCP client" | ||
HOMEPAGE="http://roy.marples.name/projects/dhcpcd/" | ||
LICENSE="BSD-2" | ||
SLOT="0" | ||
IUSE="elibc_glibc +embedded ipv6 kernel_linux +udev" | ||
|
||
COMMON_DEPEND="udev? ( virtual/udev )" | ||
DEPEND="${COMMON_DEPEND}" | ||
RDEPEND="${COMMON_DEPEND}" | ||
|
||
if [[ ${PV} == "9999" ]]; then | ||
DEPEND+=" dev-vcs/fossil" | ||
|
||
src_unpack() | ||
{ | ||
local distdir=${PORTAGE_ACTUAL_DISTDIR:-${DISTDIR}} | ||
local repo=${distdir}/fossil/${PN}.fossil | ||
|
||
addwrite "${distdir}" | ||
|
||
if [[ -e "${repo}" ]]; then | ||
fossil pull "${FOSSIL_URI}" -R "${repo}" || die | ||
else | ||
mkdir -p "${distdir}/fossil" || die | ||
fossil clone "${FOSSIL_URI}" "${repo}" || die | ||
fi | ||
|
||
mkdir -p "${S}" || die | ||
cd "${S}" || die | ||
fossil open "${repo}" || die | ||
} | ||
fi | ||
|
||
src_prepare() | ||
{ | ||
epatch_user | ||
} | ||
|
||
src_configure() | ||
{ | ||
local dev hooks rundir | ||
use udev || dev="--without-dev --without-udev" | ||
hooks="--with-hook=ntp.conf" | ||
use elibc_glibc && hooks="${hooks} --with-hook=yp.conf" | ||
use kernel_linux && rundir="--rundir=${EPREFIX}/run" | ||
econf \ | ||
--prefix="${EPREFIX}" \ | ||
--libexecdir="${EPREFIX}/lib/dhcpcd" \ | ||
--dbdir="${EPREFIX}/var/lib/dhcpcd" \ | ||
--localstatedir="${EPREFIX}/var" \ | ||
${rundir} \ | ||
$(use_enable embedded) \ | ||
$(use_enable ipv6) \ | ||
${dev} \ | ||
CC="$(tc-getCC)" \ | ||
${hooks} | ||
} | ||
|
||
src_install() | ||
{ | ||
default | ||
newinitd "${FILESDIR}"/${PN}.initd ${PN} | ||
systemd_dounit "${FILESDIR}"/${PN}.service | ||
} | ||
|
||
pkg_postinst() | ||
{ | ||
# Upgrade the duid file to the new format if needed | ||
local old_duid="${ROOT}"/var/lib/dhcpcd/dhcpcd.duid | ||
local new_duid="${ROOT}"/etc/dhcpcd.duid | ||
if [ -e "${old_duid}" ] && ! grep -q '..:..:..:..:..:..' "${old_duid}"; then | ||
sed -i -e 's/\(..\)/\1:/g; s/:$//g' "${old_duid}" | ||
fi | ||
|
||
# Move the duid to /etc, a more sensible location | ||
if [ -e "${old_duid}" -a ! -e "${new_duid}" ]; then | ||
cp -p "${old_duid}" "${new_duid}" | ||
fi | ||
|
||
if [ -z "$REPLACING_VERSIONS" ]; then | ||
elog | ||
elog "dhcpcd has zeroconf support active by default." | ||
elog "This means it will always obtain an IP address even if no" | ||
elog "DHCP server can be contacted, which will break any existing" | ||
elog "failover support you may have configured in your net configuration." | ||
elog "This behaviour can be controlled with the noipv4ll configuration" | ||
elog "file option or the -L command line switch." | ||
elog "See the dhcpcd and dhcpcd.conf man pages for more details." | ||
|
||
elog | ||
elog "Dhcpcd has duid enabled by default, and this may cause issues" | ||
elog "with some dhcp servers. For more information, see" | ||
elog "https://bugs.gentoo.org/show_bug.cgi?id=477356" | ||
fi | ||
|
||
if ! has_version net-dns/bind-tools; then | ||
elog | ||
elog "If you activate the lookup-hostname hook to look up your hostname" | ||
elog "using the dns, you need to install net-dns/bind-tools." | ||
fi | ||
} |