Annotation of nono/configure.ac, revision 1.1.1.7

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       root      388: # Select host network driver.
                    389: AC_MSG_CHECKING(for suitable host network driver)
1.1.1.6   root      390: case "${host_os}" in
                    391:  linux*)
                    392:        if test x"$ac_cv_header_linux_if_tun_h" = xyes; then
                    393:                netdriver=tap
                    394:        fi
                    395:        ;;
                    396:  openbsd*)
                    397:        # OpenBSD has no <net/if_tap.h> but supports tap(4).
1.1       root      398:        netdriver=tap
1.1.1.6   root      399:        ;;
                    400: esac
                    401: if test -z "$netdriver"; then
                    402:        if test x"$ac_cv_header_net_if_tap_h" = xyes; then
                    403:                netdriver=tap
                    404:        elif test x"$ac_cv_header_net_bpf_h" = xyes; then
                    405:                netdriver=bpf
                    406:        else
                    407:                netdriver=none
                    408:        fi
1.1       root      409: fi
                    410: AC_MSG_RESULT([$netdriver])
                    411: AC_SUBST([NETDRIVER], [$netdriver])
                    412: 
                    413: # libbsd on Linux
1.1.1.5   root      414: AC_CHECK_LIB(c, getprogname, ,)
1.1       root      415: AC_CHECK_LIB(bsd, getprogname,
1.1.1.6   root      416:        LIBS="${LIBS} -lbsd"
                    417: )
1.1.1.5   root      418: # なければ停止する
                    419: AC_COMPILE_IFELSE([AC_LANG_PROGRAM(
                    420:        [
                    421:                #include <stdlib.h>
                    422:                #include "confdefs.h"
                    423:                #if defined(HAVE_BSD_BSD_H)
                    424:                #include <bsd/bsd.h>
                    425:                #endif
                    426:        ], [
                    427:                getprogname()
                    428:        ])],
                    429:        # nothing to do on success
                    430:        , [AC_MSG_ERROR([*** getprogname is not found.
1.1.1.7 ! root      431: *** If you use Ubuntu, sudo apt install libbsd-dev])
1.1.1.5   root      432:        ]
                    433: )
1.1       root      434: 
1.1.1.2   root      435: # libedit (editline)
                    436: if test x"$ac_cv_header_histedit_h" = xyes; then
1.1.1.6   root      437:        LIBS="${LIBS} -ledit -ltermcap"
1.1.1.2   root      438: fi
                    439: 
1.1       root      440: # libkqueue on Linux
                    441: AC_CHECK_LIB(kqueue, kqueue,
1.1.1.6   root      442:        LIBS="${LIBS} -lkqueue"
                    443: )
1.1       root      444: 
1.1.1.5   root      445: AC_CHECK_LIB(z, gzclose,
1.1.1.6   root      446:        LIBS="${LIBS} -lz",
1.1.1.5   root      447:        [AC_MSG_ERROR([*** zlib is not found.
1.1.1.7 ! root      448: *** If use use Ubuntu, sudo apt install zlib1g-dev])]
1.1.1.5   root      449: )
                    450: 
1.1       root      451: # wxWidgets
                    452: AC_MSG_CHECKING(for wx-config)
1.1.1.3   root      453: wxconfig_paths="${WX_CONFIG} wx-config-3.0 wx-config"
1.1       root      454: wxconfig=""
1.1.1.3   root      455: for c in ${wxconfig_paths}; do
1.1       root      456:        ver=`$c --version 2>&1 | cut -f 1 -d .`
                    457:        if test "$ver" = "3"; then
                    458:                wxconfig=$c
                    459:                break
                    460:        fi
                    461: done
                    462: if test -z "$wxconfig"; then
1.1.1.7 ! root      463:        AC_MSG_ERROR([*** wxWidgets-3.0 not found in ${wxconfig_paths}
        !           464: *** If you use pkgsrc, install x11/wxGTK30.
        !           465: *** If you use Ubuntu, sudo apt install libwxgtk3.0-gtk3-dev])
1.1       root      466: else
                    467:        AC_MSG_RESULT([$wxconfig])
                    468: 
                    469:        AC_MSG_CHECKING(for wxWidgets version)
                    470:        wxversion=`$wxconfig --version`
                    471:        AC_MSG_RESULT([$wxversion])
                    472: 
                    473:        wxcppflags=`$wxconfig --cppflags`
                    474:        wxlibs=`$wxconfig --libs`
                    475: 
1.1.1.6   root      476:        case "${host_os}" in
                    477:         netbsd*)
                    478:                # rpath。どうしたもんだかこれ
1.1       root      479:                wxlibs=[`echo $wxlibs | sed -e 's/-L\([^ ]*\) /-L\1 -Wl,-R,\1 /'`]
1.1.1.6   root      480:                ;;
1.1       root      481: 
1.1.1.6   root      482:         darwin*)
                    483:                # XXX -framework AudioToolbox が指定されているとリンカがこけるorz
1.1       root      484:                wxlibs=[`echo $wxlibs | sed -e 's/-framework AudioToolbox//'`]
1.1.1.6   root      485:                ;;
                    486:        esac
1.1       root      487: 
                    488:        AC_SUBST([WXWIDGETS_CPPFLAGS], [$wxcppflags])
                    489:        AC_SUBST([WXWIDGETS_LIBS], [$wxlibs])
                    490: fi
                    491: 
1.1.1.5   root      492: # gettext
                    493: AC_CHECK_TOOL([MSGFMT], [msgfmt], [:])
                    494: if test $MSGFMT = [:]; then
                    495:        AC_MSG_ERROR([*** msgfmt not found.
1.1.1.7 ! root      496: *** If you use pkgsrc, install devel/gettext-tools.
        !           497: *** If you use Ubuntu, sudo apt install gettext])
1.1.1.5   root      498: fi
                    499: 
1.1       root      500: AC_CONFIG_FILES([Makefile.cfg
                    501:        host/Makefile
                    502:        wx/Makefile
                    503:        util/mkcgrom/Makefile
                    504:        util/viewcgrom/Makefile
                    505: ])
1.1.1.2   root      506: AC_CONFIG_HEADERS([config-nono.h])
1.1       root      507: AC_OUTPUT

unix.superglobalmegacorp.com

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