configure.in 4.78 KB
Newer Older
Jack Moffitt's avatar
Jack Moffitt committed
1
dnl Process this file with autoconf to produce a configure script.
2
AC_INIT([IceS], 2.0-Beta2, [icecast@xiph.org])
3
AC_PREREQ(2.52)
4
AC_CONFIG_SRCDIR(src/ices.c)
Jack Moffitt's avatar
Jack Moffitt committed
5

6
AM_INIT_AUTOMAKE
7
AM_CONFIG_HEADER(config.h)
8
AM_MAINTAINER_MODE
Jack Moffitt's avatar
Jack Moffitt committed
9
10
11
12
13
14

AC_PROG_CC
AM_PROG_LIBTOOL

dnl Set some options based on environment

15
16
17
18
19
20
21
22
dnl openbsd headers break when _XOPEN_SOURCE is defined but without it seems
dnl to be fine
case "$ac_cv_host" in
   *openbsd*)
   ;;
   *) AC_DEFINE(_XOPEN_SOURCE, 500, [Define if you have POSIX and XPG specifications])
   ;;
esac
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
case $host in 
*-*-irix*)
        DEBUG="-g -signed -D_REENTRANT" 
        XIPH_CFLAGS="-O2 -w -signed -D_REENTRANT"
        PROFILE="-p -g3 -O2 -signed -D_REENTRANT"
;;
*-*-solaris*)
        AC_DEFINE(__EXTENSIONS__, 1, [define to 1 for IPv6 functions on solaris])
        DEBUG="-v -g -D_REENTRANT"
        XIPH_CFLAGS="-xO4 -fast -w -fsimple -native -xcg92 -D_REENTRANT"
        PROFILE="-v -xpg -g -xO4 -fast -native -fsimple -xcg92 -Dsuncc -D_REENTRANT"
;;
*)
        DEBUG="-g -D_REENTRANT"
        XIPH_CFLAGS="-O -D_REENTRANT"
        PROFILE="-g -p -D_REENTRANT" 
;;
esac
if test -n "$GCC"; then
42
43
44
45
        AC_DEFINE(_GNU_SOURCE, ,[Define if you have POSIX and GNU specifications])
        XIPH_CFLAGS="-ffast-math -fsigned-char"
        DEBUG="-g"
        PROFILE="-g -pg"
Jack Moffitt's avatar
Jack Moffitt committed
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
fi

dnl Checks for programs.

dnl Checks for libraries.

dnl Checks for header files.
AC_HEADER_STDC

dnl Check for OSS

AC_CHECK_HEADER(sys/soundcard.h, have_oss=yes, have_oss=no)
AC_CHECK_HEADER(machine/soundcard.h, have_oss=yes, )
AM_CONDITIONAL(HAVE_OSS,test "$have_oss" = yes)
if test "$have_oss" = yes; then
61
    AC_DEFINE(HAVE_OSS,,[Define to enable OSS input module])
Jack Moffitt's avatar
Jack Moffitt committed
62
63
64
65
fi

dnl Check for Sun audio

66
AC_ARG_ENABLE(sun-audio,
67
68
    AC_HELP_STRING([--disable-sun-audio],
                   [Disable sun audio input (default autodetect)]),
69
70
71
72
73
    enable_sun="$enableval",
    enable_sun=yes
)
if test x$enable_sun = xyes; then
   AC_CHECK_HEADER(sys/audioio.h, have_sun_audio=yes, have_sun_audio=no)
Jack Moffitt's avatar
Jack Moffitt committed
74

75
76
77
   if test "$have_sun_audio" = yes; then
       AC_DEFINE(HAVE_SUN_AUDIO,,[Define to enable sun audio input module])
   fi
Jack Moffitt's avatar
Jack Moffitt committed
78
fi
79
AM_CONDITIONAL(HAVE_SUN_AUDIO,test "$have_sun_audio" = yes)
Jack Moffitt's avatar
Jack Moffitt committed
80

81
82
83
84
85
86
87
dnl Check for ALSA audio

AC_CHECK_HEADER(alsa/asoundlib.h, have_alsa=yes, have_alsa=no)
AM_CONDITIONAL(HAVE_ALSA,test "$have_alsa" = yes)

if test "$have_alsa" = yes; then
   ALSA_LIBS="-lasound"
88
   AC_DEFINE(HAVE_ALSA, ,[Define to enable ALSA input module])
89
90
fi

Jack Moffitt's avatar
Jack Moffitt committed
91
92
dnl Checks for typedefs, structures, and compiler characteristics.
AC_C_CONST
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
AC_CHECK_TYPES([socklen_t],,,[
#include <sys/types.h>
#include <sys/socket.h>
])
AH_BOTTOM([
#ifndef HAVE_SOCKLEN_T
      typedef int socklen_t
#endif
])

dnl needs to be checked early on, so that additional libraries
dnl don't trick the check
ACX_PTHREAD([
     LIBS="$PTHREAD_LIBS $LIBS"
     XIPH_CFLAGS="$XIPH_CFLAGS $PTHREAD_CFLAGS"
     CC="$PTHREAD_CC"
])
Jack Moffitt's avatar
Jack Moffitt committed
110
111

dnl Check for types
112
AC_CHECK_TYPES([uint64_t],,AC_ERROR([could not find a uint64_t type]))
Jack Moffitt's avatar
Jack Moffitt committed
113
114
115

dnl Checks for library functions.

116
117
AC_CHECK_LIB(nsl, gethostbyname, LIBS="-lnsl $LIBS",)
AC_CHECK_LIB(socket, socket, LIBS="-lsocket $LIBS",)
118
119
AC_CHECK_LIB(rt, nanosleep, LIBS="-lrt $LIBS",)
AC_CHECK_LIB(resolv, res_query, LIBS="-lresolv $LIBS",)
120

Jack Moffitt's avatar
Jack Moffitt committed
121
122
dnl -- configure options --

123
124
125
dnl deal with xml-config
AC_MSG_RESULT([checking for XML configuration])
AC_ARG_VAR([XMLCONFIG],[XML configuration program])
Jack Moffitt's avatar
Jack Moffitt committed
126
AC_ARG_WITH(xml-config,
127
128
129
130
    [AC_HELP_STRING([--with-xml-config=PATH],
                    [use xml-config in PATH to find libxml])],
    [XMLCONFIG="$withval"],
    [AC_PATH_PROGS(XMLCONFIG, [xml2-config xml-config], "")]
Jack Moffitt's avatar
Jack Moffitt committed
131
)
132
133
if test "x$XMLCONFIG" = "x"; then
    AC_MSG_ERROR([XML configuration could not be found])
Jack Moffitt's avatar
Jack Moffitt committed
134
fi
135
136
if ! test -x "$XMLCONFIG"; then
    AC_MSG_ERROR([$XMLCONFIG cannot be executed])
Jack Moffitt's avatar
Jack Moffitt committed
137
fi
138
139
140
141
142
XML_LIBS="$($XMLCONFIG --libs)"
XML_CFLAGS="$($XMLCONFIG --cflags)"
LIBS="$XML_LIBS $LIBS"
XIPH_CFLAGS="$XIPH_CFLAGS $XML_CFLAGS"
AC_CHECK_FUNC(xmlParseFile,, [AC_MSG_ERROR([There was a problem linking with libxml])])
Jack Moffitt's avatar
Jack Moffitt committed
143

144
AM_PATH_OGG(, AC_MSG_ERROR([must have Ogg v1.0 installed!]))
145
LIBS="$OGG_LIBS $LIBS"
146
147
XIPH_CFLAGS="$XIPH_CFLAGS $OGG_CFLAGS"

148
AM_PATH_VORBIS(, AC_MSG_ERROR([must have Vorbis v1.0 installed!]))
149
LIBS="$VORBIS_LIBS $VORBISENC_LIBS $LIBS"
150
151
XIPH_CFLAGS="$XIPH_CFLAGS $VORBIS_CFLAGS $VORBISENC_CFLAGS"

152
153
154
dnl we expect thread support in libshout
save_CFLAGS=$CFLAGS
CFLAGS="$CFLAGS $PTHREAD_CFLAGS"
155
AM_PATH_SHOUT(, AC_MSG_ERROR([must have libshout installed!]))
156
LIBS="$SHOUT_LIBS $LIBS"
157
XIPH_CFLAGS="$XIPH_CFLAGS $SHOUT_CFLAGS"
158
CFLAGS=$save_CFLAGS
Jack Moffitt's avatar
Jack Moffitt committed
159
160
161

dnl Make substitutions

162
AC_SUBST(ALSA_LIBS)
Jack Moffitt's avatar
Jack Moffitt committed
163
AC_SUBST(XML_LIBS)
164
AC_SUBST(XML_CFLAGS)
Jack Moffitt's avatar
Jack Moffitt committed
165
166
167
168
AC_SUBST(LIBTOOL_DEPS)
AC_SUBST(LIBS)
AC_SUBST(DEBUG)
AC_SUBST(PROFILE)
169
AC_SUBST(XIPH_CFLAGS)
170
AC_SUBST(PTHREAD_CFLAGS)
Jack Moffitt's avatar
Jack Moffitt committed
171

172
AC_OUTPUT(Makefile conf/Makefile src/Makefile src/avl/Makefile src/thread/Makefile src/net/Makefile src/log/Makefile src/timing/Makefile)