Annotation of nono/configure.ac, revision 1.1.1.8

1.1       root        1: #
                      2: # nono
1.1.1.3   root        3: # Copyright (C) 2020 nono project
                      4: # Licensed under nono-license.txt
1.1       root        5: #
                      6: 
                      7: AC_PREREQ([2.69])
1.1.1.3   root        8: AC_INIT([nono], [0.0], [])
1.1       root        9: AC_CONFIG_SRCDIR(wx/wxapp.cpp)
1.1.1.6   root       10: AC_CONFIG_AUX_DIR([scripts])
1.1       root       11: 
                     12: # Checks for programs.
                     13: AC_PROG_CXX
                     14: AC_PROG_CC
1.1.1.3   root       15: AC_PROG_INSTALL
1.1       root       16: AC_C_BIGENDIAN
                     17: 
1.1.1.6   root       18: # OS
                     19: AC_CANONICAL_HOST
                     20: AC_SUBST([host_cpu])
                     21: 
1.1.1.4   root       22: # コンパイラをチェック。今のところ clang/gcc のみ。
                     23: # (autoconf がやってる gcc かどうかのチェックは clang を検出できず使えない)
                     24: AC_MSG_CHECKING(for compiler)
                     25: if test -n "`${CC} -v 2>&1 | grep clang`" ; then
                     26:        AC_MSG_RESULT([clang])
                     27:        COMPILER=CLANG
                     28: elif test -n "`${CC} -v 2>&1 | grep GCC`"; then
                     29:        AC_MSG_RESULT([gcc])
                     30:        COMPILER=GCC
                     31: else
                     32:        AC_MSG_RESULT([unknown])
                     33:        COMPILER=
                     34: fi
                     35: AC_SUBST([COMPILER])
                     36: 
1.1.1.3   root       37: # C++ のバージョンをチェック
                     38: CXX_STD=-std=c++14
                     39: AC_LANG_PUSH([C++])
                     40: AC_MSG_CHECKING(for ${CXX_STD})
1.1       root       41: old_CXXFLAGS="${CXXFLAGS}"
1.1.1.3   root       42: CXXFLAGS="${CXX_STD} ${CXXFLAGS}"
1.1       root       43: AC_COMPILE_IFELSE([AC_LANG_PROGRAM([], [])],
1.1.1.3   root       44:        AC_MSG_RESULT([yes]),
                     45:        AC_MSG_ERROR("*** C++ compiler '${CXX}' doesn't support ${CXX_STD}."))
1.1       root       46: CXXFLAGS="${old_CXXFLAGS}"
1.1.1.3   root       47: CXX="${CXX} ${CXX_STD}"
                     48: AC_LANG_POP([C++])
                     49: 
                     50: # C コンパイラのワーニングオプション
                     51: AC_LANG_PUSH([C])
1.1.1.4   root       52: AC_DEFUN([ADD_CC_WARN_IF],[
1.1.1.3   root       53:        AC_MSG_CHECKING([whether cc accepts $1])
                     54:        old_CFLAGS="${CFLAGS}"
                     55:        CFLAGS="${CFLAGS} -Werror $1"
                     56:        AC_COMPILE_IFELSE([AC_LANG_PROGRAM([], [])],
                     57:                AC_MSG_RESULT([yes])
                     58:                WARNFLAGS_C="${WARNFLAGS_C} $1",
                     59:                AC_MSG_RESULT([no]))
                     60:        CFLAGS="${old_CFLAGS}"
                     61: ])
1.1.1.4   root       62: ADD_CC_WARN_IF(-Wcast-qual)
                     63: ADD_CC_WARN_IF(-Wextra-semi)
                     64: ADD_CC_WARN_IF(-Wlogical-op)
                     65: ADD_CC_WARN_IF(-Wmissing-prototypes)
                     66: ADD_CC_WARN_IF(-Wmissing-variable-declarations)
1.1.1.3   root       67: AC_LANG_POP([C])
                     68: AC_SUBST([WARNFLAGS_C])
                     69: 
                     70: # C++ コンパイラのワーニングオプション
                     71: # (AC_LANG は C++ のまま継続する)
                     72: AC_LANG_CPLUSPLUS
1.1.1.4   root       73: AC_DEFUN([ADD_CXX_WARN_IF],[
1.1.1.3   root       74:        AC_MSG_CHECKING([whether c++ accepts $1])
                     75:        old_CXXFLAGS="${CXXFLAGS}"
                     76:        CXXFLAGS="${CXXFLAGS} -Werror $1"
                     77:        AC_COMPILE_IFELSE([AC_LANG_PROGRAM([], [])],
                     78:                AC_MSG_RESULT([yes])
                     79:                WARNFLAGS_CXX="${WARNFLAGS_CXX} $1",
                     80:                AC_MSG_RESULT([no]))
                     81:        CXXFLAGS="${old_CXXFLAGS}"
                     82: ])
1.1.1.4   root       83: ADD_CXX_WARN_IF(-Wcast-qual)
                     84: ADD_CXX_WARN_IF(-Wextra-semi)
                     85: ADD_CXX_WARN_IF(-Winconsistent-missing-override)
                     86: ADD_CXX_WARN_IF(-Winconsistent-missing-destructor-override)
                     87: ADD_CXX_WARN_IF(-Wlogical-op)
                     88: ADD_CXX_WARN_IF(-Wmissing-prototypes)
                     89: ADD_CXX_WARN_IF(-Wmissing-variable-declarations)
                     90: ADD_CXX_WARN_IF(-Wvla-extension)
1.1.1.3   root       91: AC_SUBST([WARNFLAGS_CXX])
1.1       root       92: 
                     93: # Checks for libraries.
                     94: 
                     95: # Checks for header files.
                     96: AC_CHECK_HEADERS([bsd/bsd.h])
                     97: AC_CHECK_HEADERS([endian.h])
1.1.1.2   root       98: AC_CHECK_HEADERS([histedit.h])
1.1       root       99: AC_CHECK_HEADERS([kqueue/sys/event.h])
1.1.1.3   root      100: AC_CHECK_HEADERS([pthread_np.h])
1.1       root      101: AC_CHECK_HEADERS([sys/endian.h])
                    102: AC_CHECK_HEADERS([sys/event.h])
                    103: AC_CHECK_HEADERS([net/bpf.h])
                    104: AC_CHECK_HEADERS([net/if_tap.h])
                    105: AC_CHECK_HEADERS([linux/if_tun.h])
                    106: 
                    107: # Linux で <kqueue/sys/event.h> がなければここで停止したほうがいい
1.1.1.6   root      108: case "${host_os}" in
                    109:  linux*)
                    110:        if test "$ac_cv_header_kqueue_sys_event_h" != "yes"; then
                    111:                AC_MSG_ERROR([*** kqueue is not found.
1.1.1.7   root      112: *** If you use Ubuntu, sudo apt install libkqueue-dev])
1.1.1.6   root      113:        fi
                    114:        ;;
                    115: esac
1.1       root      116: 
                    117: # Checks for typedefs, structures, and compiler characteristics.
                    118: AC_CHECK_HEADER_STDBOOL
                    119: #AC_C_INLINE
                    120: #AC_TYPE_INT16_T
                    121: #AC_TYPE_INT32_T
                    122: #AC_TYPE_INT64_T
                    123: #AC_TYPE_INT8_T
                    124: #AC_TYPE_SIZE_T
                    125: #AC_TYPE_UINT16_T
                    126: #AC_TYPE_UINT32_T
                    127: #AC_TYPE_UINT64_T
                    128: #AC_TYPE_UINT8_T
                    129: 
                    130: # struct kevent のメンバ udata の型が互換性なく違う。
                    131: # NetBSD では intptr_t(整数) だが、OSX では void* (ポインタ) なので、
                    132: # 同一ソースコードでは回避できない。
                    133: # Linux(Ubuntu) はどっちもパスするので後ろの void * のほうが使われる。
                    134: # まあパスするんならどっちでもいいか。
                    135: AC_MSG_CHECKING(whether kevent.udata is intptr_t)
                    136: old_CXXFLAGS="${CXXFLAGS}"
                    137: CXXFLAGS="${CXXFLAGS} -Wall -Werror"
                    138: AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
                    139:        [
                    140:                #include "confdefs.h"
1.1.1.3   root      141:                #if defined(HAVE_SYS_TYPES_H)
                    142:                #include <sys/types.h>
                    143:                #endif
1.1       root      144:                #if defined(HAVE_SYS_EVENT_H)
                    145:                #include <sys/event.h>
                    146:                #endif
                    147:                #if defined(HAVE_KQUEUE_SYS_EVENT_H)
                    148:                #include <kqueue/sys/event.h>
                    149:                #endif
                    150:        ], [
                    151:                struct kevent kev;
                    152:                kev.udata = (intptr_t)0;
                    153:                (void)kev;
                    154:        ])],
                    155:        AC_MSG_RESULT([yes])
                    156:                AC_SUBST([KEVENT_UDATA_T], [intptr_t]),
                    157:        AC_MSG_RESULT([no]))
                    158: CXXFLAGS="${old_CXXFLAGS}"
                    159: 
                    160: AC_MSG_CHECKING(whether kevent.udata is void *)
                    161: old_CXXFLAGS="${CXXFLAGS}"
                    162: CXXFLAGS="${CXXFLAGS} -Wall -Werror"
                    163: AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
                    164:        [
                    165:                #include "confdefs.h"
1.1.1.3   root      166:                #if defined(HAVE_SYS_TYPES_H)
                    167:                #include <sys/types.h>
                    168:                #endif
1.1       root      169:                #if defined(HAVE_SYS_EVENT_H)
                    170:                #include <sys/event.h>
                    171:                #endif
                    172:                #if defined(HAVE_KQUEUE_SYS_EVENT_H)
                    173:                #include <kqueue/sys/event.h>
                    174:                #endif
                    175:        ], [
                    176:                struct kevent kev;
                    177:                kev.udata = (void *)0;
                    178:                (void)kev;
                    179:        ])],
                    180:        AC_MSG_RESULT([yes])
                    181:                AC_SUBST([KEVENT_UDATA_T], ['void *']),
                    182:        AC_MSG_RESULT([no]))
                    183: CXXFLAGS="${old_CXXFLAGS}"
                    184: 
                    185: if test -z "$KEVENT_UDATA_T" ; then
                    186:        AC_MSG_ERROR([kevent.udata is unknown type])
                    187: fi
                    188: 
                    189: AC_MSG_CHECKING(for __builtin_assume)
                    190: AC_TRY_COMPILE(,
                    191:        [
                    192:                __builtin_assume(1);
                    193:        ],
                    194:        AC_MSG_RESULT([yes])
                    195:                AC_DEFINE([HAVE___BUILTIN_ASSUME]),
                    196:        AC_MSG_RESULT([no]))
                    197: 
                    198: AC_MSG_CHECKING(for __builtin_bswap16)
                    199: AC_TRY_COMPILE(,
                    200:        [
                    201:                return __builtin_bswap16(0);
                    202:        ],
                    203:        AC_MSG_RESULT([yes])
                    204:                AC_DEFINE([HAVE___BUILTIN_BSWAP16]),
                    205:        AC_MSG_RESULT([no]))
                    206: 
                    207: AC_MSG_CHECKING(for __builtin_bswap32)
                    208: AC_TRY_COMPILE(,
                    209:        [
                    210:                return __builtin_bswap32(0);
                    211:        ],
                    212:        AC_MSG_RESULT([yes])
                    213:                AC_DEFINE([HAVE___BUILTIN_BSWAP32]),
                    214:        AC_MSG_RESULT([no]))
                    215: 
1.1.1.2   root      216: AC_MSG_CHECKING(for __builtin_bswap64)
                    217: AC_TRY_COMPILE(,
                    218:        [
                    219:                return __builtin_bswap64(0);
                    220:        ],
                    221:        AC_MSG_RESULT([yes])
                    222:                AC_DEFINE([HAVE___BUILTIN_BSWAP64]),
                    223:        AC_MSG_RESULT([no]))
                    224: 
1.1       root      225: AC_MSG_CHECKING(for __builtin_expect)
                    226: AC_TRY_COMPILE(,
                    227:        [
                    228:                if (__builtin_expect(1, 1)) return 0;
                    229:        ],
                    230:        AC_MSG_RESULT([yes])
                    231:                AC_DEFINE([HAVE___BUILTIN_EXPECT]),
                    232:        AC_MSG_RESULT([no]))
                    233: 
                    234: AC_MSG_CHECKING(for __builtin_unreachable)
                    235: AC_TRY_COMPILE(,
                    236:        [
                    237:                __builtin_unreachable();
                    238:        ],
                    239:        AC_MSG_RESULT([yes])
                    240:                AC_DEFINE([HAVE___BUILTIN_UNREACHABLE]),
                    241:        AC_MSG_RESULT([no]))
                    242: 
                    243: AC_MSG_CHECKING(for __attribute__((__fallthrough__)))
                    244: old_CXXFLAGS="${CXXFLAGS}"
                    245: CXXFLAGS="${CXXFLAGS} -Wall -Werror"
                    246: AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
                    247:        [], [
                    248:                extern int x;
                    249:                switch (x) {
                    250:                 case 0:
                    251:                        __attribute__((__fallthrough__));
                    252:                 case 1:
                    253:                        break;
                    254:                }
                    255:        ])],
                    256:        AC_MSG_RESULT([yes])
                    257:                AC_DEFINE([HAVE___ATTRIBUTE_FALLTHROUGH]),
                    258:        AC_MSG_RESULT([no]))
                    259: CXXFLAGS="${old_CXXFLAGS}"
                    260: 
                    261: dnl とりあえず __format__ までしか調べてないので、
                    262: dnl その中の __printf__ とかまで調べる必要ができたら直すこと。
                    263: AC_MSG_CHECKING(for __attribute__((__format__)))
                    264: old_CXXFLAGS="${CXXFLAGS}"
                    265: CXXFLAGS="${CXXFLAGS} -Wall -Werror"
                    266: AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
                    267:        [
                    268:                extern int f(const char *f, ...)
                    269:                        __attribute__((__format__(__printf__, 1, 2)));
                    270:        ], [
                    271:        ])],
                    272:        AC_MSG_RESULT([yes])
                    273:                AC_DEFINE([HAVE___ATTRIBUTE_FORMAT]),
                    274:        AC_MSG_RESULT([no]))
                    275: CXXFLAGS="${old_CXXFLAGS}"
                    276: 
                    277: AC_MSG_CHECKING(for __attribute__((no_sanitize)))
                    278: old_CXXFLAGS="${CXXFLAGS}"
                    279: CXXFLAGS="${CXXFLAGS} -Werror"
                    280: AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
                    281:        [
                    282:                __attribute__((no_sanitize("undefined")))
                    283:                int func() { return 0; }
                    284:        ], [
                    285:        ])],
                    286:        AC_MSG_RESULT([yes])
                    287:                AC_DEFINE([HAVE___ATTRIBUTE_NO_SANITIZE]),
                    288:        AC_MSG_RESULT([no]))
                    289: CXXFLAGS="${old_CXXFLAGS}"
                    290: 
                    291: 
                    292: AC_MSG_CHECKING(for __attribute__((__packed__)))
                    293: old_CXXFLAGS="${CXXFLAGS}"
                    294: CXXFLAGS="${CXXFLAGS} -Werror"
                    295: AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
                    296:        [], [
                    297:                struct x { char a; int b; } __attribute__((__packed__));
                    298:        ])],
                    299:        AC_MSG_RESULT([yes])
                    300:                AC_DEFINE([HAVE___ATTRIBUTE_PACKED]),
                    301:        AC_MSG_RESULT([no]))
                    302: CXXFLAGS="${old_CXXFLAGS}"
                    303: 
                    304: AC_MSG_CHECKING(for __attribute__((__unused__)))
                    305: old_CXXFLAGS="${CXXFLAGS}"
                    306: CXXFLAGS="${CXXFLAGS} -Wunused-variable -Werror"
                    307: AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
                    308:        [], [
                    309:                int a __attribute__((__unused__));
                    310:        ])],
                    311:        AC_MSG_RESULT([yes])
                    312:                AC_DEFINE([HAVE___ATTRIBUTE_UNUSED]),
                    313:        AC_MSG_RESULT([no]))
                    314: CXXFLAGS="${old_CXXFLAGS}"
                    315: 
                    316: # Checks for library functions.
                    317: #AC_FUNC_MALLOC
                    318: #AC_FUNC_MMAP
                    319: 
                    320: AC_MSG_CHECKING(for pthread_setname_np(name))
1.1.1.3   root      321: AC_TRY_COMPILE(
1.1       root      322:        [
1.1.1.3   root      323:                #include <pthread.h>
                    324:                #if defined(HAVE_PTHREAD_NP_H)
                    325:                #include <pthread_np.h>
                    326:                #endif
                    327:        ], [
1.1       root      328:                pthread_setname_np("");
                    329:        ],
                    330:        AC_MSG_RESULT([yes])
1.1.1.3   root      331:                AC_DEFINE([HAVE_PTHREAD_SETNAME_NP_name]),
1.1       root      332:        AC_MSG_RESULT([no]))
                    333: 
                    334: AC_MSG_CHECKING(for pthread_setname_np(thread, name))
1.1.1.3   root      335: AC_TRY_COMPILE(
1.1       root      336:        [
1.1.1.3   root      337:                #include <pthread.h>
                    338:                #if defined(HAVE_PTHREAD_NP_H)
                    339:                #include <pthread_np.h>
                    340:                #endif
                    341:        ], [
1.1       root      342:                pthread_setname_np(pthread_self(), "");
                    343:        ],
                    344:        AC_MSG_RESULT([yes])
1.1.1.3   root      345:                AC_DEFINE([HAVE_PTHREAD_SETNAME_NP_th_name]),
1.1       root      346:        AC_MSG_RESULT([no]))
                    347: 
                    348: AC_MSG_CHECKING(for pthread_setname_np(thread, name, arg))
1.1.1.3   root      349: AC_TRY_COMPILE(
1.1       root      350:        [
1.1.1.3   root      351:                #include <pthread.h>
                    352:                #if defined(HAVE_PTHREAD_NP_H)
                    353:                #include <pthread_np.h>
                    354:                #endif
                    355:        ], [
1.1       root      356:                pthread_setname_np(pthread_self(), "", (void*)0);
                    357:        ],
                    358:        AC_MSG_RESULT([yes])
1.1.1.3   root      359:                AC_DEFINE([HAVE_PTHREAD_SETNAME_NP_th_name_arg]),
                    360:        AC_MSG_RESULT([no]))
                    361: 
                    362: AC_MSG_CHECKING(for pthread_set_name_np(thread, name))
                    363: AC_TRY_COMPILE(
                    364:        [
                    365:                #include <pthread.h>
                    366:                #if defined(HAVE_PTHREAD_NP_H)
                    367:                #include <pthread_np.h>
                    368:                #endif
                    369:        ], [
                    370:                pthread_set_name_np(pthread_self(), "");
                    371:        ],
                    372:        AC_MSG_RESULT([yes])
                    373:                AC_DEFINE([HAVE_PTHREAD_SET_NAME_NP_th_name]),
1.1       root      374:        AC_MSG_RESULT([no]))
                    375: 
1.1.1.6   root      376: AC_MSG_CHECKING(for iconv const)
                    377: AC_TRY_COMPILE(
                    378:        [
                    379:                #include <iconv.h>
                    380:        ], [
                    381:                const char **a;
                    382:                iconv(0, a, 0, 0, 0);
                    383:        ],
                    384:        AC_MSG_RESULT([yes])
                    385:                AC_DEFINE([HAVE_ICONV_CONST]),
                    386:        AC_MSG_RESULT([no]))
                    387: 
1.1.1.8 ! root      388: #
        !           389: # Network
        !           390: #
        !           391: AC_MSG_CHECKING(for AF_PACKET)
        !           392: AC_TRY_COMPILE(
        !           393:        [
        !           394:                #include <sys/socket.h>
        !           395:        ], [
        !           396:                AF_PACKET;
        !           397:        ],
        !           398:        AC_MSG_RESULT([yes])
        !           399:                AC_DEFINE([HAVE_HOSTNET_AFPACKET])
        !           400:                AC_SUBST([HOSTNET_AFPACKET], [yes]),
        !           401:        AC_MSG_RESULT([no]))
        !           402: 
        !           403: AC_MSG_CHECKING(for tap(4))
1.1.1.6   root      404: case "${host_os}" in
                    405:  linux*)
                    406:        if test x"$ac_cv_header_linux_if_tun_h" = xyes; then
1.1.1.8 ! root      407:                netdriver_tap=yes
1.1.1.6   root      408:        fi
                    409:        ;;
                    410:  openbsd*)
                    411:        # OpenBSD has no <net/if_tap.h> but supports tap(4).
1.1.1.8 ! root      412:        netdriver_tap=yes
1.1.1.6   root      413:        ;;
1.1.1.8 ! root      414:  *)
1.1.1.6   root      415:        if test x"$ac_cv_header_net_if_tap_h" = xyes; then
1.1.1.8 ! root      416:                netdriver_tap=yes
1.1.1.6   root      417:        fi
1.1.1.8 ! root      418:        ;;
        !           419: esac
        !           420: if test x"$netdriver_tap" = xyes; then
        !           421:        AC_MSG_RESULT([yes])
        !           422:        AC_DEFINE([HAVE_HOSTNET_TAP])
        !           423:        AC_SUBST([HOSTNET_TAP], [yes])
        !           424: else
        !           425:        AC_MSG_RESULT([no])
        !           426: fi
        !           427: 
        !           428: AC_MSG_CHECKING(for bpf(4))
        !           429: if test x"$ac_cv_header_net_bpf_h" = xyes; then
        !           430:        AC_MSG_RESULT([yes])
        !           431:        AC_DEFINE([HAVE_HOSTNET_BPF])
        !           432:        AC_SUBST([HOSTNET_BPF], [yes])
        !           433: else
        !           434:        AC_MSG_RESULT([no])
1.1       root      435: fi
                    436: 
                    437: # libbsd on Linux
1.1.1.5   root      438: AC_CHECK_LIB(c, getprogname, ,)
1.1       root      439: AC_CHECK_LIB(bsd, getprogname,
1.1.1.6   root      440:        LIBS="${LIBS} -lbsd"
                    441: )
1.1.1.5   root      442: # なければ停止する
                    443: AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
                    444:        [
                    445:                #include <stdlib.h>
                    446:                #include "confdefs.h"
                    447:                #if defined(HAVE_BSD_BSD_H)
                    448:                #include <bsd/bsd.h>
                    449:                #endif
                    450:        ], [
                    451:                getprogname()
                    452:        ])],
                    453:        # nothing to do on success
                    454:        , [AC_MSG_ERROR([*** getprogname is not found.
1.1.1.7   root      455: *** If you use Ubuntu, sudo apt install libbsd-dev])
1.1.1.5   root      456:        ]
                    457: )
1.1       root      458: 
1.1.1.2   root      459: # libedit (editline)
                    460: if test x"$ac_cv_header_histedit_h" = xyes; then
1.1.1.6   root      461:        LIBS="${LIBS} -ledit -ltermcap"
1.1.1.2   root      462: fi
                    463: 
1.1       root      464: # libkqueue on Linux
                    465: AC_CHECK_LIB(kqueue, kqueue,
1.1.1.6   root      466:        LIBS="${LIBS} -lkqueue"
                    467: )
1.1       root      468: 
1.1.1.5   root      469: AC_CHECK_LIB(z, gzclose,
1.1.1.6   root      470:        LIBS="${LIBS} -lz",
1.1.1.5   root      471:        [AC_MSG_ERROR([*** zlib is not found.
1.1.1.7   root      472: *** If use use Ubuntu, sudo apt install zlib1g-dev])]
1.1.1.5   root      473: )
                    474: 
1.1       root      475: # wxWidgets
                    476: AC_MSG_CHECKING(for wx-config)
1.1.1.3   root      477: wxconfig_paths="${WX_CONFIG} wx-config-3.0 wx-config"
1.1       root      478: wxconfig=""
1.1.1.3   root      479: for c in ${wxconfig_paths}; do
1.1       root      480:        ver=`$c --version 2>&1 | cut -f 1 -d .`
                    481:        if test "$ver" = "3"; then
                    482:                wxconfig=$c
                    483:                break
                    484:        fi
                    485: done
                    486: if test -z "$wxconfig"; then
1.1.1.7   root      487:        AC_MSG_ERROR([*** wxWidgets-3.0 not found in ${wxconfig_paths}
                    488: *** If you use pkgsrc, install x11/wxGTK30.
                    489: *** If you use Ubuntu, sudo apt install libwxgtk3.0-gtk3-dev])
1.1       root      490: else
                    491:        AC_MSG_RESULT([$wxconfig])
                    492: 
                    493:        AC_MSG_CHECKING(for wxWidgets version)
                    494:        wxversion=`$wxconfig --version`
                    495:        AC_MSG_RESULT([$wxversion])
                    496: 
                    497:        wxcppflags=`$wxconfig --cppflags`
                    498:        wxlibs=`$wxconfig --libs`
                    499: 
1.1.1.6   root      500:        case "${host_os}" in
                    501:         netbsd*)
                    502:                # rpath。どうしたもんだかこれ
1.1       root      503:                wxlibs=[`echo $wxlibs | sed -e 's/-L\([^ ]*\) /-L\1 -Wl,-R,\1 /'`]
1.1.1.6   root      504:                ;;
1.1       root      505: 
1.1.1.6   root      506:         darwin*)
                    507:                # XXX -framework AudioToolbox が指定されているとリンカがこけるorz
1.1       root      508:                wxlibs=[`echo $wxlibs | sed -e 's/-framework AudioToolbox//'`]
1.1.1.6   root      509:                ;;
                    510:        esac
1.1       root      511: 
                    512:        AC_SUBST([WXWIDGETS_CPPFLAGS], [$wxcppflags])
                    513:        AC_SUBST([WXWIDGETS_LIBS], [$wxlibs])
                    514: fi
                    515: 
1.1.1.5   root      516: # gettext
                    517: AC_CHECK_TOOL([MSGFMT], [msgfmt], [:])
                    518: if test $MSGFMT = [:]; then
                    519:        AC_MSG_ERROR([*** msgfmt not found.
1.1.1.7   root      520: *** If you use pkgsrc, install devel/gettext-tools.
                    521: *** If you use Ubuntu, sudo apt install gettext])
1.1.1.5   root      522: fi
                    523: 
1.1       root      524: AC_CONFIG_FILES([Makefile.cfg
                    525:        host/Makefile
                    526:        wx/Makefile
                    527:        util/mkcgrom/Makefile
                    528:        util/viewcgrom/Makefile
                    529: ])
1.1.1.2   root      530: AC_CONFIG_HEADERS([config-nono.h])
1.1       root      531: AC_OUTPUT

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.