ipv6calc-4.3.2-r1.ebuild
Download (2.4 KB)
# Copyright 1999-2025 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2
EAPI="8"
inherit autotools flag-o-matic toolchain-funcs
DESCRIPTION="IPv6 address calculator"
HOMEPAGE="https://www.deepspace6.net/projects/ipv6calc.html"
SRC_URI="https://github.com/pbiering/${PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~hppa ~ppc ~ppc64 ~sparc ~x86 ~amd64-linux ~x86-linux"
IUSE="cgi geoip +openssl"
RDEPEND="
cgi? (
dev-perl/HTML-Parser
dev-perl/URI
www-servers/apache
)
geoip? (
dev-libs/geoip
dev-libs/libmaxminddb:=
)
openssl? ( >=dev-libs/openssl-3.0.0:= )
!openssl? ( app-crypt/libmd )
"
DEPEND="${RDEPEND}"
PATCHES=(
"${FILESDIR}"/${P}-ldconfig_musl.patch
# both are merged. to be removed.
"${FILESDIR}"/${P}-fix_directcall_ar.patch
"${FILESDIR}"/${P}-fix_libs.patch
)
DOCS=( ChangeLog CREDITS README README.MaxMindDB README.GeoIP2 TODO USAGE )
HTML_DOCS=( doc/ipv6calc.html )
src_prepare() {
default
# configure.ac is patched
eautoconf
}
src_configure() {
# see https://github.com/pbiering/ipv6calc/issues/45
use cgi && tc-is-clang && filter-lto
# These options are broken. You can't disable them. That's
# okay because we want then force enabled.
# > libipv6calc_db_wrapper_BuiltIn.c:244:91:
# > error: ‘dbipv4addr_registry_status’ undeclared (first use in this function)
# --disable-db-as-registry
# --disable-db-cc-registry
tc-export AR
local myeconfargs=(
--disable-compiler-warning-to-error
--disable-bundled-getopt
--disable-bundled-md5
--enable-shared
--enable-dynamic-load
--enable-db-ieee
--enable-db-ipv4
--enable-db-ipv6
--disable-dbip
--disable-dbip2
--disable-external
--disable-ip2location
# disable legacy md5
# use libmd or openssl-evp-md5 (by default)
--disable-openssl-md5
$(use_enable openssl openssl-evp-md5)
$(use_enable !openssl libmd-md5)
$(use_enable cgi mod_ipv6calc)
$(use_enable geoip)
$(use_enable geoip mmdb)
)
if use geoip; then
myeconfargs+=( "--with-geoip-db=${EPREFIX}/usr/share/GeoIP" )
fi
econf "${myeconfargs[@]}"
}
src_test() {
if [[ ${EUID} -eq 0 ]]; then
# Disable tests that fail as root
echo true > ipv6logstats/test_ipv6logstats.sh || die
fi
# it requires an apache instance
echo true > mod_ipv6calc/test_mod_ipv6calc.sh || die
# it requires network
echo true > ipv6calcweb/test_ipv6calcweb.sh || die
echo true > ipv6calcweb/test_ipv6calcweb_form.sh || die
default
}
| ||