diff options
Diffstat (limited to 'net-misc/dhcpcd')
-rw-r--r-- | net-misc/dhcpcd/Manifest | 1 | ||||
-rw-r--r-- | net-misc/dhcpcd/dhcpcd-6.11.3.ebuild | 115 |
2 files changed, 116 insertions, 0 deletions
diff --git a/net-misc/dhcpcd/Manifest b/net-misc/dhcpcd/Manifest index 4b055bc63290..1af4f4ceb6cb 100644 --- a/net-misc/dhcpcd/Manifest +++ b/net-misc/dhcpcd/Manifest @@ -4,3 +4,4 @@ DIST dhcpcd-6.10.3.tar.xz 185520 SHA256 b586c1f770373f83e3f574c683c66bea217a6d6c DIST dhcpcd-6.11.0.tar.xz 187580 SHA256 31c2cd327657f11c427fe5044f74c5b942e70450fa43ceabf4b25f3fd4999959 SHA512 ee46f28b046752e80839c229e074cb87aea93695c1347ba852a026828a34b47f66990c9ce863f7de02ad81cc922c0ae000ab8fbb23ed9f2d1f97b720020db166 WHIRLPOOL 6950d95493baaf2c16343590f6c89fcf471de50c5423030607b1a26144c86636b40fb693ce87cd4d13e433f0423ff48449b7db37f7e1266038ee2b6268116ec5 DIST dhcpcd-6.11.1.tar.xz 190956 SHA256 5c823d607ed1d7513d16ec51c54e21657f1324899e0ba333a497682d88a8c6ee SHA512 50ef755b13a96fe484623d9f2dbd91407fbea5ca728fd05dbf4259a61611a07cf3ffad7e8d20ecd513dbef80602074809abd1f5177daaa51ceccc2af5c88269f WHIRLPOOL a32350beee83184fc9d0dec5cd65f265a83aa95177b8ff700fcce2aaf2ac6c2600c322e3d8c65f1d2e9d3a2cbe71bc00b3a6efbf045fa9c805b76a3a1fca0de5 DIST dhcpcd-6.11.2.tar.xz 194228 SHA256 f19fb50b97540a27a7172d7aa17d0237c26eca5f42c7a28f7716fc81340a1eaa SHA512 eb89e07a934db81e0692d94b4eae2e70cf013d941e820547aa26c70f672ad0e5c17ae82614f453e2e94760b3f5d7ce7a4bfbdd03c1f6b69bda06764a6d6e1fca WHIRLPOOL 4992a76d7d4ff918cfc0d2773320e1370320f862d550d6f9e0f95fcd62daf41487661e6484c444233f2bc3ef7817078d478b930b9b176d4615b046c7dbdda491 +DIST dhcpcd-6.11.3.tar.xz 194892 SHA256 5abd12c4df2947d608f60a35227f9bf8ae8ab9de06ce975cdab1144d8f229b06 SHA512 249185532cb239124f847c28e6bfb3e8a85e818e05a07eb0c6ac6843fbbab8afa8d6ebce4032b3537ccfb7fafb306dd0dc51c0e97f337f12f5071ba499686a70 WHIRLPOOL 66eebad0ceabf07324f41b7c5861b13f233d6cf3fb4f7c82804b6391594595cda8c981cec088aa75242a04614a7228be7400171d32c68ee6be354bf976a237d5 diff --git a/net-misc/dhcpcd/dhcpcd-6.11.3.ebuild b/net-misc/dhcpcd/dhcpcd-6.11.3.ebuild new file mode 100644 index 000000000000..0b616f0955c5 --- /dev/null +++ b/net-misc/dhcpcd/dhcpcd-6.11.3.ebuild @@ -0,0 +1,115 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 +# $Id$ + +EAPI=6 + +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_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 +} |