1
0
mirror of https://github.com/dguglielmi/sunny-overlay.git synced 2025-12-06 11:42:40 +01:00

net-misc/ipcalc-ng: fix build with USE='-geoip'

This commit is contained in:
2018-05-18 02:05:29 +02:00
parent a7e871fadd
commit 1e1522dd8f
3 changed files with 59 additions and 33 deletions

View File

@@ -1,4 +1,4 @@
AUX ipcalc-ng-0.2.2-fix-geoip-linking.patch 2521 BLAKE2B 6036c67f71aa7dddfef73a5c20838c97eacb385679c0efd27bca26cc1da757c83e529b87c435d72fe77bb715e413b7579ab572b4241dd5b645497bc4b9b77916 SHA512 5ddf5036d6c067f8275e1a9e0535a34f77ea1212ae5428f7b4c4f1f32aa3816ab3836b4bed9da1e439a36132362217fff9c28e37188370706b9b4fd0a5abc56a
AUX ipcalc-ng-0.2.2-fix-geoip-linking.patch 3469 BLAKE2B 923018cb6d937c0fa603d1b9739118a5f2a1413c3cd1142a49338a02cc818a886c82a479b6323a27286beeda551edf86dc71b386054aef5f30d9d9983303f5bd SHA512 cd9047d16a729b29308c014155fc5266d7c9f3757424d80327c0b40a70e51b8513759981dcd8f007a330c6e9f5912722766c2ac5a6fe9441a5d91a9b8661d1b9
AUX ipcalc-ng-0.2.2-ipcalc-h-guard-header.patch 906 BLAKE2B 58bcbd47bc28556ce22c23781b816d2b2fe87f26cf62f5973dd1eae860c9d212f090524740dd660e1f16e60270bca3f99d9063b14ee2956ba9c5cf979104fb1e SHA512 41992e48057e25173c08f6695a912fd8186d5434004e3f5c10c37f6d139f42e7ac826ef20230aaadf56afb0dafed0be977bd58cb540bd53115e705f2a6fda16c
DIST ipcalc-ng-0.2.2.tar.gz 36523 BLAKE2B 12afd7bf31dc641a7563a8e9b7f3283f0fbaca3e13acc2c9e30a6268498a13a1567151f839620c64a4317639452ffd7be934e416bd1311ec9f8e7e89ab7ce9dc SHA512 f70a8b8b98e308e2ec31703dae752658161df4ef0d530b86f27ec6a1c65e9942928b375c573a74ef1eac9bda112f25f9ce22487c34d3a2632282b62bd85702be
EBUILD ipcalc-ng-0.2.2.ebuild 831 BLAKE2B b56c849b926040dd125f26f993371b059ee2dc575256622656f20ef608342c382c01be4848031d00dc88ea0c56ffb9cdc9d7ae312160b1e13fabf0966e7b4ffd SHA512 10a2aca313994680322331fa5dd6688b4090dca2c82f08d9586c551d951d23d73ee31f2c017d72dfe3956ba480f7a3eb5ae42ade6a0006349d9218bc36f9be36
EBUILD ipcalc-ng-0.2.2.ebuild 831 BLAKE2B 8c295e8915e6dd7175473a11cec2573878b52c0a53d8b280463086f5f82f48105a822360ab1ca052d255a86c146fddf224e0df77fb25f208668c4fc55865177c SHA512 c693f0104420e682c8db03df3955928daa2dcc8af903ff3343d6ff5717e2a06912b3575038567aac01cee09988402ac1b0b429e689f5723b34ab55b08e410d31

View File

@@ -1,25 +1,7 @@
diff -dNur a/ipcalc.c b/ipcalc.c
--- a/ipcalc.c 2017-12-27 10:47:42.000000000 +0100
+++ b/ipcalc.c 2018-05-18 00:54:51.986184370 +0200
@@ -1290,8 +1290,15 @@
if (hostname)
flags |= FLAG_RESOLVE_IP;
+#ifdef USE_GEOIP
+#ifdef USE_DYN_GEOIP
if (geo_setup() == 0 && ((flags & FLAG_SHOW_ALL_INFO) == FLAG_SHOW_ALL_INFO))
flags |= FLAG_GET_GEOIP;
+#else
+ if ((flags & FLAG_SHOW_ALL_INFO) == FLAG_SHOW_ALL_INFO)
+ flags |= FLAG_GET_GEOIP;
+#endif
+#endif
if ((hostname && randomStr) || (hostname && splitStr) || (randomStr && splitStr)) {
if (!beSilent)
diff -dNur a/ipcalc-geoip.c b/ipcalc-geoip.c
--- a/ipcalc-geoip.c 2017-12-27 10:47:42.000000000 +0100
+++ b/ipcalc-geoip.c 2018-05-18 00:54:40.570361944 +0200
diff --git a/ipcalc-geoip.c b/ipcalc-geoip.c
index 6be38fe..4cae8c0 100644
--- a/ipcalc-geoip.c
+++ b/ipcalc-geoip.c
@@ -34,6 +34,22 @@
# include <GeoIP.h>
# include <GeoIPCity.h>
@@ -43,7 +25,7 @@ diff -dNur a/ipcalc-geoip.c b/ipcalc-geoip.c
# ifdef USE_DYN_GEOIP
# include <dlfcn.h>
@@ -59,22 +75,6 @@
@@ -59,22 +75,6 @@ static GeoIP_record_by_ipnum_v6_func pGeoIP_record_by_ipnum_v6;
#define LIBNAME LIBPATH"/libGeoIP.so.1"
@@ -66,7 +48,7 @@ diff -dNur a/ipcalc-geoip.c b/ipcalc-geoip.c
int geo_setup(void)
{
static void *ld = NULL;
@@ -141,8 +141,10 @@
@@ -141,8 +141,10 @@ void geo_ipv4_lookup(struct in_addr ip, char **country, char **ccode, char **cit
int country_id;
const char *p;
@@ -77,7 +59,7 @@ diff -dNur a/ipcalc-geoip.c b/ipcalc-geoip.c
ip.s_addr = ntohl(ip.s_addr);
@@ -207,8 +209,10 @@
@@ -207,8 +209,10 @@ void geo_ipv6_lookup(struct in6_addr *ip, char **country, char **ccode, char **c
int country_id;
const char *p;
@@ -88,10 +70,54 @@ diff -dNur a/ipcalc-geoip.c b/ipcalc-geoip.c
p_GeoIP_setup_dbfilename();
diff -dNur a/ipcalc.h b/ipcalc.h
--- a/ipcalc.h 2017-12-27 10:47:42.000000000 +0100
+++ b/ipcalc.h 2018-05-18 00:54:40.570361944 +0200
@@ -20,11 +20,9 @@
diff --git a/ipcalc.c b/ipcalc.c
index 5437ea8..411e1b0 100644
--- a/ipcalc.c
+++ b/ipcalc.c
@@ -709,8 +709,10 @@ int get_ipv4_info(const char *ipStr, int prefix, ip_info_st * info,
ipv4_prefix_to_hosts(info->hosts, sizeof(info->hosts), prefix);
+#ifdef USE_GEOIP
if (flags & FLAG_GET_GEOIP)
geo_ipv4_lookup(ip, &info->geoip_country, &info->geoip_ccode, &info->geoip_city, &info->geoip_coord);
+#endif
if (flags & FLAG_RESOLVE_HOST) {
info->hostname = get_hostname(AF_INET, &ip);
@@ -927,9 +929,10 @@ int get_ipv6_info(const char *ipStr, int prefix, ip_info_st * info,
ipv6_prefix_to_hosts(info->hosts, sizeof(info->hosts), prefix);
-
+#ifdef USE_GEOIP
if (flags & FLAG_GET_GEOIP)
geo_ipv6_lookup(&ip6, &info->geoip_country, &info->geoip_ccode, &info->geoip_city, &info->geoip_coord);
+#endif
if (flags & FLAG_RESOLVE_HOST) {
info->hostname = get_hostname(AF_INET6, &ip6);
@@ -1290,8 +1293,15 @@ int main(int argc, char **argv)
if (hostname)
flags |= FLAG_RESOLVE_IP;
+#ifdef USE_GEOIP
+#ifdef USE_DYN_GEOIP
if (geo_setup() == 0 && ((flags & FLAG_SHOW_ALL_INFO) == FLAG_SHOW_ALL_INFO))
flags |= FLAG_GET_GEOIP;
+#else
+ if ((flags & FLAG_SHOW_ALL_INFO) == FLAG_SHOW_ALL_INFO)
+ flags |= FLAG_GET_GEOIP;
+#endif
+#endif
if ((hostname && randomStr) || (hostname && splitStr) || (randomStr && splitStr)) {
if (!beSilent)
diff --git a/ipcalc.h b/ipcalc.h
index a3f13bc..a9a3c0f 100644
--- a/ipcalc.h
+++ b/ipcalc.h
@@ -23,11 +23,9 @@
#ifdef USE_GEOIP
void geo_ipv4_lookup(struct in_addr ip, char **country, char **ccode, char **city, char **coord);
void geo_ipv6_lookup(struct in6_addr *ip, char **country, char **ccode, char **city, char **coord);

View File

@@ -28,10 +28,10 @@ PATCHES=(
)
src_compile() {
emake \
CC="$(tc-getCC)" LIBS="${LDFLAGS}" LIBPATH="${EPREFIX}/usr/$(get_libdir)" \
USE_GEOIP="$(usex geoip yes no)" \
USE_DYN_GEOIP="no" \
emake
USE_DYN_GEOIP="no"
}
src_install() {