Annotation of libwww/configure.in, revision 1.32

1.1       frystyk     1: dnl Process this file with Autoconf to create configure
                      2: dnl (c) COPYRIGHT MIT 1995.
                      3: dnl Please first read the full copyright statement in the file COPYRIGH.
                      4: 
                      5: AC_PREREQ(2.2)
                      6: AC_INIT(Library)
                      7: AC_REVISION
1.30      frystyk     8: AM_CONFIG_HEADER(config.h)
1.5       frystyk     9: AC_CONFIG_AUX_DIR(config)
1.1       frystyk    10: 
                     11: dnl Cheks for platform information
                     12: AC_CANONICAL_SYSTEM
                     13: 
1.20      frystyk    14: dnl Initializing Automake
1.22      frystyk    15: AM_INIT_AUTOMAKE
1.20      frystyk    16: AC_PROG_MAKE_SET
                     17: AC_ARG_PROGRAM
                     18: 
1.1       frystyk    19: dnl Variables for Automake.
1.3       frystyk    20: PACKAGE=w3c-libwww
1.1       frystyk    21: AC_SUBST(PACKAGE)
1.28      frystyk    22: AC_DEFINE_UNQUOTED(W3C_PACKAGE, "$PACKAGE")
                     23: 
1.29      frystyk    24: VERSION=5.1
1.1       frystyk    25: AC_SUBST(VERSION)
                     26: AC_DEFINE_UNQUOTED(W3C_VERSION, "$VERSION")
                     27: 
                     28: AC_PROG_CC
                     29: AC_PROG_RANLIB
                     30: 
                     31: dnl Remove next line and you get an error -- autoconf
                     32: dnl should deal with this automatically.
                     33: AC_ISC_POSIX
                     34: AC_PATH_X
1.7       frystyk    35: dnl AC_PATH_XTRA       Causes problems...
1.1       frystyk    36: 
1.28      frystyk    37: dnl Default location of icons
                     38: icondir="/usr/local/share/w3c-icons"
                     39: AC_SUBST(icondir)
                     40: AC_DEFINE_UNQUOTED(W3C_ICONS, "$icondir")
                     41: 
                     42: dnl Default location of TcL library and include files
                     43: tclinclude="/usr/local/include"
                     44: AC_SUBST(tclinclude)
                     45: libtcl="/usr/local/lib/libtcl7.5.a"
                     46: AC_SUBST(libtcl)
                     47: AC_DEFINE_UNQUOTED(W3C_TCL, "$libtcl")
                     48: 
1.1       frystyk    49: dnl Various compiler directives
1.28      frystyk    50: AC_MSG_CHECKING(whether to define additional compiler specific flags)
1.5       frystyk    51: case "$target" in
                     52:     alpha-dec*)
                     53:        if test "$CC" = "cc"; then
                     54:          CFLAGS="$CFLAGS -std1"
1.28      frystyk    55:          AC_MSG_RESULT(Digital Unix's cc)
1.14      frystyk    56:        fi
                     57:        ;;
                     58:     hp*)
                     59:        if test "$CC" = "cc"; then
                     60:          CFLAGS="$CFLAGS -Aa -D_HPUX_SOURCE"
1.28      frystyk    61:          AC_MSG_RESULT(HT-UX's cc)
1.5       frystyk    62:        fi
                     63:        ;;
1.28      frystyk    64:     *)
                     65:        AC_MSG_RESULT(no)
                     66:        ;;
1.5       frystyk    67: esac
1.1       frystyk    68: 
1.31      frystyk    69: dnl Checks for configuration arguments
                     70: 
                     71: AC_MSG_CHECKING(whether to support direct WAIS access - a bit rusty!)
                     72: AC_ARG_WITH(wais,
                     73: [  --with-wais[=PATH]      Compile with support for direct WAIS access.],
                     74: [ case "$withval" in
                     75:   no)
                     76:     AC_MSG_RESULT(no)
                     77:     HTWAIS=""
                     78:     ;;
                     79:   *)
                     80:     AC_MSG_RESULT(yes)
                     81:     if test "x$withval" = "xyes"; then
                     82:       withval="-lclient.a -lwais.a"
                     83:     fi
                     84:     LIBS="$withval $LIBS"
                     85:     AC_TRY_LINK([],
                     86:                 [ interpret_message(); ],
                     87:                [],
                     88:                [ AC_MSG_ERROR(Could not find the $withval library.  You must first install WAIS.) ])
                     89:     HTWAIS="HTWAIS.o"
                     90:     ;;
                     91:   esac ],
                     92:   AC_MSG_RESULT(no)
1.18      frystyk    93:   HTWAIS=""
1.31      frystyk    94: )
1.1       frystyk    95: AC_SUBST(HTWAIS)
                     96: 
1.31      frystyk    97: AC_MSG_CHECKING(whether to support zlib compress/decompress)
                     98: AC_ARG_WITH(zlib,
                     99: [  --with-zlib[=PATH]      Compile with zlib compress/decompress support.],
                    100: [ case "$withval" in
                    101:   no)
                    102:     AC_MSG_RESULT(no)
                    103:     ;;
                    104:   *)
                    105:     AC_MSG_RESULT(yes)
                    106:     if test "x$withval" = "xyes"; then
                    107:       withval="-lz"
                    108:     fi
                    109:     LIBS="$withval $LIBS"
                    110:     AC_DEFINE(ZLIB)
                    111:     AC_TRY_LINK([],
                    112:                 [ zlibVersion(); ],
                    113:                [],
                    114:                [ AC_MSG_ERROR(Could not find the $withval library.  You must first install zlib.) ])
                    115:     ;;
                    116:   esac ],
                    117:   AC_MSG_RESULT(no)
                    118: )
                    119: 
1.26      frystyk   120: # borrowed from SSH - thanks!
                    121: AC_MSG_CHECKING(whether to support SOCKS)
                    122: AC_ARG_WITH(socks,
                    123: [  --with-socks            Compile with SOCKS firewall traversal support.],
                    124: [ case "$withval" in
                    125:   no)
                    126:     AC_MSG_RESULT(no)
                    127:     ;;
                    128:   yes)
                    129:     AC_MSG_RESULT(yes)
                    130:     AC_CHECK_LIB(socks5, SOCKSconnect, [
                    131:            socks=5
                    132:            LIBS="-lsocks5 $LIBS"], [
                    133:        AC_CHECK_LIB(socks, Rconnect, [
                    134:            socks=4
                    135:            LIBS="-lsocks $LIBS"], [
                    136:                AC_MSG_ERROR(Could not find socks library.  You must first install socks.) ] ) ] )
                    137:     ;;
                    138:   esac ],
                    139:   AC_MSG_RESULT(no)
1.1       frystyk   140: )
                    141: 
1.26      frystyk   142: if test "x$socks" = "x"; then
                    143:        AC_MSG_CHECKING(whether to support SOCKS5)
                    144:        AC_ARG_WITH(socks5,
                    145:        [  --with-socks5[=PATH]    Compile with SOCKS5 firewall traversal support.],
                    146:        [ case "$withval" in
                    147:          no)
                    148:            AC_MSG_RESULT(no)
                    149:            ;;
                    150:          *)
                    151:            AC_MSG_RESULT(yes)
                    152:            socks=5
                    153:            if test "x$withval" = "xyes"; then
                    154:              withval="-lsocks5"
                    155:            fi
                    156:            LIBS="$withval $LIBS"
                    157:            AC_TRY_LINK([],
                    158:                        [ SOCKSconnect(); ],
                    159:                        [],
                    160:                        [ AC_MSG_ERROR(Could not find the $withval library.  You must first install socks5.) ])
                    161:            ;;
                    162:          esac ],
                    163:          AC_MSG_RESULT(no)
                    164:        )
                    165: fi
                    166: 
                    167: if test "x$socks" = "x"; then
                    168:        AC_MSG_CHECKING(whether to support SOCKS4)
                    169:        AC_ARG_WITH(socks4,
                    170:        [  --with-socks4[=PATH]    Compile with SOCKS4 firewall traversal support.],
                    171:        [ case "$withval" in
                    172:          no)
                    173:            AC_MSG_RESULT(no)
                    174:            ;;
                    175:          *)
                    176:            AC_MSG_RESULT(yes)
                    177:            socks=4
                    178:            if test "x$withval" = "xyes"; then
                    179:              withval="-lsocks"
                    180:            fi
                    181:            LIBS="$withval $LIBS"
                    182:            AC_TRY_LINK([],
                    183:                        [ Rconnect(); ],
                    184:                        [],
                    185:                        [ AC_MSG_ERROR(Could not find the $withval library.  You must first install socks.) ])
                    186:            ;;
                    187:          esac ],
                    188:          AC_MSG_RESULT(no)
                    189:        )
                    190: fi
                    191: 
                    192: if test "x$socks" = "x4"; then
                    193:     AC_DEFINE(SOCKS)
                    194:     AC_DEFINE(SOCKS4)
                    195: fi
                    196: 
                    197: if test "x$socks" = "x5"; then
                    198:     AC_DEFINE(SOCKS)
                    199:     AC_DEFINE(SOCKS5)
                    200: fi
                    201: 
1.28      frystyk   202: AC_MSG_CHECKING(whether to use internal signal handlers)
                    203: AC_ARG_ENABLE(signals, [  --enable-signals        use internal libwww signal handler.],
                    204: [ case "${enableval}" in
                    205:   no)
                    206:     AC_MSG_RESULT(no)
                    207:     ;;
                    208:   *)
                    209:     AC_MSG_RESULT(yes)
                    210:     AC_DEFINE(WWWLIB_SIG)
                    211:     ;;
                    212:   esac ],
                    213:   AC_MSG_RESULT(no)
                    214: )
1.26      frystyk   215: 
1.28      frystyk   216: AC_MSG_CHECKING(whether to disable Nagle's algorithm)
                    217: AC_ARG_ENABLE(nagle,
1.30      frystyk   218: [  --disable-nagle         Turning off Nagle's algorithm.],
1.28      frystyk   219: [ case "${enableval}" in
                    220:   no)
                    221:     AC_MSG_RESULT(yes)
                    222:     AC_DEFINE(HT_NO_NAGLE)
                    223:     ;;
                    224:   *) 
                    225:     AC_MSG_RESULT(no)
                    226:     ;;
                    227:   esac ],
1.29      frystyk   228:   AC_MSG_RESULT(yes)
                    229:   AC_DEFINE(HT_NO_NAGLE)
1.28      frystyk   230: )
                    231: 
1.30      frystyk   232: AC_MSG_CHECKING(whether to disable HTTP/1.1 pipelining)
                    233: AC_ARG_ENABLE(pipelining,
                    234: [  --disable-pipelining    Turning off HTTP/1.1 Pipelining.],
                    235: [ case "${enableval}" in
                    236:   no)
                    237:     AC_MSG_RESULT(yes)
                    238:     AC_DEFINE(HT_NO_PIPELINING)
                    239:     ;;
                    240:   *) 
                    241:     AC_MSG_RESULT(no)
                    242:     ;;
                    243:   esac ],
                    244:   AC_MSG_RESULT(no)
                    245: )
                    246: 
1.28      frystyk   247: AC_MSG_CHECKING(whether to define _REENTRANT)
1.26      frystyk   248: AC_ARG_ENABLE(reentrant, [  --enable-reentrant      define _REENTRANT to enable reentrant system calls],
1.28      frystyk   249: [ case "${enableval}" in
                    250:   no)
                    251:     AC_MSG_RESULT(no)
                    252:     ;;
                    253:   *) 
                    254:     AC_MSG_RESULT(yes)
                    255:     AC_DEFINE(HT_REENTRANT) [CFLAGS="$CFLAGS -D_REENTRANT"]
                    256:     ;;
                    257:   esac ],
                    258:   AC_MSG_RESULT(no)
                    259: )
1.1       frystyk   260: 
1.28      frystyk   261: AC_MSG_CHECKING(whether to define _POSIX_SOURCE)
1.4       frystyk   262: AC_ARG_ENABLE(posix, [  --enable-posix          define _POSIX_SOURCE],
1.28      frystyk   263: [ case "${enableval}" in
                    264:   no)
                    265:     AC_MSG_RESULT(no)
                    266:     ;;
                    267:   *) 
                    268:     AC_MSG_RESULT(yes)
                    269:     AC_DEFINE(_POSIX_SOURCE) [CFLAGS="$CFLAGS -D_POSIX_SOURCE"]
                    270:     ;;
                    271:   esac ],
                    272:   AC_MSG_RESULT(no)
                    273: )
1.4       frystyk   274: 
1.26      frystyk   275: AC_ARG_ENABLE(cyrillic, [  --enable-cyrillic       include support for Cyrillic in line mode browser],
                    276:   AC_DEFINE(CYRILLIC)
                    277:   A_STDIO="a_stdio.o", A_STDIO="")
                    278: AC_SUBST(A_STDIO)
1.4       frystyk   279: 
1.1       frystyk   280: dnl Checks for programs.
                    281: AC_PROG_INSTALL
                    282: AC_PROG_RANLIB
                    283: 
                    284: AC_CHECK_PROGS(have_telnet, telnet)
                    285: if test -n "$have_telnet" ; then
                    286:   AC_DEFINE_UNQUOTED(TELNET_PROGRAM, "$have_telnet")
                    287: fi
                    288: AC_CHECK_PROGS(have_rlogin, rlogin)
                    289: if test -n "$have_rlogin" ; then
                    290:   AC_DEFINE_UNQUOTED(RLOGIN_PROGRAM, "$have_rlogin")
                    291: fi
                    292: AC_CHECK_PROGS(have_tn3270, tn3270 x3270)
                    293: if test -n "$have_tn3270" ; then
                    294:   AC_DEFINE_UNQUOTED(TN3270_PROGRAM, "$have_tn3270")
                    295: fi
                    296: 
                    297: AC_PATH_PROG(RM, rm, rm)
                    298: AC_PATH_PROG(AR, ar, ar)
                    299: AC_PATH_PROG(MKDIR, mkdir, mkdir)
                    300: AC_PATH_PROG(CHMOD, chmod, chmod)
                    301: AC_PATH_PROG(CP, cp, cp)
                    302: AC_PATH_PROG(TAR, tar, tar)
                    303: AC_PATH_PROG(CVS, cvs, cvs)
                    304: AC_PATH_PROG(SED, sed, sed)
                    305: AC_PATH_PROGS(COMPRESS, gzip compress, compress)
                    306: AC_PROG_LN_S
                    307: 
                    308: dnl One remaining platform-specific difference in the library is the
                    309: dnl default postscript and image viewers: On the NeXT they are "open,"
                    310: dnl on other platforms they are ghostview or xv.  We should decide
                    311: dnl how to handle these things; perhaps the following lines would be
                    312: dnl useful:
                    313: dnl AC_PATH_PROGS(postscript_viewer, open ghostview, ghostview)
                    314: dnl AC_DEFINE_UNQUOTED(PRESENT_POSTSCRIPT, "$postscript_viewer %s")
                    315: dnl AC_PATH_PROGS(image_viewer, open xv, xv)
                    316: dnl AC_DEFINE_UNQUOTED(PRESENT_IMAGE, "$image_viewer %s")
                    317: 
                    318: dnl Checks for misc files
                    319: dnl AC_FILE_RESOLV_CONF
1.5       frystyk   320: AC_PATH_PROG(have_resolv_conf, resolv.conf, , /etc, /usr/etc)
                    321: if test -n "$have_resolv_conf" ; then
                    322:   AC_DEFINE_UNQUOTED(RESOLV_CONF, "$have_resolv_conf")
                    323: fi
1.22      frystyk   324: 
1.1       frystyk   325: dnl Checks for libraries:
1.7       frystyk   326: AC_CHECK_LIB(ICE, IceConnectionNumber)
                    327: AC_CHECK_LIB(socket, socket)
                    328: AC_CHECK_LIB(inet, connect)
                    329: AC_CHECK_LIB(nsl, t_accept)
1.20      frystyk   330: AC_CHECK_LIB(dl, dlopen)
1.1       frystyk   331: 
                    332: dnl Checks for header files:
                    333: AC_CHECK_HEADERS(stdio.h)
                    334: AC_CHECK_HEADERS(sys/types.h types.h)
                    335: AC_CHECK_HEADERS(sys/unistd.h unistd.h)
                    336: AC_CHECK_HEADERS(sys/fcntl.h fcntl.h)
                    337: AC_CHECK_HEADERS(sys/limits.h limits.h)
                    338: AC_CHECK_HEADERS(sys/stat.h stat.h)
                    339: AC_CHECK_HEADERS(sys/file.h)
                    340: AC_CHECK_HEADERS(sys/ioctl.h)
                    341: AC_CHECK_HEADERS(sys/time.h time.h)
                    342: AC_CHECK_HEADERS(sys/systeminfo.h)
                    343: AC_CHECK_HEADERS(string.h strings.h)
                    344: AC_CHECK_HEADERS(syslog.h)
                    345: AC_CHECK_HEADERS(sys/socket.h socket.h)
                    346: AC_CHECK_HEADERS(appkit/appkit.h appkit.h)
1.28      frystyk   347: AC_CHECK_HEADERS(netinet/tcp.h tcp.h)
1.1       frystyk   348: AC_CHECK_HEADERS(netinet/in.h in.h)
                    349: AC_CHECK_HEADERS(dn.h)
                    350: AC_CHECK_HEADERS(sys/ipc.h)
                    351: AC_CHECK_HEADERS(net/errno.h sys/errno.h errno.h)
                    352: AC_CHECK_HEADERS(pwd.h)
                    353: AC_CHECK_HEADERS(grp.h)
                    354: AC_CHECK_HEADERS(arpa/inet.h inet.h)
                    355: AC_CHECK_HEADERS(netdb.h)
                    356: AC_CHECK_HEADERS(manifest.h)
                    357: AC_CHECK_HEADERS(bsdtypes.h)
                    358: AC_CHECK_HEADERS(stdefs.h)
                    359: AC_CHECK_HEADERS(bsdtime.h)
                    360: AC_CHECK_HEADERS(sys/select.h select.h)
                    361: AC_CHECK_HEADERS(dnetdb.h)
                    362: AC_CHECK_HEADERS(libc.h)
                    363: AC_CHECK_HEADERS(stdlib.h)
                    364: AC_CHECK_HEADERS(malloc.h)
                    365: AC_CHECK_HEADERS(memory.h)
                    366: AC_CHECK_HEADERS(unixlib.h)
                    367: AC_CHECK_HEADERS(ctype.h)
                    368: AC_CHECK_HEADERS(cursesX.h curses.h)
                    369: AC_CHECK_HEADERS(sys/resource.h resource.h)
                    370: AC_HEADER_DIRENT
                    371: AC_CHECK_HEADERS(dir.h direct.h) dnl AC_HEADER_DIRENT only checks for some..
                    372: AC_HEADER_STDC
                    373: AC_HEADER_SYS_WAIT
                    374: AC_HEADER_TIME
                    375: AC_HEADER_STAT
                    376: 
                    377: dnl Checks for typedefs, structures, and compiler characteristics:
                    378: AC_TYPE_UID_T
1.5       frystyk   379: AC_TYPE_PID_T
1.1       frystyk   380: AC_TYPE_GETGROUPS
                    381: AC_TYPE_MODE_T
                    382: AC_TYPE_SIZE_T
                    383: AC_CHECK_TYPE(BOOLEAN, char)
                    384: AC_CHECK_TYPE(u_char, unsigned char)
                    385: AC_CHECK_TYPE(u_short, unsigned short)
                    386: AC_CHECK_TYPE(u_long, unsigned long)
1.6       frystyk   387: AC_CHECK_SIZEOF(int)
                    388: AC_CHECK_SIZEOF(long)
1.1       frystyk   389: AC_C_CONST
                    390: AC_C_BIGENDIAN
                    391: AC_C_CHAR_UNSIGNED
                    392: AC_STRUCT_TM
                    393: AC_STRUCT_GMTOFF
                    394: AC_STRUCT_TIMEZONE
                    395: AC_STRUCT_WINSIZE
                    396: AC_HEADER_TIME
                    397: 
                    398: dnl Other types that aren't checked for, but maybe should be:
1.5       frystyk   399: dnl AC_TYPE_OFF_T AC_STRUCT_ST_RDEV 
1.1       frystyk   400: 
                    401: dnl Checks for library functions:
                    402: AC_TYPE_SIGNAL
                    403: AC_FUNC_VPRINTF
                    404: AC_FUNC_STRFTIME
                    405: AC_CHECK_FUNCS(getcwd gethostname getdomainname getwd mktime timegm \
                    406:                select socket strerror strtol opendir getpid strchr memcpy \
1.15      frystyk   407:                getlogin getpass fcntl readdir sysinfo ioctl chdir tempnam)
1.1       frystyk   408: AC_CHECK_FUNC(unlink, , AC_CHECK_FUNC(remove, AC_DEFINE(unlink, remove)))
                    409: 
                    410: dnl Checks for external globals.
                    411: dnl AC_CHECK_EXTERNS(socket_errno sys_errlist sys_nerr)
                    412: 
                    413: dnl This is the standard UNIX value
                    414: AC_DEFINE(CACHE_FILE_PREFIX, "/usr/wsrc/")
                    415: 
                    416: dnl THINGS TO CONSIDER
                    417: dnl ******************
                    418: AC_DEFINE(TTY_IS_SELECTABLE)
                    419: 
                    420: dnl HT_REENTRANT
                    421: dnl POLL_PORTS
                    422: dnl NOT_ASCII
                    423: dnl ******************
                    424: 
                    425: dnl Create output files
                    426: AC_OUTPUT([Makefile
1.11      frystyk   427: config/Makefile
1.3       frystyk   428: Library/Makefile Library/User/Makefile Library/User/Patch/Makefile
                    429: Library/User/Architecture/Makefile Library/User/Using/Makefile Library/User/Guide/Makefile
1.12      frystyk   430: Library/User/Style/Makefile Library/User/Platform/Makefile
1.17      neon      431: Library/Test/Makefile Library/Test/User/Makefile Library/Test/src/Makefile
1.3       frystyk   432: Library/src/Makefile Library/src/windows/Makefile Library/src/vms/Makefile
1.11      frystyk   433: Library/Examples/Makefile
1.9       frystyk   434: PICS-client/Makefile PICS-client/User/Makefile PICS-client/src/Makefile PICS-client/src/windows/Makefile
1.3       frystyk   435: LineMode/Makefile LineMode/User/Makefile
                    436: LineMode/src/Makefile LineMode/src/windows/Makefile LineMode/src/vms/Makefile
1.13      frystyk   437: Robot/Makefile Robot/User/Makefile Robot/src/Makefile Robot/src/windows/Makefile
1.3       frystyk   438: ComLine/Makefile ComLine/User/Makefile ComLine/src/Makefile
                    439: Listen/Makefile Listen/User/Makefile Listen/src/Makefile
1.13      frystyk   440: Icons/Makefile Icons/WWW/Makefile Icons/32x32/Makefile Icons/internal/Makefile
1.1       frystyk   441: ], date>stamp-h)

Webmaster