configure.in 51.1 KB
Newer Older
Sam Hocevar's avatar
   
Sam Hocevar committed
1
dnl Autoconf settings for vlc
Sam Hocevar's avatar
   
Sam Hocevar committed
2
AC_INIT(include/main.h)
3
AC_CONFIG_HEADER(include/defs.h)
4
AC_CANONICAL_SYSTEM
5

Sam Hocevar's avatar
   
Sam Hocevar committed
6
PACKAGE="vlc"
Sam Hocevar's avatar
   
Sam Hocevar committed
7
VERSION="0.3.1"
Sam Hocevar's avatar
   
Sam Hocevar committed
8
CODENAME=Ourumov
9

Sam Hocevar's avatar
   
Sam Hocevar committed
10
dnl Save CFLAGS and LDFLAGS
Sam Hocevar's avatar
   
Sam Hocevar committed
11
save_CFLAGS="${CFLAGS}"
Sam Hocevar's avatar
   
Sam Hocevar committed
12
save_CPPFLAGS="${CPPFLAGS}"
Sam Hocevar's avatar
   
Sam Hocevar committed
13
save_LDFLAGS="${LDFLAGS}"
Sam Hocevar's avatar
   
Sam Hocevar committed
14

15
16
dnl Check for tools
AC_PROG_MAKE_SET
Sam Hocevar's avatar
   
Sam Hocevar committed
17
18
AC_PROG_CC
AC_PROG_CPP
19

gbazin's avatar
   
gbazin committed
20
21
dnl Find the right ranlib, even when cross-compiling
AC_CHECK_TOOL(RANLIB, ranlib, :)
Sam Hocevar's avatar
   
Sam Hocevar committed
22
AC_CHECK_TOOL(STRIP, strip, :)
gbazin's avatar
   
gbazin committed
23

Christophe Massiot's avatar
Christophe Massiot committed
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
dnl Check for GNU make
AC_PATH_PROG(GMAKE, gmake, no)
if test "x$GMAKE" = "xno"; then
  AC_CACHE_CHECK([whether GNU make is installed],
      [ac_cv_gmake],
      [if make --version | grep -q -i gnu; then
         ac_cv_gmake="yes"
       else
         echo "This software needs you to install GNU make to compile properly."
         echo "You can get it from http://www.gnu.org/."
         exit
       fi])
  VLC_MAKE="make"
else
  VLC_MAKE="gmake"
fi

Sam Hocevar's avatar
   
Sam Hocevar committed
41
dnl Gettext stuff
42
ALL_LINGUAS="de en_GB fr ja no ru nl"
Sam Hocevar's avatar
Sam Hocevar committed
43

Sam Hocevar's avatar
   
Sam Hocevar committed
44
AC_DEFINE_UNQUOTED(VLC_PACKAGE, "$PACKAGE", [Package name])
Sam Hocevar's avatar
   
Sam Hocevar committed
45
AC_DEFINE_UNQUOTED(VLC_VERSION, "$VERSION", [Package version])
Sam Hocevar's avatar
   
Sam Hocevar committed
46
47
AM_GNU_GETTEXT

48
49
50
dnl AM_PROG_LIBTOOL
AC_PROG_INSTALL

gbazin's avatar
   
gbazin committed
51
52
53
54
55
56
57
58
59
60
61
62
dnl
dnl  Check the operating system
dnl
case x"${target_os}" in
  x)
    SYS=unknown
    ;;
  xlinux*)
    SYS=linux
    ;;
  xbsdi*)
    SYS=bsdi
Sam Hocevar's avatar
   
Sam Hocevar committed
63
64
65
66
67
68
69
    save_CFLAGS="${save_CFLAGS} -pthread"
    dvd_LDFLAGS="${dvd_LDFLAGS} -ldvd"
    vcd_LDFLAGS="${vcd_LDFLAGS} -ldvd"
    ;;
  x*bsd*)
    SYS="${target_os}"
    save_CFLAGS="${save_CFLAGS} -pthread"
gbazin's avatar
   
gbazin committed
70
71
72
    ;;
  xdarwin*)
    SYS=darwin
Sam Hocevar's avatar
   
Sam Hocevar committed
73
    save_CFLAGS="${save_CFLAGS} -no-cpp-precomp"
gbazin's avatar
   
gbazin committed
74
75
76
77
    ;;
  x*mingw32*)
    SYS=mingw32
    AC_CHECK_TOOL(WINDRES, windres, :)
Sam Hocevar's avatar
   
Sam Hocevar committed
78
    save_CFLAGS="${save_CFLAGS} -fnative-struct -D_OFF_T_ -D_off_t=long"
Sam Hocevar's avatar
   
Sam Hocevar committed
79
    vlc_LDFLAGS="${vlc_LDFLAGS} -mwindows -Xlinker --force-exe-suffix"
Sam Hocevar's avatar
   
Sam Hocevar committed
80
81
82
    vlc_LDFLAGS="${vlc_LDFLAGS} -lws2_32 -lnetapi32"
    ipv4_LDFLAGS="${ipv4_LDFLAGS} -lws2_32"
    rc_LDFLAGS="${rc_LDFLAGS} -lws2_32"
gbazin's avatar
   
gbazin committed
83
84
85
    ;;
  x*nto*)
    SYS=nto
Sam Hocevar's avatar
   
Sam Hocevar committed
86
87
    x11_LDFLAGS="${x11_LDFLAGS} -lsocket"
    xvideo_LDFLAGS="${xvideo_LDFLAGS} -lsocket"
gbazin's avatar
   
gbazin committed
88
89
90
    ;;
  xbeos)
    SYS=beos
Sam Hocevar's avatar
   
Sam Hocevar committed
91
    save_CFLAGS="${save_CFLAGS} -Wno-multichar -Wno-ctor-dtor-privacy -Woverloaded-virtual"
Sam Hocevar's avatar
   
Sam Hocevar committed
92
93
94
95
    vlc_LDFLAGS="${vlc_LDFLAGS} -lbe"
    plugins_LDFLAGS="${plugins_LDFLAGS} -nostart"
    beos_LDFLAGS="${beos_LDFLAGS} -lbe -lgame -lroot -ltracker"
    ipv4_LDFLAGS="${ipv4_LDFLAGS} -lbind"
gbazin's avatar
   
gbazin committed
96
97
    ;;
  x*)
Sam Hocevar's avatar
   
Sam Hocevar committed
98
    SYS="${target_os}"
gbazin's avatar
   
gbazin committed
99
100
101
    ;;
esac

Sam Hocevar's avatar
   
Sam Hocevar committed
102
103
104
105
106
107
108
109
110
dnl Flags for plugin compilation
if test x"${SYS}" = xmingw32
then
  plugins_CFLAGS="${plugins_CFLAGS} -fnative-struct"
else
  plugins_CFLAGS="${plugins_CFLAGS} -fPIC"
fi

dnl The -DSYS_FOO flag
Sam Hocevar's avatar
   
Sam Hocevar committed
111
save_CFLAGS="${save_CFLAGS} -DSYS_`echo ${SYS} | sed -e 's/-.*//' | tr 'abcdefghijklmnopqrstuvwxyz.' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ_'`"
Sam Hocevar's avatar
   
Sam Hocevar committed
112

113
dnl Check for system libs needed
114
AC_CHECK_FUNCS(gettimeofday select strerror strtod strtol isatty vasprintf swab sigrelse getpwuid memalign posix_memalign gethostbyname2)
Sam Hocevar's avatar
   
Sam Hocevar committed
115

Sam Hocevar's avatar
   
Sam Hocevar committed
116
AC_CHECK_FUNC(connect,,[
Sam Hocevar's avatar
   
Sam Hocevar committed
117
  AC_CHECK_LIB(socket,connect,
Sam Hocevar's avatar
   
Sam Hocevar committed
118
119
    ipv4_LDFLAGS="${ipv4_LDFLAGS} -lsocket"
    vlc_LDFLAGS="${vlc_LDFLAGS} -lsocket"
Sam Hocevar's avatar
   
Sam Hocevar committed
120
)])
Sam Hocevar's avatar
   
Sam Hocevar committed
121
AC_CHECK_FUNC(gethostbyname,,[
Sam Hocevar's avatar
   
Sam Hocevar committed
122
  AC_CHECK_LIB(nsl,gethostbyname,ipv4_LDFLAGS="${ipv4_LDFLAGS} -lnsl")
Sam Hocevar's avatar
   
Sam Hocevar committed
123
124
])
AC_CHECK_FUNC(gethostbyname,,[
Sam Hocevar's avatar
   
Sam Hocevar committed
125
  AC_CHECK_LIB(bind,gethostbyname,ipv4_LDFLAGS="${ipv4_LDFLAGS} -lbind")
Sam Hocevar's avatar
   
Sam Hocevar committed
126
])
127
128
129
130
131
132
AC_CHECK_FUNCS(nanosleep,,[
  AC_CHECK_LIB(rt,nanosleep,
    [vlc_LDFLAGS="${vlc_LDFLAGS} -lrt"],
    [AC_CHECK_LIB(posix4,nanosleep,
        [vlc_LDFLAGS="${vlc_LDFLAGS} -lposix4"])]
  )
Sam Hocevar's avatar
   
Sam Hocevar committed
133
134
])
AC_CHECK_FUNC(inet_aton,,[
Sam Hocevar's avatar
   
Sam Hocevar committed
135
  AC_CHECK_LIB(resolv,inet_aton,ipv4_LDFLAGS="${ipv4_LDFLAGS} -lresolv")
136
137
])
AC_CHECK_FUNC(textdomain,,[
Sam Hocevar's avatar
   
Sam Hocevar committed
138
  AC_CHECK_LIB(intl,textdomain,save_LDFLAGS="${save_LDFLAGS} -lintl")
Sam Hocevar's avatar
   
Sam Hocevar committed
139
])
Sam Hocevar's avatar
   
Sam Hocevar committed
140

Sam Hocevar's avatar
   
Sam Hocevar committed
141
dnl Check for getopt
Sam Hocevar's avatar
   
Sam Hocevar committed
142
NEED_GETOPT=0
Sam Hocevar's avatar
   
Sam Hocevar committed
143
144
145
AC_CHECK_FUNC(getopt_long,[AC_DEFINE(HAVE_GETOPT_LONG,1,long getopt support)],
[ # FreeBSD has a gnugetopt library for this:
  AC_CHECK_LIB([gnugetopt],[getopt_long],
Sam Hocevar's avatar
   
Sam Hocevar committed
146
    [AC_DEFINE(HAVE_GETOPT_LONG,1,getopt support) vlc_LDFLAGS="${vlc_LDFLAGS} -lgnugetopt"],
Sam Hocevar's avatar
   
Sam Hocevar committed
147
    [NEED_GETOPT=1])])
Sam Hocevar's avatar
   
Sam Hocevar committed
148

149
AC_TYPE_SIGNAL
Sam Hocevar's avatar
   
Sam Hocevar committed
150
AC_CHECK_LIB(dl,dlopen,vlc_LDFLAGS="${vlc_LDFLAGS} -ldl")
Sam Hocevar's avatar
   
Sam Hocevar committed
151
AC_CHECK_LIB(m,cos,
Sam Hocevar's avatar
   
Sam Hocevar committed
152
153
  imdct_LDFLAGS="${imdct_LDFLAGS} -lm"
  filter_distort_LDFLAGS="${filter_distort_LDFLAGS} -lm")
Sam Hocevar's avatar
   
Sam Hocevar committed
154
AC_CHECK_LIB(m,pow,
Sam Hocevar's avatar
   
Sam Hocevar committed
155
156
157
158
  imdct_LDFLAGS="${imdct_LDFLAGS} -lm"
  imdct3dn_LDFLAGS="${imdct3dn_LDFLAGS} -lm"
  imdctsse_LDFLAGS="${imdctsse_LDFLAGS} -lm"
  chroma_i420_rgb_LDFLAGS="${chroma_i420_rgb_LDFLAGS} -lm"
Sam Hocevar's avatar
   
Sam Hocevar committed
159
)
Sam Hocevar's avatar
   
Sam Hocevar committed
160

Sam Hocevar's avatar
   
Sam Hocevar committed
161
dnl Check for pthreads - borrowed from XMMS
Sam Hocevar's avatar
   
Sam Hocevar committed
162
163
164
165
166
167
168
169
170
171
172
173
174
175
THREAD_LIB=error
if test "x${THREAD_LIB}" = xerror; then
  AC_CHECK_LIB(pthread,pthread_attr_init,THREAD_LIB="-lpthread")
fi
if test "x${THREAD_LIB}" = xerror; then
  AC_CHECK_LIB(pthreads,pthread_attr_init,THREAD_LIB="-lpthreads")
fi
if test "x${THREAD_LIB}" = xerror; then
  AC_CHECK_LIB(c_r,pthread_attr_init,THREAD_LIB="-lc_r")
fi
if test "x${THREAD_LIB}" = xerror; then
  AC_CHECK_FUNC(pthread_attr_init)
  THREAD_LIB=""
fi
Sam Hocevar's avatar
   
Sam Hocevar committed
176
177
178

dnl Check for cthreads under GNU/Hurd for instance
AC_CHECK_LIB(threads,cthread_fork,THREAD_LIB="-lthreads")
179

Sam Hocevar's avatar
   
Sam Hocevar committed
180
181
182
dnl Check for misc headers
AC_EGREP_HEADER(pthread_cond_t,pthread.h,[
  AC_DEFINE(PTHREAD_COND_T_IN_PTHREAD_H, 1,
Sam Hocevar's avatar
   
Sam Hocevar committed
183
            Define if <pthread.h> defines pthread_cond_t.)])
Sam Hocevar's avatar
   
Sam Hocevar committed
184
185
AC_EGREP_HEADER(strncasecmp,strings.h,[
  AC_DEFINE(STRNCASECMP_IN_STRINGS_H, 1,
Sam Hocevar's avatar
   
Sam Hocevar committed
186
            Define if <strings.h> defines strncasecmp.)])
Sam Hocevar's avatar
   
Sam Hocevar committed
187

Sam Hocevar's avatar
   
Sam Hocevar committed
188
dnl Check for headers
Sam Hocevar's avatar
   
Sam Hocevar committed
189
AC_CHECK_HEADERS(getopt.h strings.h)
Sam Hocevar's avatar
   
Sam Hocevar committed
190
AC_CHECK_HEADERS(sys/sockio.h fcntl.h sys/types.h sys/time.h sys/times.h)
Sam Hocevar's avatar
   
Sam Hocevar committed
191
192
AC_CHECK_HEADERS(dlfcn.h image.h)
AC_CHECK_HEADERS(arpa/inet.h net/if.h netinet/in.h sys/socket.h)
Sam Hocevar's avatar
   
Sam Hocevar committed
193
AC_CHECK_HEADERS(machine/param.h sys/shm.h)
194
AC_CHECK_HEADERS(linux/version.h)
Sam Hocevar's avatar
   
Sam Hocevar committed
195

Sam Hocevar's avatar
   
Sam Hocevar committed
196
197
AC_HEADER_TIME

198
199
200
201
202
203
204
205
dnl Mac OS X and other OSes don't have declaration for nanosleep
dnl This only works with autoconf 2.52
AC_CHECK_DECLS(nanosleep)

dnl Make sure we have timespecs
dnl This only works with autoconf 2.52
AC_CHECK_TYPES(struct timespec)

Sam Hocevar's avatar
   
Sam Hocevar committed
206
207
208
dnl Check for threads library
AC_CHECK_HEADERS(cthreads.h pthread.h kernel/scheduler.h kernel/OS.h)

Sam Hocevar's avatar
   
Sam Hocevar committed
209
210
211
212
213
214
215
216
217
dnl Check for DPMS
if test x$SYS != xmingw32
then
  if test x$x_includes = xNONE; then
    x_includes=/usr/X11R6/include
  fi
  if test x$x_libraries = xNONE; then
    x_libraries=/usr/X11R6/lib
  fi
Sam Hocevar's avatar
   
Sam Hocevar committed
218
  CPPFLAGS="$save_CPPFLAGS -I$x_includes"
Sam Hocevar's avatar
   
Sam Hocevar committed
219
220
221
222
223
224
  AC_CHECK_HEADERS(X11/extensions/dpms.h, [
    AC_EGREP_HEADER(DPMSInfo,X11/extensions/dpms.h,[
      AC_DEFINE(DPMSINFO_IN_DPMS_H, 1,
                Define if <X11/extensions/dpms.h> defines DPMSInfo.)
    ])
  ])
Sam Hocevar's avatar
   
Sam Hocevar committed
225
  CPPFLAGS="$save_CPPFLAGS"
Sam Hocevar's avatar
   
Sam Hocevar committed
226
227
fi

Sam Hocevar's avatar
   
Sam Hocevar committed
228
dnl Check for ntohl, etc.
229
230
231
232
233
234
235
236
237
AC_CACHE_CHECK([for ntohl in sys/param.h],
    [ac_cv_c_ntohl_sys_param_h],
    [CFLAGS="${save_CFLAGS} -Wall -Werror"
     AC_TRY_COMPILE([#include <sys/param.h>],
        [void foo() { int meuh; ntohl(meuh); }],
        ac_cv_c_ntohl_sys_param_h=yes, ac_cv_c_ntohl_sys_param_h=no)])
if test x"$ac_cv_c_ntohl_sys_param_h" != x"no"; then
    AC_DEFINE(NTOHL_IN_SYS_PARAM_H, 1, Define if <sys/param.h> defines ntohl.)
fi
Sam Hocevar's avatar
   
Sam Hocevar committed
238

Sam Hocevar's avatar
   
Sam Hocevar committed
239
dnl Check for inline function size limit
240
241
242
243
244
245
246
AC_CACHE_CHECK([if \$CC accepts -finline-limit],
    [ac_cv_c_inline_limit],
    [CFLAGS="${save_CFLAGS} -finline-limit-30000"
     AC_TRY_COMPILE([],,ac_cv_c_inline_limit=yes, ac_cv_c_inline_limit=no)])
if test x"$ac_cv_c_inline_limit" != x"no"; then
    save_CFLAGS="${save_CFLAGS} -finline-limit-30000"
fi
Sam Hocevar's avatar
   
Sam Hocevar committed
247

Sam Hocevar's avatar
   
Sam Hocevar committed
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
dnl Check for -W or -w flags
AC_CACHE_CHECK([if \$CC accepts -Wall -Winline],
    [ac_cv_c_Wall_Winline],
    [CFLAGS="${save_CFLAGS} -Wall -Winline"
     AC_TRY_COMPILE([],,ac_cv_c_Wall_Winline=yes, ac_cv_c_Wall_Winline=no)])
if test x"$ac_cv_c_Wall_Winline" != x"no"; then
    save_CFLAGS="${save_CFLAGS} -Wall -Winline"
else
    AC_CACHE_CHECK([if \$CC accepts -wall -winline],
        [ac_cv_c_wall_winline],
        [CFLAGS="${save_CFLAGS} -wall -winline"
         AC_TRY_COMPILE([],,ac_cv_c_wall_winline=yes, ac_cv_c_wall_winline=no)])
    if test x"$ac_cv_c_wall_winline" != x"no"; then
        save_CFLAGS="${save_CFLAGS} -wall -winline"
    fi
fi

dnl Check for -pipe
AC_CACHE_CHECK([if \$CC accepts -pipe],
    [ac_cv_c_pipe],
    [CFLAGS="${save_CFLAGS} -pipe"
     AC_TRY_COMPILE([],,ac_cv_c_pipe=yes, ac_cv_c_pipe=no)])
if test x"$ac_cv_c_pipe" != x"no"; then
    save_CFLAGS="${save_CFLAGS} -pipe"
fi

dnl Check for various optimization flags
AC_CACHE_CHECK([if \$CC accepts -O3],
    [ac_cv_c_o3],
    [CFLAGS="${save_CFLAGS} -O3"
     AC_TRY_COMPILE([],,ac_cv_c_o3=yes, ac_cv_c_o3=no)])
if test x"$ac_cv_c_o3" != x"no"; then
    CFLAGS_OPTIM="${CFLAGS_OPTIM} -O3"
else
    AC_CACHE_CHECK([if \$CC accepts -O2],
        [ac_cv_c_o2],
        [CFLAGS="${save_CFLAGS} -O2"
         AC_TRY_COMPILE([],,ac_cv_c_o2=yes, ac_cv_c_o2=no)])
    if test x"$ac_cv_c_o2" != x"no"; then
        CFLAGS_OPTIM="${CFLAGS_OPTIM} -O2"
    else
        AC_CACHE_CHECK([if \$CC accepts -O],
            [ac_cv_c_o],
            [CFLAGS="${save_CFLAGS} -O"
             AC_TRY_COMPILE([],,ac_cv_c_o=yes, ac_cv_c_o=no)])
        if test x"$ac_cv_c_o" != x"no"; then
            CFLAGS_OPTIM="${CFLAGS_OPTIM} -O"
        fi
    fi
fi

dnl Check for -ffast-math
AC_CACHE_CHECK([if \$CC accepts -ffast-math],
    [ac_cv_c_fast_math],
    [CFLAGS="${save_CFLAGS} -ffast-math"
     AC_TRY_COMPILE([],,ac_cv_c_fast_math=yes, ac_cv_c_fast_math=no)])
if test x"$ac_cv_c_fast_math" != x"no"; then
    CFLAGS_OPTIM="${CFLAGS_OPTIM} -ffast-math"
fi

dnl Check for -funroll-loops
AC_CACHE_CHECK([if \$CC accepts -funroll-loops],
    [ac_cv_c_unroll_loops],
    [CFLAGS="${save_CFLAGS} -funroll-loops"
     AC_TRY_COMPILE([],,ac_cv_c_unroll_loops=yes, ac_cv_c_unroll_loops=no)])
if test x"$ac_cv_c_unroll_loops" != x"no"; then
    CFLAGS_OPTIM="${CFLAGS_OPTIM} -funroll-loops"
fi

dnl Check for -fomit-frame-pointer
AC_CACHE_CHECK([if \$CC accepts -fomit-frame-pointer],
    [ac_cv_c_omit_frame_pointer],
    [CFLAGS="${save_CFLAGS} -fomit-frame-pointer"
     AC_TRY_COMPILE([],,ac_cv_c_omit_frame_pointer=yes, ac_cv_c_omit_frame_pointer=no)])
if test x"$ac_cv_c_omit_frame_pointer" != x"no"; then
    CFLAGS_OPTIM_NODEBUG="${CFLAGS_OPTIM_NODEBUG} -fomit-frame-pointer"
fi

Sam Hocevar's avatar
   
Sam Hocevar committed
326
dnl Check for Darwin plugin linking flags
Christophe Massiot's avatar
Christophe Massiot committed
327
AC_CACHE_CHECK([if \$CC accepts -bundle -undefined error -lcc_dynamic],
328
    [ac_cv_ld_darwin],
Christophe Massiot's avatar
Christophe Massiot committed
329
    [CFLAGS="${save_CFLAGS} -bundle -undefined error -lcc_dynamic"
330
331
     AC_TRY_COMPILE([],,ac_cv_ld_darwin=yes, ac_cv_ld_darwin=no)])
if test x"$ac_cv_ld_darwin" != x"no"; then
Sam Hocevar's avatar
   
Sam Hocevar committed
332
    plugins_LDFLAGS="${plugins_LDFLAGS} -bundle -undefined error -lcc_dynamic"
333
fi
Sam Hocevar's avatar
   
Sam Hocevar committed
334
335

dnl Check for standard plugin linking flags
336
337
338
339
340
AC_CACHE_CHECK([if \$CC accepts -shared],
    [ac_cv_ld_plugins],
    [CFLAGS="${save_CFLAGS} -shared"
     AC_TRY_COMPILE([],, ac_cv_ld_plugins=yes, ac_cv_ld_plugins=no)])
if test x"$ac_cv_ld_plugins" != x"no"; then
Sam Hocevar's avatar
   
Sam Hocevar committed
341
    plugins_LDFLAGS="${plugins_LDFLAGS} -shared"
Sam Hocevar's avatar
   
Sam Hocevar committed
342
fi
343
        
344
345
346
347
348
349
350
351
352
353
354
355
356
357
dnl Check for variadic macros
AC_CACHE_CHECK([for variadic cpp macros],
    [ac_cv_cpp_variadic_macros],
    [CFLAGS="${save_CFLAGS}"
     AC_TRY_COMPILE(
         [#include <stdio.h>
          #define a(b,c...) printf(b,##c)],
         [a("foo");a("%s","bar");a("%s%s","baz","quux");],
         ac_cv_cpp_variadic_macros=yes,
         ac_cv_cpp_variadic_macros=no)])
if test x"$ac_cv_cpp_variadic_macros" != x"no"; then
    AC_DEFINE(HAVE_VARIADIC_MACROS, 1, Support for variadic macros)
fi

358
359
360
361
dnl Checks for __attribute__(aligned()) directive
AC_CACHE_CHECK([__attribute__ ((aligned ())) support],
    [ac_cv_c_attribute_aligned],
    [ac_cv_c_attribute_aligned=0
Sam Hocevar's avatar
   
Sam Hocevar committed
362
        CFLAGS="${save_CFLAGS} -Werror"
363
364
365
366
367
368
369
370
371
372
    for ac_cv_c_attr_align_try in 2 4 8 16 32 64; do
        AC_TRY_COMPILE([],
        [static char c __attribute__ ((aligned($ac_cv_c_attr_align_try))) = 0; return c;],
        [ac_cv_c_attribute_aligned=$ac_cv_c_attr_align_try])
    done])
if test x"$ac_cv_c_attribute_aligned" != x"0"; then
    AC_DEFINE_UNQUOTED([ATTRIBUTE_ALIGNED_MAX],
        [$ac_cv_c_attribute_aligned],[Maximum supported data alignment])
fi

Sam Hocevar's avatar
   
Sam Hocevar committed
373
dnl End of the bizarre compilation tests
Sam Hocevar's avatar
   
Sam Hocevar committed
374
CFLAGS="${save_CFLAGS}"
Sam Hocevar's avatar
   
Sam Hocevar committed
375
CPPFLAGS="${save_CPPFLAGS}"
Sam Hocevar's avatar
   
Sam Hocevar committed
376
LDFLAGS="${save_LDFLAGS}"
Christophe Massiot's avatar
Christophe Massiot committed
377

378
dnl Check for boolean_t
379
380
AC_CACHE_CHECK([for boolean_t in sys/types.h],
    [ac_cv_c_boolean_t_sys_types_h],
Sam Hocevar's avatar
   
Sam Hocevar committed
381
    [AC_TRY_COMPILE([#include <sys/types.h>], [boolean_t foo;],
382
383
384
385
386
387
388
     ac_cv_c_boolean_t_sys_types_h=yes, ac_cv_c_boolean_t_sys_types_h=no)])
if test x"$ac_cv_c_boolean_t_sys_types_h" != x"no"; then
    AC_DEFINE(BOOLEAN_T_IN_SYS_TYPES_H, 1, Define if <sys/types.h> defines boolean_t.)
fi

AC_CACHE_CHECK([for boolean_t in pthread.h],
    [ac_cv_c_boolean_t_pthread_h],
Sam Hocevar's avatar
   
Sam Hocevar committed
389
    [AC_TRY_COMPILE([#include <pthread.h>], [boolean_t foo;],
390
391
392
393
394
395
396
     ac_cv_c_boolean_t_pthread_h=yes, ac_cv_c_boolean_t_pthread_h=no)])
if test x"$ac_cv_c_boolean_t_pthread_h" != x"no"; then
    AC_DEFINE(BOOLEAN_T_IN_PTHREAD_H, 1, Define if <pthread.h> defines boolean_t.)
fi

AC_CACHE_CHECK([for boolean_t in cthreads.h],
    [ac_cv_c_boolean_t_cthreads_h],
Sam Hocevar's avatar
   
Sam Hocevar committed
397
    [AC_TRY_COMPILE([#include <cthreads.h>], [boolean_t foo;],
398
399
400
401
     ac_cv_c_boolean_t_cthreads_h=yes, ac_cv_c_boolean_t_cthreads_h=no)])
if test x"$ac_cv_c_boolean_t_cthreads_h" != x"no"; then
    AC_DEFINE(BOOLEAN_T_IN_CTHREADS_H, 1, Define if <cthreads.h> defines boolean_t.)
fi
Sam Hocevar's avatar
   
Sam Hocevar committed
402

Sam Hocevar's avatar
   
Sam Hocevar committed
403
404
405
406
407
408
409
410
dnl
dnl  Check the CPU
dnl
case x"${target_cpu}" in
  x)
    ARCH=unknown
    ;;
  *)
Sam Hocevar's avatar
   
Sam Hocevar committed
411
    ARCH="${target_cpu}"
Sam Hocevar's avatar
   
Sam Hocevar committed
412
413
    ;;
esac
Sam Hocevar's avatar
   
Sam Hocevar committed
414
415
416
417

dnl
dnl  default modules
dnl
Sam Hocevar's avatar
   
Sam Hocevar committed
418
BUILTINS="${BUILTINS} idct idctclassic motion imdct downmix chroma_i420_rgb chroma_i420_yuy2 chroma_i422_yuy2 chroma_i420_ymga mpeg_adec ac3_adec mpeg_vdec"
419
PLUGINS="${PLUGINS} dummy null rc logger mpeg_es mpeg_ps mpeg_ts mpeg_audio file udp http ipv4 memcpy lpcm_adec ac3_spdif spudec filter_deinterlace filter_invert filter_wall filter_transform filter_distort filter_clone fx_scope"
Sam Hocevar's avatar
   
Sam Hocevar committed
420
421
422
423

dnl
dnl  Accelerated modules
dnl
Sam Hocevar's avatar
   
Sam Hocevar committed
424
MMX_MODULES="memcpymmx idctmmx motionmmx chroma_i420_rgb_mmx chroma_i420_yuy2_mmx chroma_i422_yuy2_mmx chroma_i420_ymga_mmx"
Sam Hocevar's avatar
   
Sam Hocevar committed
425
426
MMXEXT_MODULES="memcpymmxext idctmmxext motionmmxext"
THREEDNOW_MODULES="memcpy3dn imdct3dn downmix3dn"
gbazin's avatar
   
gbazin committed
427
SSE_MODULES="imdctsse downmixsse"
428
ALTIVEC_MODULES="idctaltivec motionaltivec memcpyaltivec"
429

430
431
AC_CACHE_CHECK([if \$CC groks MMX inline assembly],
    [ac_cv_mmx_inline],
Sam Hocevar's avatar
   
Sam Hocevar committed
432
    [AC_TRY_COMPILE(,[void *p;asm volatile("packuswb %%mm1,%%mm2"::"r"(p));],
433
                    ac_cv_mmx_inline=yes, ac_cv_mmx_inline=no)])
434
if test x"$ac_cv_mmx_inline" != x"no"; then
Sam Hocevar's avatar
   
Sam Hocevar committed
435
  ACCEL_MODULES="${ACCEL_MODULES} ${MMX_MODULES}"
436
fi
Sam Hocevar's avatar
   
Sam Hocevar committed
437

438
439
AC_CACHE_CHECK([if \$CC groks MMX EXT inline assembly],
    [ac_cv_mmxext_inline],
Sam Hocevar's avatar
   
Sam Hocevar committed
440
    [AC_TRY_COMPILE(,[void *p;asm volatile("maskmovq %%mm1,%%mm2"::"r"(p));],
441
                    ac_cv_mmxext_inline=yes, ac_cv_mmxext_inline=no)])
442
if test x"$ac_cv_mmxext_inline" != x"no"; then
Sam Hocevar's avatar
   
Sam Hocevar committed
443
  ACCEL_MODULES="${ACCEL_MODULES} ${MMXEXT_MODULES}"
444
fi
Sam Hocevar's avatar
   
Sam Hocevar committed
445

446
447
AC_CACHE_CHECK([if \$CC groks 3D Now! inline assembly],
    [ac_cv_3dnow_inline],
Sam Hocevar's avatar
   
Sam Hocevar committed
448
    [AC_TRY_COMPILE(,[void *p;asm volatile("pfadd %%mm1,%%mm2"::"r"(p));],
449
                    ac_cv_3dnow_inline=yes, ac_cv_3dnow_inline=no)])
450
if test x"$ac_cv_3dnow_inline" != x"no"; then
Sam Hocevar's avatar
   
Sam Hocevar committed
451
  AC_DEFINE(CAN_COMPILE_3DNOW, 1, Define if \$CC groks 3D Now! inline assembly.)
Sam Hocevar's avatar
   
Sam Hocevar committed
452
  ACCEL_MODULES="${ACCEL_MODULES} ${THREEDNOW_MODULES}"
453
fi
Sam Hocevar's avatar
   
Sam Hocevar committed
454

455
456
AC_CACHE_CHECK([if \$CC groks SSE inline assembly],
    [ac_cv_sse_inline],
Sam Hocevar's avatar
   
Sam Hocevar committed
457
    [AC_TRY_COMPILE(,[void *p;asm volatile("xorps %%xmm1,%%xmm2"::"r"(p));],
458
                    ac_cv_sse_inline=yes, ac_cv_sse_inline=no)])
Sam Hocevar's avatar
   
Sam Hocevar committed
459
if test x"$ac_cv_sse_inline" != x"no" -a x$SYS != xmingw32; then
Sam Hocevar's avatar
   
Sam Hocevar committed
460
  AC_DEFINE(CAN_COMPILE_SSE, 1, Define if \$CC groks SSE inline assembly.)
Sam Hocevar's avatar
   
Sam Hocevar committed
461
  ACCEL_MODULES="${ACCEL_MODULES} ${SSE_MODULES}"
462
fi
Sam Hocevar's avatar
   
Sam Hocevar committed
463

gbazin's avatar
   
gbazin committed
464
465
466
# don't try to grok altivec with native mingw32 it doesn't work right now
# we should be able to remove this test with future versions of mingw32
if test x$SYS != xmingw32; then
467
468
AC_CACHE_CHECK([if \$CC groks Altivec inline assembly],
    [ac_cv_altivec_inline],
Sam Hocevar's avatar
   
Sam Hocevar committed
469
    [AC_TRY_COMPILE(,[asm volatile("vperm 0,1,2,3");],
470
471
472
         ac_cv_altivec_inline=yes,
         [save_CFLAGS=$CFLAGS
          CFLAGS="$CFLAGS -Wa,-m7400"
Sam Hocevar's avatar
   
Sam Hocevar committed
473
          AC_TRY_COMPILE(,[asm volatile("vperm 0,1,2,3");],
474
            [ac_cv_altivec_inline="-Wa,-m7400"],
475
            ac_cv_altivec_inline=no)
476
477
          CFLAGS=$save_CFLAGS
         ])])
478
if test x"$ac_cv_altivec_inline" != x"no"; then
Sam Hocevar's avatar
   
Sam Hocevar committed
479
  AC_DEFINE(CAN_COMPILE_ALTIVEC, 1, Define if \$CC groks ALTIVEC inline assembly.)
480
  if test x"$ac_cv_altivec_inline" != x"yes"; then
Sam Hocevar's avatar
   
Sam Hocevar committed
481
482
483
484
    idctaltivec_CFLAGS="$idctaltivec_CFLAGS $ac_cv_altivec_inline"
    motionaltivec_CFLAGS="$motionaltivec_CFLAGS $ac_cv_altivec_inline"
    memcpyaltivec_CFLAGS="$memcpyaltivec_CFLAGS $ac_cv_altivec_inline"
    vlc_CFLAGS="$vlc_CFLAGS $ac_cv_altivec_inline"
485
  fi
486
  ACCEL_MODULES="${ACCEL_MODULES} ${ALTIVEC_MODULES}"
487
fi
488

489
490
AC_CACHE_CHECK([if \$CC groks Altivec C extensions],
    [ac_cv_c_altivec],
491
492
493
    [save_CFLAGS=$CFLAGS
     CFLAGS="$CFLAGS -faltivec"
     # Darwin test
Sam Hocevar's avatar
   
Sam Hocevar committed
494
     AC_TRY_COMPILE(,[vec_mtvscr((vector unsigned int)(0));],
495
496
        ac_cv_c_altivec=-faltivec, [
        # Linux/PPC test
Sam Hocevar's avatar
   
Sam Hocevar committed
497
        CFLAGS="$save_CFLAGS $idctaltivec_CFLAGS -fvec"
Sam Hocevar's avatar
   
Sam Hocevar committed
498
        AC_TRY_COMPILE(,[vec_mtvscr((vector unsigned int)(0));],
499
500
501
502
            [ac_cv_c_altivec="-fvec"], ac_cv_c_altivec=no)
        ])
     CFLAGS=$save_CFLAGS
    ])
503
if test x"$ac_cv_c_altivec" != x"no"; then
Sam Hocevar's avatar
   
Sam Hocevar committed
504
  AC_DEFINE(CAN_COMPILE_C_ALTIVEC, 1, Define if your compiler groks C altivec extensions.)
Sam Hocevar's avatar
   
Sam Hocevar committed
505
506
507
508
  idctaltivec_CFLAGS="$idctaltivec_CFLAGS $ac_cv_c_altivec"
  motionaltivec_CFLAGS="$motionaltivec_CFLAGS $ac_cv_c_altivec"
  memcpyaltivec_CFLAGS="$memcpyaltivec_CFLAGS $ac_cv_c_altivec"
  vlc_CFLAGS="$vlc_CFLAGS $ac_cv_c_altivec"
509
  ACCEL_MODULES="${ACCEL_MODULES} ${ALTIVEC_MODULES}"
510
511
512
513
514
515
516
517
518
519
fi

AC_CACHE_CHECK([if linker needs -framework vecLib],
    [ac_cv_ld_altivec],
    [save_LDFLAGS=$LDFLAGS
     LDFLAGS="$LDFLAGS -framework vecLib"
     AC_TRY_LINK([],,ac_cv_ld_altivec=yes,ac_cv_ld_altivec=no)
     LDFLAGS=$save_LDFLAGS
    ])
if test x"$ac_cv_ld_altivec" != x"no"; then
Sam Hocevar's avatar
   
Sam Hocevar committed
520
521
522
523
  idctaltivec_LDFLAGS="${idctaltivec_LDFLAGS} -framework vecLib"
  motionaltivec_LDFLAGS="${motionaltivec_LDFLAGS} -framework vecLib"
  memcpyaltivec_LDFLAGS="${memcpyaltivec_LDFLAGS} -framework vecLib"
  vlc_LDFLAGS="${vlc_LDFLAGS} -framework vecLib"
524
fi
gbazin's avatar
   
gbazin committed
525
fi # end if mingw32
526
527


Sam Hocevar's avatar
   
Sam Hocevar committed
528
529
530
AC_ARG_WITH(,[])
AC_ARG_WITH(,[Optimization options:])

Sam Hocevar's avatar
   
Sam Hocevar committed
531
dnl
532
dnl  Special arch tuning
Sam Hocevar's avatar
   
Sam Hocevar committed
533
dnl
534
AC_ARG_WITH(tuning,
Sam Hocevar's avatar
   
Sam Hocevar committed
535
[  --with-tuning=ARCH      enable special tuning for an architecture
536
                          (default i686 on IA-32 and 750 on PPC)])
537
538
if test "x$with_tuning" != "x"; then
    TUNING="$with_tuning"
539
else
540
    if test x${target_cpu} = xi686 -o x${target_cpu} = xi586 -o x${target_cpu} = xi486 -o x${target_cpu} = xi386; then TUNING="pentiumpro"
541
    else
542
        if test x${target_cpu} = xpowerpc; then TUNING="750"; fi
543
544
    fi
fi
Sam Hocevar's avatar
   
Sam Hocevar committed
545
546

dnl
Sam Hocevar's avatar
   
Sam Hocevar committed
547
dnl  x86 accelerations
Sam Hocevar's avatar
   
Sam Hocevar committed
548
dnl
Sam Hocevar's avatar
   
Sam Hocevar committed
549
550
551
552
553
if test x${target_cpu} = xi686 -o x${target_cpu} = xi586 -o x${target_cpu} = xx86 -o x${target_cpu} = xi386
then
    ARCH="${ARCH} mmx"
    BUILTINS="${BUILTINS} ${ACCEL_MODULES}"
fi
Sam Hocevar's avatar
   
Sam Hocevar committed
554

Sam Hocevar's avatar
   
Sam Hocevar committed
555
556
557
558
559
dnl
dnl  Enable/disable optimizations
dnl
AC_ARG_ENABLE(optimizations,
[  --disable-optimizations disable compiler optimizations (default enabled)],
560
[ if test x$enable_optimizations = xno; then OPTIMS=0; fi ],
Sam Hocevar's avatar
   
Sam Hocevar committed
561
562
[ OPTIMS=1 ])

Sam Hocevar's avatar
   
Sam Hocevar committed
563
564
565
dnl
dnl  AltiVec acceleration
dnl
566
AC_ARG_ENABLE(altivec,
Sam Hocevar's avatar
   
Sam Hocevar committed
567
[  --disable-altivec       disable altivec optimizations (default enabled on PPC)],
568
[ if test x$enable_altivec = xyes; then ARCH="${ARCH} altivec";
569
    BUILTINS="${BUILTINS} ${ACCEL_MODULES}"; fi ],
570
[ if test x${target_cpu} = xpowerpc; then ARCH="${ARCH} altivec";
571
    BUILTINS="${BUILTINS} ${ACCEL_MODULES}"; fi ])
Sam Hocevar's avatar
   
Sam Hocevar committed
572
573
574
575

dnl
dnl  Debugging mode
dnl
Sam Hocevar's avatar
   
Sam Hocevar committed
576
DEBUG=0
577
AC_ARG_ENABLE(debug,
Sam Hocevar's avatar
   
Sam Hocevar committed
578
[  --enable-debug          debug mode (default disabled)],
579
[ if test x$enable_debug = xyes; then DEBUG=1; fi ])
Sam Hocevar's avatar
   
Sam Hocevar committed
580

Sam Hocevar's avatar
   
Sam Hocevar committed
581
dnl
Sam Hocevar's avatar
   
Sam Hocevar committed
582
dnl  Enable release-specific flags
Sam Hocevar's avatar
   
Sam Hocevar committed
583
dnl
Sam Hocevar's avatar
   
Sam Hocevar committed
584
RELEASE=0
Sam Hocevar's avatar
   
Sam Hocevar committed
585
586
AC_ARG_ENABLE(release,
[  --enable-release        activate extra optimizations (default disabled)],
587
[ if test x$enable_release = xyes; then RELEASE=1; fi ],
Sam Hocevar's avatar
   
Sam Hocevar committed
588
[ VERSION="${VERSION}_`date +%Y-%m-%d`" ])
Sam Hocevar's avatar
   
Sam Hocevar committed
589

Sam Hocevar's avatar
   
Sam Hocevar committed
590
dnl
Sam Hocevar's avatar
   
Sam Hocevar committed
591
dnl  Input plugins
Sam Hocevar's avatar
   
Sam Hocevar committed
592
593
dnl

Sam Hocevar's avatar
   
Sam Hocevar committed
594
AC_ARG_WITH(,[Input plugins:])
Sam Hocevar's avatar
   
Sam Hocevar committed
595
596

dnl
Sam Hocevar's avatar
   
Sam Hocevar committed
597
598
599
600
dnl  DVD module: optionally check for installed libdvdcss
dnl
AC_ARG_ENABLE(dvd,
[  --enable-dvd            DVD input module (default enabled)])
601
if test "x$enable_dvd" != "xno"
Sam Hocevar's avatar
   
Sam Hocevar committed
602
603
604
then
  AC_ARG_WITH(dvdcss, 
  [    --with-dvdcss=PATH    libdvdcss headers and libraries])
Sam Hocevar's avatar
   
Sam Hocevar committed
605
606
  AC_ARG_WITH(dvdcss-tree, 
  [    --with-dvdcss-tree=PATH libdvdcss tree for static linking])
Sam Hocevar's avatar
   
Sam Hocevar committed
607
  case "x$with_dvdcss" in
Sam Hocevar's avatar
   
Sam Hocevar committed
608
  x|xyes)
Sam Hocevar's avatar
   
Sam Hocevar committed
609
610
611
612
    if test "x$with_dvdcss_tree" = x
    then
      AC_CHECK_HEADERS(dvdcss/dvdcss.h,
        [ PLUGINS="${PLUGINS} dvd"
Sam Hocevar's avatar
   
Sam Hocevar committed
613
          dvd_LDFLAGS="${dvd_LDFLAGS} -ldvdcss" ],
Sam Hocevar's avatar
   
Sam Hocevar committed
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
        [ AC_MSG_WARN([libdvdcss is no longer provided with vlc; please get libdvdcss from http://www.videolan.org/libdvdcss/ and build it. Then either use --with-dvdcss=<path/where/libdvdcss/was/installed> for dynamic linking (recommended under Unix) or --with-dvdcss-tree=<path/where/libdvdcss/was/built> for static linking (recommended under BeOS, Windows, MacOS X). Alternatively you can use --disable-dvd to disable the DVD plugin.])
          AC_MSG_ERROR([cannot find libdvdcss headers]) ])
    else
      AC_MSG_CHECKING(for libdvdcss.a in ${with_dvdcss_tree})
      real_dvdcss_tree="`cd ${with_dvdcss_tree} 2>/dev/null && pwd`"
      if test "x$real_dvdcss_tree" = x
      then
        dnl  The given directory can't be found
        AC_MSG_RESULT(no)
        AC_MSG_ERROR([cannot cd to ${with_dvdcss_tree}])
      fi
      if test -f "${real_dvdcss_tree}/src/.libs/libdvdcss.a"
      then
        dnl  Use a custom libdvdcss
        AC_MSG_RESULT(${real_dvdcss_tree}/src/.libs/libdvdcss.a)
        BUILTINS="${BUILTINS} dvd"
Sam Hocevar's avatar
   
Sam Hocevar committed
630
631
        dvd_LDFLAGS="${dvd_LDFLAGS} ${real_dvdcss_tree}/src/.libs/libdvdcss.a"
        dvd_CFLAGS="${dvd_CFLAGS} -I${real_dvdcss_tree}/src"
Sam Hocevar's avatar
   
Sam Hocevar committed
632
633
634
635
636
637
      else
        dnl  The given libdvdcss wasn't built
        AC_MSG_RESULT(no)
        AC_MSG_ERROR([cannot find ${real_dvdcss_tree}/src/.libs/libdvdcss.a, make sure you compiled libdvdcss in ${with_dvdcss_tree}])
      fi
    fi
Sam Hocevar's avatar
   
Sam Hocevar committed
638
639
  ;;
  xno)
Sam Hocevar's avatar
   
Sam Hocevar committed
640
    dnl  Compile without dvdcss (dlopen version, works only under Linux)
Sam Hocevar's avatar
   
Sam Hocevar committed
641
    PLUGINS="${PLUGINS} dvd"
Sam Hocevar's avatar
   
Sam Hocevar committed
642
643
    dvd_CFLAGS="${dvd_CFLAGS} -DGOD_DAMN_DMCA"
    dvd_LDFLAGS="${dvd_LDFLAGS} -ldl"
Sam Hocevar's avatar
   
Sam Hocevar committed
644
645
  ;;
  *)
Sam Hocevar's avatar
   
Sam Hocevar committed
646
647
    AC_MSG_CHECKING(for dvdcss headers in ${with_dvdcss})
    if test -f ${with_dvdcss}/include/dvdcss/dvdcss.h
Sam Hocevar's avatar
   
Sam Hocevar committed
648
    then
Sam Hocevar's avatar
   
Sam Hocevar committed
649
      dnl  Use ${with_dvdcss}/include/dvdcss/dvdcss.h
Sam Hocevar's avatar
   
Sam Hocevar committed
650
      AC_MSG_RESULT(yes)
Sam Hocevar's avatar
   
Sam Hocevar committed
651
      PLUGINS="${PLUGINS} dvd"
Sam Hocevar's avatar
   
Sam Hocevar committed
652
653
      dvd_LDFLAGS="${dvd_LDFLAGS} -L${with_dvdcss}/lib -ldvdcss"
      dvd_CFLAGS="${dvd_CFLAGS} -I${with_dvdcss}/include"
Sam Hocevar's avatar
   
Sam Hocevar committed
654
    else
Sam Hocevar's avatar
   
Sam Hocevar committed
655
      dnl  No libdvdcss could be found, sorry
Sam Hocevar's avatar
   
Sam Hocevar committed
656
      AC_MSG_RESULT(no)
Sam Hocevar's avatar
   
Sam Hocevar committed
657
      AC_MSG_ERROR([cannot find ${with_dvdcss}/include/dvdcss/dvdcss.h])
Sam Hocevar's avatar
   
Sam Hocevar committed
658
659
660
661
    fi
  ;;
  esac
fi
Sam Hocevar's avatar
   
Sam Hocevar committed
662

Stéphane Borel's avatar
Stéphane Borel committed
663
dnl
Sam Hocevar's avatar
   
Sam Hocevar committed
664
dnl dvdread module: check for libdvdread plugin
Stéphane Borel's avatar
Stéphane Borel committed
665
dnl
Sam Hocevar's avatar
   
Sam Hocevar committed
666
667
AC_ARG_ENABLE(dvdread,
[  --enable-dvdread        dvdread input module (default disabled)])
Sam Hocevar's avatar
   
Sam Hocevar committed
668
if test "x$enable_dvdread" != "xno"
Sam Hocevar's avatar
   
Sam Hocevar committed
669
670
671
then
  AC_ARG_WITH(dvdread, 
  [    --with-dvdread=PATH   libdvdread headers and libraries])
672
  if test "x$with_dvdread" = x
Sam Hocevar's avatar
   
Sam Hocevar committed
673
674
675
676
  then
    test_LDFLAGS=""
    test_CFLAGS=""
  else
677
678
    test_LDFLAGS="-L${with_dvdread}/lib"
    test_CFLAGS="-I${with_dvdread}/include"
Sam Hocevar's avatar
   
Sam Hocevar committed
679
680
681
682
683
684
685
686
687
  fi
  CPPFLAGS="$save_CPPFLAGS $test_CFLAGS"
  AC_CHECK_HEADERS(dvdread/dvd_reader.h, [
     AC_TRY_COMPILE([#include <dvdread/dvd_reader.h>],
        [void foo() { int i=DVD_VIDEO_LB_LEN; }],[
          PLUGINS="${PLUGINS} dvdread"
          dvdread_LDFLAGS="${dvdread_LDFLAGS} ${test_LDFLAGS} -ldvdread"
          dvdread_CFLAGS="${dvdread_CFLAGS} ${test_CFLAGS}"
        ],[
Sam Hocevar's avatar
   
Sam Hocevar committed
688
          if test "x$enable_dvdread" != x
Sam Hocevar's avatar
   
Sam Hocevar committed
689
690
691
692
693
          then
            AC_MSG_ERROR([Cannot find DVD_VIDEO_LB_LEN in dvdread/dvd_reader.h, please install libdvdread version 0.9.2 or later])
          fi
        ])
  ],[
Sam Hocevar's avatar
   
Sam Hocevar committed
694
    if test "x$enable_dvdread" != x
695
    then
696
      if test "x$with_dvdread" != x
Sam Hocevar's avatar
   
Sam Hocevar committed
697
      then
698
        AC_MSG_ERROR([Cannot find dvdread/dvd_reader.h in ${with_dvdread}/include])
Sam Hocevar's avatar
   
Sam Hocevar committed
699
700
701
      else
        AC_MSG_ERROR([Cannot find dvdread/dvd_reader.h])
      fi
Sam Hocevar's avatar
   
Sam Hocevar committed
702
    fi
Sam Hocevar's avatar
   
Sam Hocevar committed
703
704
  ])
  CPPFLAGS="$save_CPPFLAGS"
Sam Hocevar's avatar
   
Sam Hocevar committed
705
fi
Stéphane Borel's avatar
Stéphane Borel committed
706

707
708
709
710
711
dnl
dnl  libdvbpsi ts demux
dnl
AC_ARG_ENABLE(dvbpsi,
[  --enable-dvbpsi        dvbpsi ts demux module (default disabled)])
712
if test "x$enable_dvbpsi" != "xno"
713
then
714
715
  AC_ARG_WITH(dvbpsi, 
  [    --with-dvbpsi=PATH    libdvbpsi headers and libraries])
716
  if test "x$with_dvbpsi" = x
717
718
719
720
  then
    test_LDFLAGS=""
    test_CFLAGS=""
  else
721
722
    test_LDFLAGS="-L${with_dvbpsi}/lib"
    test_CFLAGS="-I${with_dvbpsi}/include"
723
724
  fi
  CPPFLAGS="$save_CPPFLAGS $test_CFLAGS"
725
  AC_CHECK_HEADER([dvbpsi/dr.h],[
726
727
728
729
730
731
    PLUGINS="${PLUGINS} mpeg_ts_dvbpsi"
    mpeg_ts_dvbpsi_LDFLAGS="${mpeg_ts_dvbpsi_LDFLAGS} ${test_LDFLAGS} -ldvbpsi"
    mpeg_ts_dvbpsi_CFLAGS="${mpeg_ts_dvbpsi_CFLAGS} ${test_CFLAGS}"
    ],[
    if test "x$enable_dvbpsi" != x
    then
732
      AC_MSG_ERROR([Could not find libdvbpsi on your system: you may get it from www.videolan.org, you'll need at least version 0.1.1])
733
734
735
736
737
    fi
  ])
  CPPFLAGS="$save_CPPFLAGS"
fi
 
738
dnl
Sam Hocevar's avatar
   
Sam Hocevar committed
739
dnl  VCD module
740
741
dnl
AC_ARG_ENABLE(vcd,
742
  [  --enable-vcd            VCD support for Linux, FreeBSD and MacOS X (default enabled)])
743

Sam Hocevar's avatar
   
Sam Hocevar committed
744
745
746
if test x$enable_vcd != xno
then
  AC_EGREP_HEADER(cdrom_msf0,linux/cdrom.h,[
Sam Hocevar's avatar
   
Sam Hocevar committed
747
    PLUGINS="${PLUGINS} vcd"
Sam Hocevar's avatar
   
Sam Hocevar committed
748
  ])
749
750
  
  AC_EGREP_HEADER(ioc_toc_header ,sys/cdio.h,[
751
    PLUGINS="${PLUGINS} vcd"
752
753
    AC_DEFINE(HAVE_IOC_TOC_HEADER_IN_SYS_CDIO_H, 1, For FreeBSD VCD support)
  ])
754
  
Sam Hocevar's avatar
   
Sam Hocevar committed
755
756
757
758
  if test "x${SYS}" = "xbsdi"
  then
    PLUGINS="${PLUGINS} vcd"
  fi
759

Sam Hocevar's avatar
   
Sam Hocevar committed
760
761
  if test "x${SYS}" = "xdarwin"
  then
762
    # No need to add vcd to PLUGINS, Darwin is already based on FreeBSD
Sam Hocevar's avatar
   
Sam Hocevar committed
763
    vcd_LDFLAGS="${vcd_LDFLAGS} -framework IOKit -framework CoreFoundation" 
Sam Hocevar's avatar
   
Sam Hocevar committed
764
  fi
Jon Lech Johansen's avatar
Jon Lech Johansen committed
765
766
fi

Johan Bilien's avatar
Johan Bilien committed
767
768
769
770
dnl
dnl  Satellite input module
dnl
AC_ARG_ENABLE(satellite,
Sam Hocevar's avatar
   
Sam Hocevar committed
771
  [  --enable-satellite      satellite card support (default disabled)],
Johan Bilien's avatar
Johan Bilien committed
772
773
  [ if test x$enable_satellite = xyes
    then
774
      PLUGINS="${PLUGINS} satellite"
Johan Bilien's avatar
Johan Bilien committed
775
776
    fi])

777
dnl
778
dnl  ipv6 plugin - not for QNX yet
779
dnl
780
781
782
783
if test x$SYS != xnto
then
  AC_CHECK_FUNC(inet_pton,[PLUGINS="${PLUGINS} ipv6"])
fi
784

785
786
787
788
789
790
791
792
793
794
dnl
dnl  AVI demux plugin
dnl
AC_ARG_ENABLE(avi,
  [  --enable-avi            AVI demux module (default enabled)])
if test x$enable_avi != xno
then
  PLUGINS="${PLUGINS} avi"
fi

Sam Hocevar's avatar
   
Sam Hocevar committed
795
dnl
Sam Hocevar's avatar
   
Sam Hocevar committed
796
dnl  Codec plugins
Sam Hocevar's avatar
   
Sam Hocevar committed
797
dnl
Sam Hocevar's avatar
   
Sam Hocevar committed
798

Sam Hocevar's avatar
   
Sam Hocevar committed
799
AC_ARG_WITH(,[Codec plugins:])
Sam Hocevar's avatar
   
Sam Hocevar committed
800

801
dnl
Sam Hocevar's avatar
   
Sam Hocevar committed
802
dnl  mad plugin
803
dnl
Sam Hocevar's avatar
   
Sam Hocevar committed
804
805
AC_ARG_ENABLE(mad,
  [  --enable-mad            libmad module (default disabled)])
Sam Hocevar's avatar
   
Sam Hocevar committed
806
if test x$enable_mad = xyes
Sam Hocevar's avatar
   
Sam Hocevar committed
807
808
then
  AC_ARG_WITH(mad,
gbazin's avatar
   
gbazin committed
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
    [    --with-mad=PATH       path to libmad],[],[])
  if test "x$with_mad" != "xno" -a "x$with_mad" != "x"
  then
    mad_CFLAGS="${mad_CFLAGS} -I$with_mad/include"
    mad_LDFLAGS="${mad_LDFLAGS} -L$with_mad/lib"
  fi

  AC_ARG_WITH(mad-tree,
    [    --with-mad-tree=PATH  mad tree for static linking],[],[])
  if test "x$with_mad_tree" != "xno" -a "x$with_mad_tree" != "x"
  then
    real_mad_tree="`cd ${with_mad_tree} 2>/dev/null && pwd`"
    if test "x$real_mad_tree" = x
    then
      dnl  The given directory can't be found
      AC_MSG_RESULT(no)
      AC_MSG_ERROR([${with_mad_tree} directory doesn't exist])
    fi
    dnl  Use a custom libmad
    AC_MSG_CHECKING(for mad.h in ${real_mad_tree}/libmad)
    if test -f ${real_mad_tree}/libmad/mad.h
    then
      AC_MSG_RESULT(yes)
      mad_CFLAGS="${mad_CFLAGS} -I${real_mad_tree}/libmad"
      mad_LDFLAGS="${mad_LDFLAGS} -L${real_mad_tree}/libmad/.libs"
      save_LDFLAGS=$LDFLAGS
      LDFLAGS=$mad_LDFLAGS
      AC_CHECK_LIB(mad, mad_bit_init, [
        BUILTINS="${BUILTINS} mad"
        mad_LDFLAGS="${mad_LDFLAGS} -lmad"
        ],[ AC_MSG_ERROR([the specified tree hasn't been compiled ])
      ],[])
      LDFLAGS=$save_LDFLAGS
    else
      AC_MSG_RESULT(no)
      AC_MSG_ERROR([the specified tree doesn't have mad.h])
    fi
  else
    save_CFLAGS=$CFLAGS
    save_LDFLAGS=$LDFLAGS
    CFLAGS="$CFLAGS $mad_CFLAGS"
    LDFLAGS="$LDFLAGS $mad_LDFLAGS"
    AC_CHECK_HEADERS(mad.h, ,
      [ AC_MSG_ERROR([Cannot find development headers for libmad...]) ])
    AC_CHECK_LIB(mad, mad_bit_init,
      PLUGINS="${PLUGINS} mad"
      mad_LDFLAGS="${mad_LDFLAGS} -lmad",
      [ AC_MSG_ERROR([Cannot find libmad library...]) ])
    CFLAGS=$save_CFLAGS
    LDFLAGS=$save_LDFLAGS
  fi
Sam Hocevar's avatar
   
Sam Hocevar committed
860
fi
861

862
863
864
865
866
dnl
dnl  ffmpeg decoder plugin
dnl
AC_ARG_ENABLE(ffmpeg,
[  --enable-ffmpeg         ffmpeg codec (default disabled)])
867
if test "x$enable_ffmpeg" = "xyes"
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
then
  AC_ARG_WITH(ffmpeg-tree, 
  [    --with-ffmpeg-tree=PATH ffmpeg tree for static linking])
  if test "x$with_ffmpeg_tree" = x
  then
    AC_MSG_ERROR([cannot find ${real_ffmpeg_tree}/libavcodec/libavcodec.a])
  else
    AC_MSG_CHECKING(for libavcodec.a in ${with_ffmpeg_tree})
    real_ffmpeg_tree="`cd ${with_ffmpeg_tree} 2>/dev/null && pwd`"
    if test "x$real_ffmpeg_tree" = x
    then
      dnl  The given directory can't be found
      AC_MSG_RESULT(no)
      AC_MSG_ERROR([cannot cd to ${with_ffmpeg_tree}])
    fi
    if test -f "${real_ffmpeg_tree}/libavcodec/libavcodec.a"
    then
      dnl  Use a custom libffmpeg
      AC_MSG_RESULT(${real_ffmpeg_tree}/libavcodec/libavcodec.a)
      BUILTINS="${BUILTINS} ffmpeg"
      ffmpeg_LDFLAGS="${ffmpeg_LDFLAGS} ${real_ffmpeg_tree}/libavcodec/libavcodec.a"
      ffmpeg_CFLAGS="${ffmpeg_CFLAGS} -I${real_ffmpeg_tree}/libavcodec"
    else
      dnl  The given libavcodec wasn't built
      AC_MSG_RESULT(no)
      AC_MSG_ERROR([cannot find ${real_ffmpeg_tree}/libavcodec/libavcodec.a, make sure you compiled libavcodec in ${with_ffmpeg_tree}])
    fi
  fi
fi


Sam Hocevar's avatar
   
Sam Hocevar committed
899
dnl special case for BeOS
Sam Hocevar's avatar
   
Sam Hocevar committed
900
901
if test x$SYS = xbeos
then
Sam Hocevar's avatar
   
Sam Hocevar committed
902
    PLUGINS="${PLUGINS} beos"
Sam Hocevar's avatar
   
Sam Hocevar committed
903
fi
904

gbazin's avatar
   
gbazin committed
905
dnl
gbazin's avatar
   
gbazin committed
906
dnl  a52 AC3 decoder plugin
gbazin's avatar
   
gbazin committed
907
dnl
gbazin's avatar
   
gbazin committed
908
AC_ARG_ENABLE(a52,
Sam Hocevar's avatar
   
Sam Hocevar committed
909
  [  --enable-a52            AC3 support with liba52 (default enabled)])
gbazin's avatar
   
gbazin committed
910
911
912
913
914
if test "x$enable_a52" != "xno"
then
  AC_ARG_WITH(a52-tree,
    [    --with-a52-tree=PATH  a52dec tree for static linking ],[],[])
  if test "x$with_a52_tree" != "xno" -a "x$with_a52_tree" != "x"
gbazin's avatar
   
gbazin committed
915
  then
gbazin's avatar
   
gbazin committed
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
    real_a52_tree="`cd ${with_a52_tree} 2>/dev/null && pwd`"
    if test "x$real_a52_tree" = x
    then
      dnl  The given directory can't be found
      AC_MSG_RESULT(no)
      AC_MSG_ERROR([${with_a52_tree} directory doesn't exist])
    fi
    dnl  Use a custom a52dec
    AC_MSG_CHECKING(for a52.h in ${real_a52_tree}/include)
    if test -f ${real_a52_tree}/include/a52.h
    then
      AC_MSG_RESULT(yes)
      a52_CFLAGS="${a52_CFLAGS} -I${real_a52_tree}"
      a52_LDFLAGS="${a52_LDFLAGS} -L${real_a52_tree}/liba52/.libs"
      save_LDFLAGS=$LDFLAGS
      LDFLAGS="$a52_LDFLAGS $LDFLAGS"
      AC_CHECK_LIB(a52, a52_free, [
        BUILTINS="${BUILTINS} a52"
        a52_LDFLAGS="${a52_LDFLAGS} -la52 -lm"
        a52_CFLAGS="${a52_CFLAGS} -DUSE_A52DEC_TREE"
        ],[
        if test -f ${real_a52_tree}/liba52/.libs/liba52.a
        then
          AC_MSG_ERROR([make sure you have at least a52dec-0.7.3])
        else
          AC_MSG_ERROR([the specified tree hasn't been compiled])
        fi
      ],[-lm])
      LDFLAGS=$save_LDFLAGS
    else
      AC_MSG_RESULT(no)
      AC_MSG_ERROR([the specified tree doesn't have a52.h])
    fi
  else dnl  no with args
950
    AC_CHECK_HEADERS(a52dec/a52.h, [
gbazin's avatar
   
gbazin committed
951
952
953
954
955
956
957
      AC_CHECK_LIB(a52, a52_free, [
        BUILTINS="${BUILTINS} a52"
        a52_LDFLAGS="${a52_LDFLAGS} -la52 -lm"
        a52_CFLAGS="${a52_CFLAGS}"
      ],[],[-lm])
    ])
  fi
gbazin's avatar
   
gbazin committed
958
959
fi

Sam Hocevar's avatar
   
Sam Hocevar committed
960
961
962
963
dnl
dnl  ogg vorbis plugin
dnl
AC_ARG_ENABLE(vorbis,
Sam Hocevar's avatar
   
Sam Hocevar committed
964
  [  --enable-vorbis         Ogg/Vorbis decoder support (default enabled)])
965
if test "x$enable_vorbis" != "xno"
Sam Hocevar's avatar
   
Sam Hocevar committed
966
967
then
  AC_CHECK_HEADERS(ogg/ogg.h, [
968
969
    dnl disabled for the moment
    #PLUGINS="${PLUGINS} vorbis"
Sam Hocevar's avatar
   
Sam Hocevar committed
970
    vorbis_LDFLAGS="${vorbis_LDFLAGS} -lvorbis"
Sam Hocevar's avatar
   
Sam Hocevar committed
971
972
973
   ],[])
fi

Sam Hocevar's avatar
   
Sam Hocevar committed
974
dnl
Sam Hocevar's avatar
   
Sam Hocevar committed
975
dnl  Video plugins
Sam Hocevar's avatar
   
Sam Hocevar committed
976
977
dnl

Sam Hocevar's avatar
   
Sam Hocevar committed
978
AC_ARG_WITH(,[Video plugins:])
Sam Hocevar's avatar
   
Sam Hocevar committed
979

Sam Hocevar's avatar
   
Sam Hocevar committed
980
dnl
Sam Hocevar's avatar
   
Sam Hocevar committed
981
982
dnl  X11 module
dnl  (enabled by default except on win32)
Sam Hocevar's avatar
   
Sam Hocevar committed
983
dnl
Sam Hocevar's avatar
   
Sam Hocevar committed
984
AC_ARG_ENABLE(x11,
Sam Hocevar's avatar
   
Sam Hocevar committed
985
  [  --enable-x11            X11 support (default enabled)])
Sam Hocevar's avatar
   
Sam Hocevar committed
986
987
988
989
990
991
992
993
if test x$enable_x11 != xno &&
  (test x$SYS != xmingw32 || test x$enable_x11 = xyes); then
  if test x$x_includes = xNONE; then
    x_includes=/usr/X11R6/include
  fi
  if test x$x_libraries = xNONE; then
    x_libraries=/usr/X11R6/lib
  fi
Sam Hocevar's avatar
   
Sam Hocevar committed
994
  CPPFLAGS="$save_CPPFLAGS -I$x_includes"
Sam Hocevar's avatar
   
Sam Hocevar committed
995
996
  AC_CHECK_HEADERS(X11/Xlib.h, [
    PLUGINS="${PLUGINS} x11"
Sam Hocevar's avatar
   
Sam Hocevar committed
997
998
    x11_LDFLAGS="${x11_LDFLAGS} -L$x_libraries -lX11 -lXext"
    x11_CFLAGS="${x11_CFLAGS} -I$x_includes"
Sam Hocevar's avatar
   
Sam Hocevar committed
999
  ])
Sam Hocevar's avatar
   
Sam Hocevar committed
1000
  CPPFLAGS="$save_CPPFLAGS"
Sam Hocevar's avatar
   
Sam Hocevar committed
1001
1002
1003
1004
1005
1006
1007
fi

dnl
dnl  XVideo module
dnl  (enabled by default except on win32)
dnl
AC_ARG_ENABLE(xvideo,
Sam Hocevar's avatar
   
Sam Hocevar committed
1008
  [  --enable-xvideo         XVideo support (default enabled)])
Sam Hocevar's avatar
   
Sam Hocevar committed
1009
1010
1011
1012
1013
1014
1015
1016
if test x$enable_xvideo != xno &&
  (test x$SYS != xmingw32 || test x$enable_xvideo = xyes); then
  if test x$x_includes = xNONE; then
    x_includes=/usr/X11R6/include
  fi
  if test x$x_libraries = xNONE; then
    x_libraries=/usr/X11R6/lib
  fi
Sam Hocevar's avatar
   
Sam Hocevar committed
1017
1018
  save_CPPFLAGS=$CPPFLAGS
  CPPFLAGS="$save_CPPFLAGS -I$x_includes"
Sam Hocevar's avatar
   
Sam Hocevar committed
1019
  AC_CHECK_HEADERS(X11/extensions/Xv.h, [
Sam Hocevar's avatar
   
Sam Hocevar committed
1020
    save_CFLAGS=$CFLAGS
Sam Hocevar's avatar
   
Sam Hocevar committed
1021
1022
1023
1024
    CFLAGS="$CFLAGS -L$x_libraries -lX11 -lXext"
    AC_CHECK_LIB(Xv_pic,XvSetPortAttribute,
      # We have Xv_pic, that's good, we can build an xvideo.so plugin !
      PLUGINS="${PLUGINS} xvideo"
Sam Hocevar's avatar
   
Sam Hocevar committed
1025
1026
      xvideo_LDFLAGS="${xvideo_LDFLAGS} -L$x_libraries -lX11 -lXext -lXv_pic"
      xvideo_CFLAGS="${xvideo_CFLAGS} -I$x_includes",
Sam Hocevar's avatar
   
Sam Hocevar committed
1027
1028
      # We don't have Xv_pic, let's make xvideo.a as builtin
      BUILTINS="${BUILTINS} xvideo"
Sam Hocevar's avatar
   
Sam Hocevar committed
1029
1030
1031
      xvideo_LDFLAGS="${xvideo_LDFLAGS} -L$x_libraries -lX11 -lXext -lXv"
      xvideo_CFLAGS="${xvideo_CFLAGS} -I$x_includes")
    CFLAGS="$save_CFLAGS"
Sam Hocevar's avatar
   
Sam Hocevar committed
1032
  ]
Sam Hocevar's avatar
   
Sam Hocevar committed
1033
  CPPFLAGS="$save_CPPFLAGS")
Sam Hocevar's avatar
   
Sam Hocevar committed
1034
fi
Sam Hocevar's avatar
   
Sam Hocevar committed
1035
1036
1037
1038

dnl
dnl  SDL module
dnl
1039
AC_ARG_ENABLE(sdl,
Sam Hocevar's avatar
   
Sam Hocevar committed
1040
  [  --enable-sdl            SDL support (default enabled)])
1041
if test "x$enable_sdl" != "xno"
1042
then
1043
1044
  SDL_PATH=$PATH
  AC_ARG_WITH(sdl-config-path,
Sam Hocevar's avatar
   
Sam Hocevar committed
1045
    [    --with-sdl-config-path=PATH sdl-config path (default search in \$PATH)],
gbazin's avatar
   
gbazin committed
1046
    [ if test "x$with_sdl_config_path" != "xno"
1047
      then
gbazin's avatar
   
gbazin committed
1048
        SDL_PATH="$with_sdl_config_path:$PATH"
1049
1050
      fi ])
  AC_PATH_PROG(SDL12_CONFIG, sdl12-config, no, $SDL_PATH)
1051
1052
  SDL_CONFIG=${SDL12_CONFIG}
  SDL_HEADER="SDL12/SDL.h"
Sam Hocevar's avatar
   
Sam Hocevar committed
1053
1054
  if test x${SDL_CONFIG} = xno
  then
1055
    AC_PATH_PROG(SDL11_CONFIG, sdl11-config, no, $SDL_PATH)
Sam Hocevar's avatar
   
Sam Hocevar committed
1056
    SDL_CONFIG=${SDL11_CONFIG}
1057
1058
    SDL_HEADER="SDL11/SDL.h"
  fi
Sam Hocevar's avatar
   
Sam Hocevar committed
1059
1060
  if test x${SDL_CONFIG} = xno
  then
1061
    AC_PATH_PROG(SDL_CONFIG, sdl-config, no, $SDL_PATH)
1062
    SDL_HEADER="SDL/SDL.h"
1063
  fi
Sam Hocevar's avatar
   
Sam Hocevar committed
1064
1065
  if test x${SDL_CONFIG} != xno
  then
1066
    PLUGINS="${PLUGINS} sdl"
Sam Hocevar's avatar
   
Sam Hocevar committed
1067
1068
1069
    sdl_CFLAGS="${sdl_CFLAGS} `${SDL_CONFIG} --cflags`"
    sdl_LDFLAGS="${sdl_LDFLAGS} `${SDL_CONFIG} --libs | sed 's,-rdynamic,,'`"
    CPPFLAGS="$save_CPPFLAGS $sdl_CFLAGS"
1070
1071
    AC_CHECK_HEADERS(${SDL_HEADER}, AC_DEFINE_UNQUOTED(SDL_INCLUDE_FILE,
      <${SDL_HEADER}>, Indicate whether we should use SDL/SDL.h or SDL11/SDL.h),
1072
1073
1074
1075
      [ AC_MSG_ERROR([The development package for SDL is not installed. 
Please install it and try again. Alternatively you can also configure with 
--disable-sdl.])
      ])
Sam Hocevar's avatar
   
Sam Hocevar committed
1076
    CPPFLAGS="$save_CPPFLAGS"
Sam Hocevar's avatar
   
Sam Hocevar committed
1077
    if expr 1.1.5 \> `$SDL_CONFIG --version` >/dev/null
Sam Hocevar's avatar
   
Sam Hocevar committed
1078
    then
1079
1080
1081
      AC_MSG_ERROR([The development package for SDL is not installed.
Please install it and try again. Alternatively you can also configure with
--disable-sdl.])
Sam Hocevar's avatar
   
Sam Hocevar committed
1082
    fi
1083
  elif test "x$enable_sdl" =  "xyes"
Sam Hocevar's avatar
   
Sam Hocevar committed
1084
  then
1085
1086
1087
    AC_MSG_ERROR([I couldn't find the SDL package. You can download libSDL
from http://www.libsdl.org/, or configure with --disable-sdl. Have a nice day.
    ])
1088
1089
  fi
fi
Sam Hocevar's avatar
   
Sam Hocevar committed
1090

Sam Hocevar's avatar
   
Sam Hocevar committed
1091
1092
1093
dnl
dnl  Windows DirectX module
dnl
1094
AC_ARG_ENABLE(directx,
Sam Hocevar's avatar
   
Sam Hocevar committed
1095
  [  --enable-directx        Win32 DirectX support (default enabled on Win32)])
1096
if test "x$enable_directx" != "xno"
1097
then
Sam Hocevar's avatar
   
Sam Hocevar committed
1098
  if test x$SYS = xmingw32
1099
  then
Xavier Marchesini's avatar
   
Xavier Marchesini committed
1100
    AC_ARG_WITH(directx, 
Sam Hocevar's avatar
   
Sam Hocevar committed
1101
1102
    [    --with-directx=PATH   Win32 DirectX headers and libraries])
    if test "x$with_directx" = "x"
Sam Hocevar's avatar
   
Sam Hocevar committed
1103
    then
gbazin's avatar
   
gbazin committed
1104
      AC_CHECK_HEADERS(ddraw.h,
1105
      [ PLUGINS="${PLUGINS} directx"
Sam Hocevar's avatar
   
Sam Hocevar committed
1106
        directx_LDFLAGS="${directx_LDFLAGS} -lgdi32" ])
1107
    else
1108
1109
      AC_MSG_CHECKING(for directX headers in ${with_directx})
      if test -f ${with_directx}/ddraw.h
gbazin's avatar
   
gbazin committed
1110
      then
1111
        PLUGINS="${PLUGINS} directx"
1112
1113
        directx_LDFLAGS="${directx_LDFLAGS} -L${with_directx}/lib -lgdi32"
        directx_CFLAGS="${directx_CFLAGS} -I${with_directx}"
1114
        AC_MSG_RESULT(yes)
gbazin's avatar
   
gbazin committed
1115
      else
1116
        AC_MSG_RESULT(no)
1117
        AC_MSG_ERROR([Cannot find ${with_directx}/ddraw.h!])
gbazin's avatar
   
gbazin committed
1118
      fi
1119
1120
1121
    fi
  fi
fi
Sam Hocevar's avatar
   
Sam Hocevar committed
1122

gbazin's avatar
   
gbazin committed
1123
dnl
Sam Hocevar's avatar
   
Sam Hocevar committed
1124
dnl  Linux framebuffer module
gbazin's avatar
   
gbazin committed
1125
dnl
Sam Hocevar's avatar
   
Sam Hocevar committed
1126
1127
1128
1129
1130
1131
1132
1133
AC_ARG_ENABLE(fb,
  [  --enable-fb             Linux framebuffer support (default enabled on Linux)])
    if test x$enable_fb != xno
    then
      AC_CHECK_HEADERS(linux/fb.h, [
        PLUGINS="${PLUGINS} fb"
      ])
    fi
gbazin's avatar
   
gbazin committed
1134

Sam Hocevar's avatar
   
Sam Hocevar committed
1135
dnl
Sam Hocevar's avatar
   
Sam Hocevar committed
1136
dnl  Linux MGA module
Sam Hocevar's avatar
   
Sam Hocevar committed
1137
dnl
Sam Hocevar's avatar
   
Sam Hocevar committed
1138
1139
1140
AC_ARG_ENABLE(mga,
  [  --enable-mga            Linux kernel Matrox support (default disabled)],
  [ if test x$enable_mga = xyes
Sam Hocevar's avatar
   
Sam Hocevar committed
1141
    then
Sam Hocevar's avatar
   
Sam Hocevar committed
1142
      PLUGINS="${PLUGINS} mga xmga"
Sam Hocevar's avatar
   
Sam Hocevar committed
1143
    fi ])