1
1
#! /bin/sh
2
2
#
3
3
# SPDX-FileCopyrightText: 2005 David Johnson
4
- # SPDX-FileCopyrightText: 2005-2021 Dirk Meyer
4
+ # SPDX-FileCopyrightText: 2005-2025 Dirk Meyer
5
5
# SPDX-License-Identifier: GPL-2.0-only
6
6
#
7
7
# $Id$
@@ -878,11 +878,12 @@ __attribute__ ((noreturn))
878
878
#endif
879
879
main (int argc, char **argv)
880
880
{
881
- (void)argc;
882
- (void)argv;
883
881
"
884
882
885
- main2=" exit(0);
883
+ main2="
884
+ (void)argc;
885
+ (void)argv;
886
+ exit(0);
886
887
}"
887
888
888
889
main0=" ${main1}${main2} "
@@ -920,6 +921,49 @@ else
920
921
${msg} " ${irt_no} "
921
922
fi
922
923
924
+ ${msg} -n " ${irt_seeingif} $cctype ${irt_accepts} '-Wno-unreachable-code'... "
925
+ echo "
926
+ #include <stdlib.h>
927
+ ${main0} " > config.temp.c
928
+ if $cctype -o config.temp -Wno-unreachable-code $CFLAGS config.temp.c $LDFLAGS $libs $LIBS ; then
929
+ ${msg} " ${irt_yes} "
930
+ NOUNREACH=" -Wno-unreachable-code"
931
+ else
932
+ ${msg} " ${irt_no} "
933
+ fi
934
+
935
+ ${msg} -n " ${irt_seeingif} $cctype ${irt_accepts} '-Wno-padded'... "
936
+ echo "
937
+ #include <stdlib.h>
938
+ ${main0} " > config.temp.c
939
+ if $cctype -o config.temp -Wno-padded $CFLAGS config.temp.c $LDFLAGS $libs $LIBS ; then
940
+ ${msg} " ${irt_yes} "
941
+ NOPADDED=" -Wno-padded"
942
+ else
943
+ ${msg} " ${irt_no} "
944
+ fi
945
+
946
+ ${msg} -n " ${irt_seeingif} $cctype ${irt_accepts} '-Wno-system-headers'... "
947
+ echo "
948
+ #include <stdlib.h>
949
+ ${main0} " > config.temp.c
950
+ if $cctype -o config.temp -Wno-system-headers $CFLAGS config.temp.c $LDFLAGS $libs $LIBS ; then
951
+ ${msg} " ${irt_yes} "
952
+ CFLAGS=" ${CFLAGS} -Wno-system-headers"
953
+ else
954
+ ${msg} " ${irt_no} "
955
+ fi
956
+
957
+ ${msg} -n " ${irt_seeingif} $cctype ${irt_accepts} '--system-header-prefix=/usr'... "
958
+ echo "
959
+ #include <stdlib.h>
960
+ ${main0} " > config.temp.c
961
+ if $cctype -o config.temp --system-header-prefix=/usr $CFLAGS config.temp.c $LDFLAGS $libs $LIBS ; then
962
+ ${msg} " ${irt_yes} "
963
+ CFLAGS=" ${CFLAGS} --system-header-prefix=/usr --system-header-prefix=/usr/local/include"
964
+ else
965
+ ${msg} " ${irt_no} "
966
+ fi
923
967
924
968
${msg} -n " ${irt_seeing16bit} ... "
925
969
echo "
@@ -1061,7 +1105,7 @@ ${msg} -n "${irt_endianness}... "
1061
1105
echo " ${irmain1}
1062
1106
printf(\" %s\" , (100 == ntohl(100)) ? \" big\" : \" little\" );
1063
1107
${main2} " > config.temp.c
1064
- if $cctype -o config.temp $WARNS $WERROR $CFLAGS config.temp.c $LDFLAGS $libs $LIBS && [ " ` ./config.temp` " = " big" ]; then
1108
+ if $cctype -o config.temp $WARNS $WERROR $NOUNREACH $ CFLAGS config.temp.c $LDFLAGS $libs $LIBS && [ " ` ./config.temp` " = " big" ]; then
1065
1109
${msg} " ${irt_endianbig} "
1066
1110
echo " #define IR_ENDIAN_BIG" >> src/iroffer_config.h
1067
1111
elif [ " ` ./config.temp` " = " little" ]; then
@@ -1083,7 +1127,7 @@ echo "${irmain1}
1083
1127
(void)array;
1084
1128
close(fd);
1085
1129
${main2} " > config.temp.c
1086
- if $cctype -o config.temp -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE $WARNS $WERROR $CFLAGS config.temp.c $LDFLAGS $libs $LIBS ; then
1130
+ if $cctype -o config.temp -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE $WARNS $WERROR -Wno-declaration-after-statement $CFLAGS config.temp.c $LDFLAGS $libs $LIBS ; then
1087
1131
${msg} " ${irt_yes} "
1088
1132
echo " #define _FILE_OFFSET_BITS 64" >> src/iroffer_config.h
1089
1133
echo " #define _LARGEFILE_SOURCE" >> src/iroffer_config.h
1158
1202
1159
1203
${msg} -n " ${irt_checkfor} snprintf()... "
1160
1204
echo " ${irmain1}
1161
- char *s=0; snprintf(s,10,\" blah\" );
1205
+ char *s=0;
1206
+ snprintf(s,10,\" blah\" );
1162
1207
${main2} " > config.temp.c
1163
1208
if $cctype -o config.temp $WARNS $WERROR $CFLAGS config.temp.c $LDFLAGS $libs $LIBS ; then
1164
1209
${msg} " ${irt_found} "
1266
1311
1267
1312
${msg} -n " ${irt_checkfor} statvfs()... "
1268
1313
echo " ${irmain1}
1269
- struct statvfs stf; statvfs(\"\" ,&stf);
1314
+ struct statvfs stf;
1315
+ statvfs(\"\" ,&stf);
1270
1316
${main2} " > config.temp.c
1271
1317
if $cctype -o config.temp $WARNS $WERROR $CFLAGS config.temp.c $LDFLAGS $libs $LIBS ; then
1272
1318
${msg} " ${irt_found} "
1277
1323
1278
1324
${msg} -n " ${irt_checkfor} statfs()... "
1279
1325
echo " ${irmain1}
1280
- struct statfs stf; statfs(\"\" ,&stf);
1326
+ struct statfs stf;
1327
+ statfs(\"\" ,&stf);
1281
1328
${main2} " > config.temp.c
1282
1329
if $cctype -o config.temp $WARNS $WERROR $CFLAGS config.temp.c $LDFLAGS $libs $LIBS ; then
1283
1330
${msg} " ${irt_found} "
1323
1370
${msg} -n " ${irt_seeingif} crypt() ${irt_works} ${irt_asexpected} ... "
1324
1371
echo " ${irmain1}
1325
1372
char *pwout;
1373
+ (void)argc;
1374
+ (void)argv;
1326
1375
pwout = crypt(\" testtest\" ,\" LH\" );
1327
1376
if (pwout && !strcmp(\" LHD/pLKwfn0.k\" , pwout)) {
1328
1377
fputs(\" result: <plain> \" , stderr);
1570
1619
${msg} -n " ${irt_checkfor} gethostbyname() error ${irt_values} ... "
1571
1620
echo " ${irmain1}
1572
1621
int i;
1622
+ (void)argc;
1623
+ (void)argv;
1573
1624
switch (h_errno) {
1574
1625
case HOST_NOT_FOUND:
1575
1626
case NO_ADDRESS:
@@ -1610,6 +1661,7 @@ if $OPT_KQUEUE; then
1610
1661
${msg} -n " ${irt_checkfor} kqueue() ... "
1611
1662
echo " ${irheaders}
1612
1663
#include <sys/event.h>
1664
+ extern int ir_kqueue_fd;
1613
1665
int ir_kqueue_fd;
1614
1666
${main1}
1615
1667
ir_kqueue_fd = kqueue ();
@@ -1629,7 +1681,7 @@ if $OPT_GEOIP; then
1629
1681
${main1}
1630
1682
MMDB_open(NULL, MMDB_MODE_MMAP, NULL);
1631
1683
${main2} " > config.temp.c
1632
- if $cctype -o config.temp -DUSE_MAXMINDDB $WARNS $WERROR $CFLAGS " -I${LOCALBASE} /include" config.temp.c " -L${LOCALBASE} /lib" -lmaxminddb $LDFLAGS $libs $LIBS ; then
1684
+ if $cctype -o config.temp -DUSE_MAXMINDDB $WARNS $NOPADDED $ WERROR $CFLAGS " -I${LOCALBASE} /include" config.temp.c " -L${LOCALBASE} /lib" -lmaxminddb $LDFLAGS $libs $LIBS ; then
1633
1685
${msg} " ${irt_found} "
1634
1686
echo " #define USE_MAXMINDDB" >> src/iroffer_config.h
1635
1687
FEATURES=" ${FEATURES} ,geoip2"
@@ -1639,14 +1691,14 @@ ${main2}" > config.temp.c
1639
1691
fi
1640
1692
fi
1641
1693
1642
- if $OPT_GEOIP ; then
1643
- ${msg} -n " ${irt_seeingif_lib} GeoIP ${irt_lib_exists} ... "
1694
+ if $OPT_GEOIP && [ " ${MAXMINDDBLIB} " = ' ' ] ; then
1695
+ ${msg} -n " ${irt_seeingif_lib} GeoIP1 ${irt_lib_exists} ... "
1644
1696
echo " ${irheaders}
1645
1697
#include <GeoIP.h>
1646
1698
${main1}
1647
1699
GeoIP_country_code_by_addr(NULL, NULL);
1648
1700
${main2} " > config.temp.c
1649
- if $cctype -o config.temp -DUSE_GEOIP $WARNS $WERROR $CFLAGS " -I${LOCALBASE} /include" config.temp.c " -L${LOCALBASE} /lib" -lGeoIP $LDFLAGS $libs $LIBS ; then
1701
+ if $cctype -o config.temp -DUSE_GEOIP $WARNS $NOPADDED $ WERROR $CFLAGS " -I${LOCALBASE} /include" config.temp.c " -L${LOCALBASE} /lib" -lGeoIP $LDFLAGS $libs $LIBS ; then
1650
1702
${msg} " ${irt_found} "
1651
1703
echo " #define USE_GEOIP" >> src/iroffer_config.h
1652
1704
FEATURES=" ${FEATURES} ,geoip"
@@ -1659,7 +1711,7 @@ ${main2}" > config.temp.c
1659
1711
${main1}
1660
1712
struct in6_addr remoteip; inet_pton(AF_INET6, 0, &remoteip); GeoIP_country_code_by_ipnum_v6(NULL, remoteip);
1661
1713
${main2} " > config.temp.c
1662
- if $cctype -o config.temp -DUSE_GEOIP6 $WARNS $WERROR $CFLAGS ${GEOINC} config.temp.c ${GEOLDF} ${GEOLIB} $LDFLAGS $libs $LIBS ; then
1714
+ if $cctype -o config.temp -DUSE_GEOIP6 $WARNS $NOPADDED $ WERROR $CFLAGS ${GEOINC} config.temp.c ${GEOLDF} ${GEOLIB} $LDFLAGS $libs $LIBS ; then
1663
1715
FEATURES=" ${FEATURES} 6"
1664
1716
${msg} " ${irt_found} "
1665
1717
echo " #define USE_GEOIP6" >> src/iroffer_config.h
@@ -1690,7 +1742,7 @@ ${main1}
1690
1742
#endif /* UPNPDISCOVER_SUCCESS */
1691
1743
#endif
1692
1744
${main2} " > config.temp.c
1693
- if $cctype -o config.temp -DUSE_UPNP $WARNS $WERROR $CFLAGS " -I${LOCALBASE} /include" config.temp.c " -L${LOCALBASE} /lib" -lminiupnpc $LDFLAGS $libs $LIBS ; then
1745
+ if $cctype -o config.temp -DUSE_UPNP $WARNS $NOPADDED $ WERROR $CFLAGS " -I${LOCALBASE} /include" config.temp.c " -L${LOCALBASE} /lib" -lminiupnpc $LDFLAGS $libs $LIBS ; then
1694
1746
${msg} " ${irt_found} "
1695
1747
echo " #define USE_UPNP" >> src/iroffer_config.h
1696
1748
FEATURES=" ${FEATURES} ,upnp"
@@ -1710,7 +1762,7 @@ if $OPT_CURL; then
1710
1762
${main1}
1711
1763
curl_global_cleanup();
1712
1764
${main2} " > config.temp.c
1713
- if $cctype -o config.temp -DUSE_CURL $WARNS $CFLAGS ` curl-config --cflags` config.temp.c " -L${LOCALBASE} /lib" ` curl-config --libs` $LDFLAGS $libs $LIBS ; then
1765
+ if $cctype -o config.temp -DUSE_CURL $WARNS $NOPADDED $ CFLAGS ` curl-config --cflags` config.temp.c " -L${LOCALBASE} /lib" ` curl-config --libs` $LDFLAGS $libs $LIBS ; then
1714
1766
${msg} " ${irt_found} "
1715
1767
echo " #define USE_CURL" >> src/iroffer_config.h
1716
1768
FEATURES=" ${FEATURES} ,curl"
@@ -1796,6 +1848,25 @@ if $OPT_RUBY; then
1796
1848
fi
1797
1849
${msg} -n " ${irt_seeingif_lib} libruby ${irt_lib_exists} (${irt_for} RUBY-Scripts)... "
1798
1850
echo "
1851
+ #pragma GCC diagnostic ignored \" -Wpadded\"
1852
+ #pragma GCC diagnostic ignored \" -Wpedantic\"
1853
+ #pragma GCC diagnostic ignored \" -Wstrict-prototypes\"
1854
+ #pragma GCC diagnostic ignored \" -Wredundant-decls\"
1855
+ #pragma GCC diagnostic ignored \" -Wunused-parameter\"
1856
+ #pragma GCC diagnostic ignored \" -Wcast-qual\"
1857
+ #pragma GCC diagnostic ignored \" -Wsign-conversion\"
1858
+ #ifdef __clang__
1859
+ #pragma GCC diagnostic ignored \" -Wgcc-compat\"
1860
+ #pragma GCC diagnostic ignored \" -Wgnu-zero-variadic-macro-arguments\"
1861
+ #pragma clang diagnostic ignored \" -Wunknown-warning-option\"
1862
+ #pragma clang diagnostic ignored \" -Wdisabled-macro-expansion\"
1863
+ #pragma clang diagnostic ignored \" -Wdocumentation\"
1864
+ #pragma clang diagnostic ignored \" -Wdocumentation-unknown-command\"
1865
+ #pragma clang diagnostic ignored \" -Wdeclaration-after-statement\"
1866
+ #pragma clang diagnostic ignored \" -Walloca\"
1867
+ #pragma clang diagnostic ignored \" -Wc23-extensions\"
1868
+ #pragma clang diagnostic ignored \" -Wshift-sign-overflow\"
1869
+ #endif
1799
1870
#include \" ruby.h\"
1800
1871
${main1}
1801
1872
ruby_init(); ruby_finalize();
0 commit comments