File: configure.in

package info (click to toggle)
thttpd 2.21b-11.2
  • links: PTS
  • area: main
  • in suites: woody
  • size: 676 kB
  • ctags: 670
  • sloc: ansic: 7,651; sh: 1,822; makefile: 308
file content (138 lines) | stat: -rw-r--r-- 3,524 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
dnl Process this file with autoconf to produce a configure script.

AC_INIT(thttpd.c)

AC_CANONICAL_SYSTEM

AC_PROG_CC

V_CCOPT="-O"
if test "$GCC" = yes ; then
	AC_MSG_CHECKING(gcc version)
	AC_CACHE_VAL(ac_cv_lbl_gcc_vers,
	    ac_cv_lbl_gcc_vers=`$CC --version 2>&1 | \
		sed -e 's/\..*//'`)
	AC_MSG_RESULT($ac_cv_lbl_gcc_vers)
	if test "$ac_cv_lbl_gcc_vers" -gt 1 ; then
		V_CCOPT="-O2"
	fi
fi
if test -f .devel ; then
	V_CCOPT="-g $V_CCOPT -Wall -Wmissing-prototypes -Wstrict-prototypes"
fi

dnl
dnl maybe this should be a loop
dnl
AC_MSG_CHECKING(how to link static binaries)
AC_CACHE_VAL(ac_cv_lbl_static_flag,
    ac_cv_lbl_static_flag=unknown
    echo 'main() {}' > conftest.c
    if test "$GCC" != yes ; then
	    trial_flag="-Bstatic"
	    test=`$CC $trial_flag -o conftest conftest.c 2>&1`
	    if test -z "$test" ; then
		    ac_cv_lbl_static_flag="$trial_flag"
	    fi
	    rm -f conftest
    fi
    if test "$ac_cv_lbl_static_flag" = unknown ; then
	    trial_flag="-static"
	    test=`$CC $trial_flag -o conftest conftest.c 2>&1`
	    if test -z "$test" ; then
		    ac_cv_lbl_static_flag="$trial_flag"
	    fi
	    rm -f conftest
    fi
    rm conftest.c)
AC_MSG_RESULT($ac_cv_lbl_static_flag)
if test "$ac_cv_lbl_static_flag" != unknown ; then
	V_STATICFLAG="$ac_cv_lbl_static_flag"
fi

AC_MSG_CHECKING(for __progname)
AC_CACHE_VAL(ac_cv_extern__progname,
    AC_TRY_LINK([],
	[extern char *__progname; 
	puts(__progname)],
	ac_cv_extern__progname=yes,
	ac_cv_extern__progname=no))
if test $ac_cv_extern__progname = yes ; then
	AC_DEFINE(HAVE__PROGNAME)
	AC_MSG_RESULT(yes)
else
	AC_MSG_RESULT(no)   
fi

AC_CHECK_HEADERS(fcntl.h grp.h memory.h paths.h poll.h sys/poll.h sys/event.h osreldate.h)
AC_HEADER_TIME
AC_HEADER_DIRENT

d="/usr/local/v6/lib"
AC_MSG_CHECKING(for $d)
if test -d $d; then
	AC_MSG_RESULT(yes (Adding -L$d to LDFLAGS))
	LDFLAGS="$LDFLAGS -L$d"
else
	AC_MSG_RESULT(no)
fi

dnl
dnl Most operating systems have gethostbyname() in the default searched
dnl libraries (i.e. libc):
dnl
V_NETLIBS=""
AC_CHECK_FUNC(gethostbyname, ,
    # Some OSes (eg. Solaris) place it in libnsl:
    AC_LBL_CHECK_LIB(nsl, gethostbyname,
	V_NETLIBS="-lnsl $V_NETLIBS", 
	# Some strange OSes (SINIX) have it in libsocket:
	AC_LBL_CHECK_LIB(socket, gethostbyname,
	    V_NETLIBS="-lsocket $V_NETLIBS", 
	    # Unfortunately libsocket sometimes depends on libnsl.
	    # AC_CHECK_LIB's API is essentially broken so the
	    # following ugliness is necessary:
	    AC_LBL_CHECK_LIB(socket, gethostbyname,
		V_NETLIBS="-lsocket -lnsl $V_NETLIBS",
		AC_CHECK_LIB(resolv, gethostbyname,
		    V_NETLIBS="-lresolv $V_NETLIBS"),
		-lnsl))))
AC_CHECK_FUNC(socket, ,
    AC_CHECK_LIB(socket, socket,
	V_NETLIBS="-lsocket $V_NETLIBS",
	AC_LBL_CHECK_LIB(socket, socket,
	    V_NETLIBS="-lsocket -lnsl $V_NETLIBS", , -lnsl)))

AC_CHECK_LIB(inet6, main)

AC_CHECK_FUNC(crypt, , AC_CHECK_LIB(crypt, crypt))
AC_CHECK_FUNC(hstrerror, ,
    AC_CHECK_LIB(resolv, hstrerror, V_NETLIBS="-lresolv $V_NETLIBS"))

AC_REPLACE_FUNCS(strerror)
AC_CHECK_FUNCS(waitpid vsnprintf daemon setsid setlogin getaddrinfo getnameinfo gai_strerror kqueue)
AC_FUNC_MMAP

case "$target_os" in
solaris*)
	dnl Solaris's select() is a bad wrapper routine.
	AC_CHECK_FUNCS(poll)
	;;
*)
	AC_CHECK_FUNCS(select poll)
	;;
esac

AC_ACME_TM_GMTOFF
AC_ACME_SOCKADDR_STORAGE
AC_ACME_SOCKADDR_IN6

AC_PROG_MAKE_SET
AC_PROG_INSTALL

AC_SUBST(DEFS)
AC_SUBST(V_CCOPT)
AC_SUBST(V_STATICFLAG)
AC_SUBST(V_NETLIBS)

AC_OUTPUT(Makefile cgi-src/Makefile extras/Makefile)