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

5
AC_CANONICAL_SYSTEM
6

Sam Hocevar's avatar
 
Sam Hocevar committed
7 8 9
HAVE_VLC=0
if test -r src/interface/main.c; then
  HAVE_VLC=1
10
  VLC_VERSION="0.2.92-dev"
Sam Hocevar's avatar
 
Sam Hocevar committed
11 12 13 14 15 16 17 18
  AC_SUBST(VLC_VERSION)
  VLC_CODENAME=Ourumov
  AC_SUBST(VLC_CODENAME)
fi

HAVE_LIBDVDCSS=0
if test -r extras/libdvdcss/libdvdcss.c; then
  HAVE_LIBDVDCSS=1
19
  LIBDVDCSS_VERSION="1.0.1-dev"
Sam Hocevar's avatar
 
Sam Hocevar committed
20
  AC_SUBST(LIBDVDCSS_VERSION)
21 22 23
  if test -r extras/libdvdcss/csskeys.h; then
    AC_DEFINE(HAVE_CSSKEYS,1,css decryption with player keys)
  fi
Sam Hocevar's avatar
 
Sam Hocevar committed
24
fi
25

Sam Hocevar's avatar
 
Sam Hocevar committed
26
dnl Save CFLAGS and LDFLAGS
Sam Hocevar's avatar
 
Sam Hocevar committed
27
save_CFLAGS="${CFLAGS}"
Sam Hocevar's avatar
 
Sam Hocevar committed
28
save_LDFLAGS="${LDFLAGS}"
Sam Hocevar's avatar
 
Sam Hocevar committed
29

30 31
dnl Check for tools
AC_PROG_MAKE_SET
Sam Hocevar's avatar
 
Sam Hocevar committed
32 33
AC_PROG_CC
AC_PROG_CPP
34

Sam Hocevar's avatar
 
Sam Hocevar committed
35
dnl Gettext stuff
Sam Hocevar's avatar
 
Sam Hocevar committed
36
ALL_LINGUAS="de fr ru"
Sam Hocevar's avatar
 
Sam Hocevar committed
37 38
PACKAGE="vlc"
VERSION="$VLC_VERSION"
Sam Hocevar's avatar
Sam Hocevar committed
39

Sam Hocevar's avatar
 
Sam Hocevar committed
40 41 42 43
AC_DEFINE_UNQUOTED(PACKAGE, "$PACKAGE")
AC_DEFINE_UNQUOTED(VERSION, "$VERSION")
AM_GNU_GETTEXT

44 45 46
dnl AM_PROG_LIBTOOL
AC_PROG_INSTALL

47
dnl
Sam Hocevar's avatar
 
Sam Hocevar committed
48
dnl  Endianness check, AC_C_BIGENDIAN doesn't work if we are cross-compiling
49
dnl
Sam Hocevar's avatar
 
Sam Hocevar committed
50 51 52 53 54
dnl  We give the user the opportunity to specify
dnl  --with-words=big or --with-words=little ; otherwise, try to guess
dnl
AC_ARG_WITH(words,
  [  --with-words=endianness Set endianness (big or little)])
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
  case "x$withval" in
    xbig)
      ac_cv_c_bigendian=yes
      ;;
    xlittle)
      ac_cv_c_bigendian=no
      ;;
    *)
      dnl  Try to guess endianness by matching patterns on a compiled
      dnl  binary, by looking for an ASCII or EBCDIC string
      ac_cv_c_bigendian=unknown
      AC_MSG_CHECKING(what the byte order looks to be)[
        cat >conftest.c <<EOF
        short am[] = { 0x4249, 0x4765, 0x6e44, 0x6961, 0x6e53, 0x7953, 0 };
        short ai[] = { 0x694c, 0x5454, 0x656c, 0x6e45, 0x6944, 0x6e61, 0 };
        void _a(void) { char*s = (char*)am; s = (char *)ai; }
        short ei[] = { 0x89D3, 0xe3e3, 0x8593, 0x95c5, 0x89c4, 0x9581, 0 };
        short em[] = { 0xc2c9, 0xc785, 0x95c4, 0x8981, 0x95e2, 0xa8e2, 0 };
        void _e(void) { char*s = (char*)em; s = (char*)ei; }
        int main(void) { _a(); _e(); return 0; }
EOF
      ]
      if test -f conftest.c
      then 
        if ${CC-cc} conftest.c -o conftest.o >config.log 2>&1 \
            && test -f conftest.o
        then
          if test `grep -l BIGenDianSyS conftest.o`
          then
            AC_MSG_RESULT("big endian")
            ac_cv_c_bigendian=yes
          fi
          if test `grep -l LiTTleEnDian conftest.o`
          then
            AC_MSG_RESULT("little endian")
            ac_cv_c_bigendian=no
          fi
        fi
      fi
      if test $ac_cv_c_bigendian = xunknown
      then
        AC_MSG_ERROR([Could not guess endianness, please use --with-words])
      fi
      dnl  Now we know what to use for endianness, just put it in the header
      if test $ac_cv_c_bigendian = yes
      then
        cat >> confdefs.h <<\EOF
#define WORDS_BIGENDIAN 1
EOF
      fi
      ;;
  esac
107 108

dnl Check for system libs needed
Sam Hocevar's avatar
 
Sam Hocevar committed
109
AC_CHECK_FUNCS(gettimeofday select strerror strtod strtol isatty)
Sam Hocevar's avatar
 
Sam Hocevar committed
110 111 112 113 114 115 116 117 118 119 120
AC_CHECK_FUNC(connect,,[
  AC_CHECK_LIB(socket,connect,LIB="${LIB} -lsocket")
])
AC_CHECK_FUNC(gethostbyname,,[
  AC_CHECK_LIB(nsl,gethostbyname,LIB="${LIB} -lnsl")
])
AC_CHECK_FUNC(nanosleep,,[
  AC_CHECK_LIB(rt,nanosleep,LIB="${LIB} -lrt",[
    AC_CHECK_LIB(posix4,nanosleep,LIB="${LIB} -lposix4")
  ])
])
121
AC_CHECK_FUNCS(usleep)
Sam Hocevar's avatar
 
Sam Hocevar committed
122 123 124
AC_CHECK_FUNC(inet_aton,,[
  AC_CHECK_LIB(resolv,inet_aton,LIB="${LIB} -lresolv")
])
Sam Hocevar's avatar
 
Sam Hocevar committed
125
AC_CHECK_FUNCS(vasprintf)
Sam Hocevar's avatar
 
Sam Hocevar committed
126
AC_CHECK_FUNCS(swab)
127
AC_CHECK_FUNCS([memalign valloc])
Sam Hocevar's avatar
 
Sam Hocevar committed
128

Sam Hocevar's avatar
 
Sam Hocevar committed
129 130
AC_CHECK_FUNCS(sigrelse)

Sam Hocevar's avatar
 
Sam Hocevar committed
131
dnl Check for getopt
Sam Hocevar's avatar
 
Sam Hocevar committed
132
NEED_GETOPT=0
Sam Hocevar's avatar
 
Sam Hocevar committed
133 134 135
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
136
    [AC_DEFINE(HAVE_GETOPT_LONG,1,getopt support) LIB="${LIB} -lgnugetopt"],
Sam Hocevar's avatar
 
Sam Hocevar committed
137
    [NEED_GETOPT=1])])
Sam Hocevar's avatar
 
Sam Hocevar committed
138

139
AC_TYPE_SIGNAL
Sam Hocevar's avatar
 
Sam Hocevar committed
140
AC_CHECK_LIB(dl,dlopen,LIB="${LIB} -ldl")
Sam Hocevar's avatar
 
Sam Hocevar committed
141 142 143
AC_CHECK_LIB(m,cos,
  LIB_IMDCT="${LIB_IMDCT} -lm"
  LIB_FILTER_DISTORT="${LIB_FILTER_DISTORT} -lm")
Sam Hocevar's avatar
 
Sam Hocevar committed
144 145 146 147 148
AC_CHECK_LIB(m,pow,
  LIB_IMDCT="${LIB_IMDCT} -lm"
  LIB_IMDCT3DN="${LIB_IMDCT3DN} -lm"
  LIB_IMDCTSSE="${LIB_IMDCTSSE} -lm"
)
Sam Hocevar's avatar
 
Sam Hocevar committed
149

Sam Hocevar's avatar
 
Sam Hocevar committed
150
dnl Check for pthreads - borrowed from XMMS
Sam Hocevar's avatar
 
Sam Hocevar committed
151 152 153 154 155 156 157 158 159 160 161 162 163 164
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
165 166 167

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

Sam Hocevar's avatar
 
Sam Hocevar committed
169 170 171
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
172
            Define if <pthread.h> defines pthread_cond_t.)])
Sam Hocevar's avatar
 
Sam Hocevar committed
173 174
AC_EGREP_HEADER(strncasecmp,strings.h,[
  AC_DEFINE(STRNCASECMP_IN_STRINGS_H, 1,
Sam Hocevar's avatar
 
Sam Hocevar committed
175
            Define if <strings.h> defines strncasecmp.)])
Sam Hocevar's avatar
 
Sam Hocevar committed
176

Sam Hocevar's avatar
 
Sam Hocevar committed
177
dnl Check for headers
Sam Hocevar's avatar
 
Sam Hocevar committed
178
AC_CHECK_HEADERS(getopt.h strings.h)
179
AC_CHECK_HEADERS(sys/sockio.h fcntl.h sys/time.h sys/times.h)
Sam Hocevar's avatar
 
Sam Hocevar committed
180 181 182 183 184
AC_CHECK_HEADERS(sys/soundcard.h machine/soundcard.h)
AC_CHECK_HEADERS(dlfcn.h image.h)
AC_CHECK_HEADERS(arpa/inet.h net/if.h netinet/in.h sys/socket.h)
AC_CHECK_HEADERS(machine/param.h)

Sam Hocevar's avatar
 
Sam Hocevar committed
185 186
AC_HEADER_TIME

Sam Hocevar's avatar
 
Sam Hocevar committed
187 188 189
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
190
dnl Check for ntohl, etc.
191 192 193 194 195 196 197 198 199
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
200

Sam Hocevar's avatar
 
Sam Hocevar committed
201
dnl Check for inline function size limit
202 203 204 205 206 207 208
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
209

Sam Hocevar's avatar
 
Sam Hocevar committed
210
dnl Check for Darwin plugin linking flags
211 212 213 214 215
AC_CACHE_CHECK([if \$CC accepts -bundle -undefined error],
    [ac_cv_ld_darwin],
    [CFLAGS="${save_CFLAGS} -bundle -undefined error"
     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
216
    PLDFLAGS="${PLDFLAGS} -bundle -undefined error"
217
fi
Sam Hocevar's avatar
 
Sam Hocevar committed
218 219

dnl Check for standard plugin linking flags
220 221 222 223 224
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
225
    PLDFLAGS="${PLDFLAGS} -shared"
Sam Hocevar's avatar
 
Sam Hocevar committed
226
fi
227 228
        
dnl Check for soname setting
Sam Hocevar's avatar
 
Sam Hocevar committed
229
if test x"${SOFLAGS}" = x; then
230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251
    AC_CACHE_CHECK([for soname setting],
        [ac_cv_ld_soname],
        [
        # Standard
        try_SOFLAGS="-Wl,-soname -Wl,"
        LDFLAGS="${save_LDFLAGS} ${try_SOFLAGS}foo.so.0"
        AC_TRY_LINK([],,ac_cv_ld_soname="${try_SOFLAGS}", [
            # SunOS
            try_SOFLAGS="-Wl,-h -Wl,"
            LDFLAGS="${save_LDFLAGS} ${try_SOFLAGS}foo.so.0"
            AC_TRY_LINK([],,ac_cv_ld_soname="${try_SOFLAGS}",
                ac_cv_ld_soname=none)
        ])])
    if test x"$ac_cv_ld_soname" != x"none"; then
        SOFLAGS=$ac_cv_ld_soname
    else
        echo "
------------
Your system doesn't seem to have support for dynamic linking. You may
have problems using libdvdcss.
------------
"
252
    fi
Sam Hocevar's avatar
 
Sam Hocevar committed
253 254
fi

255 256 257 258 259 260 261 262 263 264 265 266 267 268 269
dnl Checks for __attribute__(aligned()) directive
AC_CACHE_CHECK([__attribute__ ((aligned ())) support],
    [ac_cv_c_attribute_aligned],
    [ac_cv_c_attribute_aligned=0
	CFLAGS="${save_CFLAGS} -Werror"
    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
270
dnl End of the bizarre compilation tests
Sam Hocevar's avatar
 
Sam Hocevar committed
271
CFLAGS="${save_CFLAGS}"
Sam Hocevar's avatar
 
Sam Hocevar committed
272
LDFLAGS="${save_LDFLAGS}"
Christophe Massiot's avatar
Christophe Massiot committed
273

274
dnl Check for boolean_t
275 276
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
277
    [AC_TRY_COMPILE([#include <sys/types.h>], [boolean_t foo;],
278 279 280 281 282 283 284
     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
285
    [AC_TRY_COMPILE([#include <pthread.h>], [boolean_t foo;],
286 287 288 289 290 291 292
     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
293
    [AC_TRY_COMPILE([#include <cthreads.h>], [boolean_t foo;],
294 295 296 297
     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
298

299
ARCH=${target_cpu}
Sam Hocevar's avatar
 
Sam Hocevar committed
300 301 302 303

dnl
dnl  default modules
dnl
Sam Hocevar's avatar
 
Sam Hocevar committed
304
BUILTINS="${BUILTINS} mpeg_es mpeg_ps mpeg_ts memcpy idct idctclassic motion imdct downmix mpeg_adec lpcm_adec ac3_adec mpeg_vdec"
Sam Hocevar's avatar
 
Sam Hocevar committed
305
PLUGINS="${PLUGINS} ac3_spdif spudec chroma_yv12_rgb16 filter_deinterlace filter_invert filter_wall filter_transform filter_distort"
Sam Hocevar's avatar
 
Sam Hocevar committed
306 307 308 309

dnl
dnl  Accelerated modules
dnl
Sam Hocevar's avatar
 
Sam Hocevar committed
310
MMX_MODULES="memcpymmx idctmmx motionmmx"
Sam Hocevar's avatar
 
Sam Hocevar committed
311 312
MMXEXT_MODULES="memcpymmxext idctmmxext motionmmxext"
THREEDNOW_MODULES="memcpy3dn imdct3dn downmix3dn"
Sam Hocevar's avatar
 
Sam Hocevar committed
313
SSE_MODULES="imdctsse downmixsse"
314
ALTIVEC_MODULES="idctaltivec motionaltivec"
315

316 317
AC_CACHE_CHECK([if \$CC groks MMX inline assembly],
    [ac_cv_mmx_inline],
Sam Hocevar's avatar
 
Sam Hocevar committed
318
    [AC_TRY_COMPILE(,[void *p;asm volatile("packuswb %%mm1,%%mm2"::"r"(p));],
319
                    ac_cv_mmx_inline=yes, ac_cv_mmx_inline=no)])
320
if test x"$ac_cv_mmx_inline" != x"no"; then
Sam Hocevar's avatar
 
Sam Hocevar committed
321
  ACCEL_MODULES="${ACCEL_MODULES} ${MMX_MODULES}"
322
fi
Sam Hocevar's avatar
 
Sam Hocevar committed
323

324 325
AC_CACHE_CHECK([if \$CC groks MMX EXT inline assembly],
    [ac_cv_mmxext_inline],
Sam Hocevar's avatar
 
Sam Hocevar committed
326
    [AC_TRY_COMPILE(,[void *p;asm volatile("maskmovq %%mm1,%%mm2"::"r"(p));],
327
                    ac_cv_mmxext_inline=yes, ac_cv_mmxext_inline=no)])
328
if test x"$ac_cv_mmxext_inline" != x"no"; then
Sam Hocevar's avatar
 
Sam Hocevar committed
329
  ACCEL_MODULES="${ACCEL_MODULES} ${MMXEXT_MODULES}"
330
fi
Sam Hocevar's avatar
 
Sam Hocevar committed
331

332 333
AC_CACHE_CHECK([if \$CC groks 3D Now! inline assembly],
    [ac_cv_3dnow_inline],
Sam Hocevar's avatar
 
Sam Hocevar committed
334
    [AC_TRY_COMPILE(,[void *p;asm volatile("pfadd %%mm1,%%mm2"::"r"(p));],
335
                    ac_cv_3dnow_inline=yes, ac_cv_3dnow_inline=no)])
336
if test x"$ac_cv_3dnow_inline" != x"no"; then
Sam Hocevar's avatar
 
Sam Hocevar committed
337
  AC_DEFINE(CAN_COMPILE_3DNOW, 1, Define if \$CC groks 3D Now! inline assembly.)
Sam Hocevar's avatar
 
Sam Hocevar committed
338
  ACCEL_MODULES="${ACCEL_MODULES} ${THREEDNOW_MODULES}"
339
fi
Sam Hocevar's avatar
 
Sam Hocevar committed
340

341 342
AC_CACHE_CHECK([if \$CC groks SSE inline assembly],
    [ac_cv_sse_inline],
Sam Hocevar's avatar
 
Sam Hocevar committed
343
    [AC_TRY_COMPILE(,[void *p;asm volatile("xorps %%xmm1,%%xmm2"::"r"(p));],
344
                    ac_cv_sse_inline=yes, ac_cv_sse_inline=no)])
345
if test x"$ac_cv_sse_inline" != x"no"; then
Sam Hocevar's avatar
 
Sam Hocevar committed
346
  AC_DEFINE(CAN_COMPILE_SSE, 1, Define if \$CC groks SSE inline assembly.)
Sam Hocevar's avatar
 
Sam Hocevar committed
347
  ACCEL_MODULES="${ACCEL_MODULES} ${SSE_MODULES}"
348
fi
Sam Hocevar's avatar
 
Sam Hocevar committed
349

350 351
AC_CACHE_CHECK([if \$CC groks Altivec inline assembly],
    [ac_cv_altivec_inline],
Sam Hocevar's avatar
 
Sam Hocevar committed
352
    [AC_TRY_COMPILE(,[asm volatile("vperm 0,1,2,3");],
353 354 355
         ac_cv_altivec_inline=yes,
         [save_CFLAGS=$CFLAGS
          CFLAGS="$CFLAGS -Wa,-m7400"
Sam Hocevar's avatar
 
Sam Hocevar committed
356
          AC_TRY_COMPILE(,[asm volatile("vperm 0,1,2,3");],
357
            [ac_cv_altivec_inline="-Wa,-m7400"],
358
            ac_cv_altivec_inline=no)
359 360
          CFLAGS=$save_CFLAGS
         ])])
361
if test x"$ac_cv_altivec_inline" != x"no"; then
Sam Hocevar's avatar
 
Sam Hocevar committed
362
  AC_DEFINE(CAN_COMPILE_ALTIVEC, 1, Define if \$CC groks ALTIVEC inline assembly.)
363
  if test x"$ac_cv_altivec_inline" != x"yes"; then
Sam Hocevar's avatar
 
Sam Hocevar committed
364 365
    CFLAGS_IDCTALTIVEC="$CFLAGS_IDCTALTIVEC $ac_cv_altivec_inline"
    CFLAGS_MOTIONALTIVEC="$CFLAGS_MOTIONALTIVEC $ac_cv_altivec_inline"
Sam Hocevar's avatar
 
Sam Hocevar committed
366
    CFLAGS_VLC="$CFLAGS_VLC $ac_cv_altivec_inline"
367
  fi
368
  ACCEL_MODULES="${ACCEL_MODULES} ${ALTIVEC_MODULES}"
369
fi
370

371 372
AC_CACHE_CHECK([if \$CC groks Altivec C extensions],
    [ac_cv_c_altivec],
373 374 375
    [save_CFLAGS=$CFLAGS
     CFLAGS="$CFLAGS -faltivec"
     # Darwin test
Sam Hocevar's avatar
 
Sam Hocevar committed
376
     AC_TRY_COMPILE(,[vec_mtvscr((vector unsigned int)(0));],
377 378
        ac_cv_c_altivec=-faltivec, [
        # Linux/PPC test
Sam Hocevar's avatar
 
Sam Hocevar committed
379
        CFLAGS="$save_CFLAGS $CFLAGS_IDCTALTIVEC -fvec"
Sam Hocevar's avatar
 
Sam Hocevar committed
380
        AC_TRY_COMPILE(,[vec_mtvscr((vector unsigned int)(0));],
381 382 383 384
            [ac_cv_c_altivec="-fvec"], ac_cv_c_altivec=no)
        ])
     CFLAGS=$save_CFLAGS
    ])
385
if test x"$ac_cv_c_altivec" != x"no"; then
Sam Hocevar's avatar
 
Sam Hocevar committed
386
  AC_DEFINE(CAN_COMPILE_C_ALTIVEC, 1, Define if your compiler groks C altivec extensions.)
Sam Hocevar's avatar
 
Sam Hocevar committed
387 388
  CFLAGS_IDCTALTIVEC="$CFLAGS_IDCTALTIVEC $ac_cv_c_altivec"
  CFLAGS_MOTIONALTIVEC="$CFLAGS_MOTIONALTIVEC $ac_cv_c_altivec"
Sam Hocevar's avatar
 
Sam Hocevar committed
389
  CFLAGS_VLC="$CFLAGS_VLC $ac_cv_c_altivec"
390
  ACCEL_MODULES="${ACCEL_MODULES} ${ALTIVEC_MODULES}"
391 392 393 394 395 396 397 398 399 400
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
401 402
  LIB_IDCTALTIVEC="${LIB_IDCTALTIVEC} -framework vecLib"
  LIB_MOTIONALTIVEC="${LIB_MOTIONALTIVEC} -framework vecLib"
403 404
fi

405 406 407 408
dnl
dnl  Check the operating system
dnl
case ${target_os} in
409 410
  linux*)
    SYS=linux
Sam Hocevar's avatar
 
Sam Hocevar committed
411
    ;;
412 413 414 415 416 417 418 419
  bsdi*)
    SYS=bsdi
    ;;
  darwin*)
    SYS=darwin
    ;;
  *mingw32*)
    SYS=mingw32
Sam Hocevar's avatar
 
Sam Hocevar committed
420 421 422
    AC_CHECK_TOOL(WINDRES, windres, :)
    LIB_MPEG_TS="-lws2_32"
    LIB_RC="-lws2_32"
423
    ;;
Sam Hocevar's avatar
 
Sam Hocevar committed
424 425 426 427 428
  *nto*)
    SYS=nto
    LIB_X11="${LIB_X11} -lsocket"
    LIB_XVIDEO="${LIB_XVIDEO} -lsocket"
    ;;
Sam Hocevar's avatar
 
Sam Hocevar committed
429 430 431 432 433 434
  beos)
    SYS=beos
    LIB="${LIB} -lbe"
    LIB_BEOS="${LIB_BEOS} -lbe -lgame -lroot -ltracker"
    PLDFLAGS="${PLDFLAGS} -nostart"
    ;;
435 436 437 438 439 440
  *)
    SYS=${target_os}
    ;;
esac

dnl
Sam Hocevar's avatar
 
Sam Hocevar committed
441
dnl  DVD and VCD devices
442
dnl
Sam Hocevar's avatar
 
Sam Hocevar committed
443 444 445 446 447 448 449 450 451 452 453 454 455 456
case $SYS in
  mingw32)
    DVD_DEVICE="E:"
    VCD_DEVICE="E:"
    ;;
  *)
    DVD_DEVICE="/dev/dvd"
    VCD_DEVICE="/dev/cdrom"
    ;;
esac

AC_DEFINE_UNQUOTED(DVD_DEVICE, "$DVD_DEVICE")
AC_DEFINE_UNQUOTED(VCD_DEVICE, "$VCD_DEVICE")

457

Sam Hocevar's avatar
 
Sam Hocevar committed
458
dnl
Sam Hocevar's avatar
 
Sam Hocevar committed
459
dnl  libdvdcss: check for DVD ioctls
Sam Hocevar's avatar
 
Sam Hocevar committed
460
dnl
Sam Hocevar's avatar
 
Sam Hocevar committed
461

Sam Hocevar's avatar
 
Sam Hocevar committed
462 463 464
dnl  default is no
CAN_BUILD_LIBDVDCSS=0

Sam Hocevar's avatar
 
Sam Hocevar committed
465 466
dnl  for windoze
AC_CHECK_HEADERS(winioctl.h,[
Sam Hocevar's avatar
 
Sam Hocevar committed
467
  CAN_BUILD_LIBDVDCSS="${HAVE_LIBDVDCSS}"
Sam Hocevar's avatar
 
Sam Hocevar committed
468 469
])

Sam Hocevar's avatar
 
Sam Hocevar committed
470
dnl  for Un*x and BeOS
Sam Hocevar's avatar
 
Sam Hocevar committed
471
AC_CHECK_HEADERS(sys/ioctl.h,[
Sam Hocevar's avatar
 
Sam Hocevar committed
472
  CAN_BUILD_LIBDVDCSS="${HAVE_LIBDVDCSS}"
Sam Hocevar's avatar
 
Sam Hocevar committed
473
  AC_CHECK_HEADERS(sys/cdio.h sys/dvdio.h linux/cdrom.h dvd.h)
Sam Hocevar's avatar
 
Sam Hocevar committed
474
  BSD_DVD_STRUCT=0
Sam Hocevar's avatar
 
Sam Hocevar committed
475
  LINUX_DVD_STRUCT=0
476
  OPENBSD_DVD_STRUCT=0
Sam Hocevar's avatar
 
Sam Hocevar committed
477 478 479
  dnl
  dnl Old FreeBSD: sys/cdio.h
  dnl
Sam Hocevar's avatar
 
Sam Hocevar committed
480 481 482 483
  AC_EGREP_HEADER(dvd_struct,sys/cdio.h,[
    AC_DEFINE(DVD_STRUCT_IN_SYS_CDIO_H, 1,
              Define if <sys/cdio.h> defines dvd_struct.)
    AC_EGREP_HEADER(struct dvd_struct,sys/cdio.h,[
484
                    BSD_DVD_STRUCT=1],[LINUX_DVD_STRUCT=1; OPENBSD_DVD_STRUCT=1])
Sam Hocevar's avatar
 
Sam Hocevar committed
485 486 487 488
  ])
  dnl
  dnl Newer FreeBSD: sys/dvdio.h
  dnl
Sam Hocevar's avatar
 
Sam Hocevar committed
489 490 491 492 493
  AC_EGREP_HEADER(dvd_struct,sys/dvdio.h,[
    AC_DEFINE(DVD_STRUCT_IN_SYS_DVDIO_H, 1,
              Define if <sys/dvdio.h> defines dvd_struct.)
    AC_EGREP_HEADER(struct dvd_struct,sys/dvdio.h,[
                    BSD_DVD_STRUCT=1],[LINUX_DVD_STRUCT=1])
Sam Hocevar's avatar
 
Sam Hocevar committed
494 495 496 497 498 499 500
  ])
  dnl
  dnl Linux: linux/cdrom.h
  dnl
  AC_EGREP_HEADER(dvd_struct,linux/cdrom.h,[
    AC_DEFINE(DVD_STRUCT_IN_LINUX_CDROM_H, 1,
              Define if <linux/cdrom.h> defines DVD_STRUCT.)
Sam Hocevar's avatar
 
Sam Hocevar committed
501 502 503 504 505
    LINUX_DVD_STRUCT=1
  ])
  dnl
  dnl BSDI: dvd.h
  dnl
Sam Hocevar's avatar
 
Sam Hocevar committed
506
  NEED_BSDI_LIBDVD=0
Sam Hocevar's avatar
 
Sam Hocevar committed
507 508 509
  AC_EGREP_HEADER(dvd_struct,dvd.h,[
    AC_DEFINE(DVD_STRUCT_IN_DVD_H, 1,
              Define if <dvd.h> defines DVD_STRUCT.)
Sam Hocevar's avatar
 
Sam Hocevar committed
510
    LIB_LIBDVDCSS="${LIB_LIBDVDCSS} -ldvd"
Sam Hocevar's avatar
 
Sam Hocevar committed
511
    LINUX_DVD_STRUCT=1
Sam Hocevar's avatar
 
Sam Hocevar committed
512 513 514 515 516 517
  ],[
    dnl
    dnl BSDI: /sys/dev/scsi/scsi_ioctl.h, using our own libdvd
    dnl
    AC_CHECK_HEADERS(/sys/dev/scsi/scsi_ioctl.h,[
      NEED_BSDI_LIBDVD=1
Sam Hocevar's avatar
 
Sam Hocevar committed
518 519
      AC_DEFINE(DVD_STRUCT_IN_BSDI_DVDIOCTL_DVD_H, 1,
                Define if <extras/BSDI_dvdioctl/dvd.h> defines DVD_STRUCT.)
Sam Hocevar's avatar
 
Sam Hocevar committed
520
      SRC_DVDCSS_EXTRA="${SRC_DVDCSS_EXTRA} bsdi_dvdioctl.c"
Sam Hocevar's avatar
 
Sam Hocevar committed
521 522
      LINUX_DVD_STRUCT=1
    ])
Sam Hocevar's avatar
 
Sam Hocevar committed
523
  ])
Sam Hocevar's avatar
 
Sam Hocevar committed
524
  dnl
Sam Hocevar's avatar
 
Sam Hocevar committed
525
  dnl Solaris: sys/scsi/scsi_types.h, sys/scsi/impl/uscsi.h
Sam Hocevar's avatar
 
Sam Hocevar committed
526
  dnl
Sam Hocevar's avatar
 
Sam Hocevar committed
527
  AC_CHECK_HEADER(sys/scsi/scsi_types.h,[
Sam Hocevar's avatar
 
Sam Hocevar committed
528 529 530 531 532
    AC_CHECK_HEADER(sys/scsi/impl/uscsi.h,[
      AC_DEFINE(SOLARIS_USCSI, 1, Have userspace SCSI headers.)
    ])
  ])
  dnl
533 534 535 536 537 538 539 540
  dnl HP-UX: sys/scsi.h
  dnl
  AC_CHECK_HEADER(sys/scsi.h,[
    AC_EGREP_HEADER(sctl_io,sys/scsi.h,[
      AC_DEFINE(HPUX_SCTL_IO, 1, Define if <sys/scsi.h> defines sctl_io.)
    ])
  ])
  dnl
Sam Hocevar's avatar
 
Sam Hocevar committed
541 542 543 544 545
  dnl Final tests to check what was detected
  dnl
  if test x$LINUX_DVD_STRUCT = x1; then
    AC_DEFINE(HAVE_LINUX_DVD_STRUCT, 1,
              Define if Linux-like dvd_struct is defined.)
546 547 548 549
    if test x$OPENBSD_DVD_STRUCT = x1; then
      AC_DEFINE(HAVE_OPENBSD_DVD_STRUCT, 1,
                Define if OpenBSD-like dvd_struct is defined.)
    fi
Sam Hocevar's avatar
 
Sam Hocevar committed
550 551 552
  else
    if test x$BSD_DVD_STRUCT = x1; then
      AC_DEFINE(HAVE_BSD_DVD_STRUCT, 1,
Sam Hocevar's avatar
 
Sam Hocevar committed
553
                Define if FreeBSD-like dvd_struct is defined.)
Sam Hocevar's avatar
 
Sam Hocevar committed
554 555
    fi
  fi
Sam Hocevar's avatar
 
Sam Hocevar committed
556 557 558
])

dnl
559
dnl  Special arch tuning
Sam Hocevar's avatar
 
Sam Hocevar committed
560
dnl
561 562 563 564 565 566
AC_ARG_WITH(tuning,
[  --with-tuning=[arch]    Enable special tuning for an architecture
                          (default i686 on IA-32 and 750 on PPC)])
if test "x$withval" != "x"; then
    TUNING=$withval
else
567
    if test x${target_cpu} = xi686 -o x${target_cpu} = xi586 -o x${target_cpu} = xi486 -o x${target_cpu} = xi386; then TUNING="pentiumpro"
568
    else
569
        if test x${target_cpu} = xpowerpc; then TUNING="750"; fi
570 571
    fi
fi
Sam Hocevar's avatar
 
Sam Hocevar committed
572

573 574 575 576 577 578 579 580 581
dnl
dnl  Enable release-specific flags
dnl
AC_ARG_ENABLE(release,
[  --enable-release        Activate extra optimizations (default disabled)],
[ if test x$enableval = xyes; then RELEASE=1; fi ],
[ VLC_VERSION="${VLC_VERSION}_`date +%Y-%m-%d`";
  LIBDVDCSS_VERSION="${LIBDVDCSS_VERSION}_`date +%Y-%m-%d`"; ])

Sam Hocevar's avatar
 
Sam Hocevar committed
582 583 584
VLC_SYMBOL="`echo ${VLC_VERSION} | tr .- __`"
AC_SUBST(VLC_SYMBOL)

Sam Hocevar's avatar
 
Sam Hocevar committed
585 586 587
dnl
dnl  MMX acceleration
dnl
588
AC_ARG_ENABLE(mmx,
Christophe Massiot's avatar
Christophe Massiot committed
589
[  --disable-mmx           Disable MMX optimizations (default enabled for x86)],
Sam Hocevar's avatar
 
Sam Hocevar committed
590
[ if test x$enableval = xyes; then ARCH="${ARCH} mmx";
591
    BUILTINS="${BUILTINS} ${ACCEL_MODULES}"; fi ],
592
[ 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";
593
    BUILTINS="${BUILTINS} ${ACCEL_MODULES}"; fi ])
Sam Hocevar's avatar
 
Sam Hocevar committed
594 595 596 597

dnl
dnl  AltiVec acceleration
dnl
598
AC_ARG_ENABLE(altivec,
599 600 601
[  --disable-altivec       Disable altivec optimizations (default enabled on PPC)],
[ if test x$enableval = xyes; then ARCH="${ARCH} altivec";
    BUILTINS="${BUILTINS} ${ACCEL_MODULES}"; fi ],
602
[ if test x${target_cpu} = xpowerpc; then ARCH="${ARCH} altivec";
603
    BUILTINS="${BUILTINS} ${ACCEL_MODULES}"; fi ])
Sam Hocevar's avatar
 
Sam Hocevar committed
604 605 606 607

dnl
dnl  Debugging mode
dnl
Sam Hocevar's avatar
 
Sam Hocevar committed
608
DEBUG=0
609
AC_ARG_ENABLE(debug,
610
[  --enable-debug          Enable debug mode (default disabled)],
611
[ if test x$enableval = xyes; then DEBUG=1; fi ])
Sam Hocevar's avatar
 
Sam Hocevar committed
612

613 614 615
dnl
dnl  Trace mode
dnl
Sam Hocevar's avatar
 
Sam Hocevar committed
616
TRACE=0
617 618 619 620
AC_ARG_ENABLE(trace,
[  --enable-trace          Enable trace mode (default disabled)],
[ if test x$enableval = xyes; then TRACE=1; fi ])

Sam Hocevar's avatar
 
Sam Hocevar committed
621
dnl
622
dnl  Profiling
Sam Hocevar's avatar
 
Sam Hocevar committed
623
dnl
Sam Hocevar's avatar
 
Sam Hocevar committed
624 625 626 627 628 629 630 631 632 633 634 635 636 637
GPROF=0
AC_ARG_ENABLE(gprof,
[  --enable-gprof          Enable gprof profiling (default disabled)],
[ if test x$enableval = xyes; then GPROF=1; fi ])

CPROF=0
AC_ARG_ENABLE(cprof,
[  --enable-cprof          Enable cprof profiling (default disabled)],
[ if test x$enableval = xyes;
  then
    LIB="${LIB} -lcprof"
    CPROF=1
  fi
])
Sam Hocevar's avatar
 
Sam Hocevar committed
638

Sam Hocevar's avatar
 
Sam Hocevar committed
639 640 641
dnl
dnl  Enable/disable optimizations
dnl
642
AC_ARG_ENABLE(optimizations,
643
[  --disable-optimizations Disable compiler optimizations (default enabled)],
644 645
[ if test x$enableval = xno; then OPTIMS=0; fi ],
[ OPTIMS=1 ])
646

Sam Hocevar's avatar
 
Sam Hocevar committed
647 648 649 650 651 652 653 654 655 656 657 658 659 660 661 662 663
dnl
dnl  GNU portable threads
dnl
AC_ARG_ENABLE(pth,
  [  --enable-pth            Enable GNU Pth support (default disabled)],
  [ if test x$enableval = xyes; then
    AC_CHECK_LIB(pth,pth_init)
    AC_EGREP_HEADER(pth_init,pth.h,[
      AC_DEFINE(PTH_INIT_IN_PTH_H, 1,
                Define if <pth.h> defines pth_init)
    THREAD_LIB="-lpth"
    fi])
])

LIB="${LIB} ${THREAD_LIB}"

dnl
Sam Hocevar's avatar
 
Sam Hocevar committed
664
dnl  DVD module: check for installed libdvdcss or local libdvdcss
Sam Hocevar's avatar
 
Sam Hocevar committed
665
dnl
Sam Hocevar's avatar
 
Sam Hocevar committed
666
NEED_LIBDVDCSS=0
Sam Hocevar's avatar
 
Sam Hocevar committed
667
STATIC_LIBDVDCSS=0
Sam Hocevar's avatar
 
Sam Hocevar committed
668
DUMMY_LIBDVDCSS=0
Sam Hocevar's avatar
 
Sam Hocevar committed
669
AC_ARG_WITH(dvdcss,
670 671 672 673
  [  --with-dvdcss[=name]    way to use libdvdcss, either 'yes' or 'no',
                          or 'local-static', 'local-shared', or a path to
                          another libdvdcss such as '/usr/local'
                          (default 'local-static')],
Sam Hocevar's avatar
 
Sam Hocevar committed
674 675 676 677 678
  [ case "x${withval}" in
    xlocal-static|xyes)
      # local libdvdcss, statically linked
      if test x${CAN_BUILD_LIBDVDCSS} = x1
      then
Sam Hocevar's avatar
 
Sam Hocevar committed
679
        NEED_LIBDVDCSS=1
Sam Hocevar's avatar
 
Sam Hocevar committed
680 681 682
        STATIC_LIBDVDCSS=1
        BUILTINS="${BUILTINS} dvd"
        CFLAGS_DVD="${CFLAGS_DVD} -I../../extras/libdvdcss"
Sam Hocevar's avatar
 
Sam Hocevar committed
683 684
        LIB_DVD="${LIB_DVD} lib/libdvdcss.a ${LIB_LIBDVDCSS}"
        LIB_DVD_PLUGIN="${LIB_DVD_PLUGIN} ../../lib/libdvdcss.a ${LIB_LIBDVDCSS}"
Sam Hocevar's avatar
 
Sam Hocevar committed
685
        LIB_DVDREAD_PLUGIN="${LIB_DVDREAD_PLUGIN} ../../lib/libdvdcss.a ${LIB_LIBDVDCSS}"
Sam Hocevar's avatar
 
Sam Hocevar committed
686 687 688 689
      fi
    ;;
    xlocal-shared)
      # local libdvdcss, dynamically linked
Sam Hocevar's avatar
 
Sam Hocevar committed
690 691
      if test x${CAN_BUILD_LIBDVDCSS} = x1
      then
Sam Hocevar's avatar
 
Sam Hocevar committed
692
        NEED_LIBDVDCSS=1
Sam Hocevar's avatar
 
Sam Hocevar committed
693 694 695 696
        BUILTINS="${BUILTINS} dvd"
        CFLAGS_DVD="${CFLAGS_DVD} -I../../extras/libdvdcss"
        LIB_DVD="${LIB_DVD} -Llib -ldvdcss"
        LIB_DVD_PLUGIN="${LIB_DVD_PLUGIN} -L../../lib -ldvdcss"
Sam Hocevar's avatar
 
Sam Hocevar committed
697
        LIB_DVDREAD_PLUGIN="${LIB_DVDREAD_PLUGIN} -L../../lib -ldvdcss"
Sam Hocevar's avatar
 
Sam Hocevar committed
698
      fi
Sam Hocevar's avatar
 
Sam Hocevar committed
699
    ;;
Sam Hocevar's avatar
 
Sam Hocevar committed
700 701 702 703
    xno)
      # don't use libdvdcss at all, build a DVD module that can dlopen() it
      DUMMY_LIBDVDCSS=1
      BUILTINS="${BUILTINS} dvd"
Sam Hocevar's avatar
 
Sam Hocevar committed
704
      SRC_DVD_EXTRA="${SRC_DVD_EXTRA} dummy_dvdcss.c"
Sam Hocevar's avatar
 
Sam Hocevar committed
705
      CFLAGS_DVD="${CFLAGS_DVD} -DGOD_DAMN_DMCA"
Sam Hocevar's avatar
 
Sam Hocevar committed
706
      CFLAGS_DVD="${CFLAGS_DVD} -DLIBDVDCSS_VERSION=\"${LIBDVDCSS_VERSION}\""
Sam Hocevar's avatar
 
Sam Hocevar committed
707 708
      LIB_DVD="${LIB_DVD} -ldl"
      LIB_DVD_PLUGIN="${LIB_DVD_PLUGIN} -ldl"
Sam Hocevar's avatar
 
Sam Hocevar committed
709
      LIB_DVDREAD_PLUGIN="${LIB_DVDREAD_PLUGIN} -ldl"
Sam Hocevar's avatar
 
Sam Hocevar committed
710
    ;;
Sam Hocevar's avatar
 
Sam Hocevar committed
711
    *)
Sam Hocevar's avatar
 
Sam Hocevar committed
712 713 714 715 716
      # existing libdvdcss
      BUILTINS="${BUILTINS} dvd"
      if test "x$withval" != "xyes"
      then
        LIB_DVD_PLUGIN="${LIB_DVD_PLUGIN} -L"$withval"/lib"
Sam Hocevar's avatar
 
Sam Hocevar committed
717
        LIB_DVDREAD_PLUGIN="${LIB_DVDREAD_PLUGIN} -L"$withval"/lib"
Sam Hocevar's avatar
 
Sam Hocevar committed
718 719 720 721
        CFLAGS_DVD="${CFLAGS_DVD} -I"$withval"/include"
      fi
      LIB_DVD="${LIB_DVD} -ldvdcss"
      LIB_DVD_PLUGIN="${LIB_DVD_PLUGIN} -ldvdcss"
Sam Hocevar's avatar
 
Sam Hocevar committed
722
      LIB_DVDREAD_PLUGIN="${LIB_DVDREAD_PLUGIN} -ldvdcss"
Sam Hocevar's avatar
 
Sam Hocevar committed
723
    esac ],
Sam Hocevar's avatar
 
Sam Hocevar committed
724
  # user didn't decide, we choose to use local libdvdcss and link statically
Sam Hocevar's avatar
 
Sam Hocevar committed
725
  # if libdvdcss is in the archive, or to use the dummy replacement otherwise.
Sam Hocevar's avatar
 
Sam Hocevar committed
726 727
  [ if test x${CAN_BUILD_LIBDVDCSS} = x1
    then
Sam Hocevar's avatar
 
Sam Hocevar committed
728
      NEED_LIBDVDCSS=1
Sam Hocevar's avatar
 
Sam Hocevar committed
729 730 731
      STATIC_LIBDVDCSS=1
      BUILTINS="${BUILTINS} dvd"
      CFLAGS_DVD="${CFLAGS_DVD} -I../../extras/libdvdcss"
Sam Hocevar's avatar
 
Sam Hocevar committed
732 733
      LIB_DVD="${LIB_DVD} lib/libdvdcss.a ${LIB_LIBDVDCSS}"
      LIB_DVD_PLUGIN="${LIB_DVD_PLUGIN} ../../lib/libdvdcss.a ${LIB_LIBDVDCSS}"
Sam Hocevar's avatar
 
Sam Hocevar committed
734
      LIB_DVDREAD_PLUGIN="${LIB_DVDREAD_PLUGIN} ../../lib/libdvdcss.a ${LIB_LIBDVDCSS}"
Sam Hocevar's avatar
 
Sam Hocevar committed
735 736 737 738
    else
      # XXX: no check for libdl is done, don't try this at home !
      DUMMY_LIBDVDCSS=1
      BUILTINS="${BUILTINS} dvd"
Sam Hocevar's avatar
 
Sam Hocevar committed
739
      SRC_DVD_EXTRA="${SRC_DVD_EXTRA} dummy_dvdcss.c"
Sam Hocevar's avatar
 
Sam Hocevar committed
740 741 742
      CFLAGS_DVD="${CFLAGS_DVD} -DGOD_DAMN_DMCA"
      LIB_DVD="${LIB_DVD} -ldl"
      LIB_DVD_PLUGIN="${LIB_DVD_PLUGIN} -ldl"
Sam Hocevar's avatar
 
Sam Hocevar committed
743
      LIB_DVDREAD_PLUGIN="${LIB_DVDREAD_PLUGIN} -ldl"
Sam Hocevar's avatar
 
Sam Hocevar committed
744
    fi ])
Sam Hocevar's avatar
 
Sam Hocevar committed
745

Stéphane Borel's avatar
Stéphane Borel committed
746 747 748 749
dnl
dnl DVDREAD module: check for libdvdread plugin
dnl
AC_ARG_ENABLE(dvdread,
750
[  --enable-dvdread          Enable dvdread support (default disabled)],
Stéphane Borel's avatar
Stéphane Borel committed
751 752 753 754 755 756 757
[ if test x$enableval = xyes
  then
    NEED_LIBDVDCSS=1
    STATIC_LIBDVDCSS=1
    BUILTINS="${BUILTINS} dvdread" 
    CFLAGS_DVDREAD="${CFLAGS_DVDREAD} -I../../extras/libdvdread"
    LIB_DVDREAD="${LIB_DVDREAD} lib/libdvdread.a lib/libdvdcss.a"
758
  fi ])
Stéphane Borel's avatar
Stéphane Borel committed
759

760
dnl
Sam Hocevar's avatar
 
Sam Hocevar committed
761
dnl  VCD module
762 763
dnl
AC_ARG_ENABLE(vcd,
Sam Hocevar's avatar
 
Sam Hocevar committed
764
  [  --enable-vcd            VCD support for Linux (default enabled)])
765

Sam Hocevar's avatar
 
Sam Hocevar committed
766 767 768 769 770 771
if test x$enable_vcd != xno
then
  AC_EGREP_HEADER(cdrom_msf0,linux/cdrom.h,[
    BUILTINS="${BUILTINS} vcd"
  ])
fi
772

773 774 775 776 777
if test x$enable_vcd != xno -a "${SYS}" = "bsdi"
then
  BUILTINS="${BUILTINS} vcd"
fi

Sam Hocevar's avatar
 
Sam Hocevar committed
778 779 780 781 782
dnl
dnl  dummy plugin
dnl
AC_ARG_ENABLE(dummy,
  [  --disable-dummy         dummy module (default enabled)])
Sam Hocevar's avatar
 
Sam Hocevar committed
783 784 785 786 787

if test x$enable_dummy != xno
then
  BUILTINS="${BUILTINS} dummy"
fi
Sam Hocevar's avatar
 
Sam Hocevar committed
788 789 790 791 792 793

dnl
dnl  null plugin
dnl
AC_ARG_ENABLE(null,
  [  --disable-null          Null module (default enabled)])
Sam Hocevar's avatar
 
Sam Hocevar committed
794 795 796 797 798

if test x$enable_null != xno
then
  BUILTINS="${BUILTINS} null"
fi
Sam Hocevar's avatar
 
Sam Hocevar committed
799 800 801 802 803

dnl
dnl  rc plugin
dnl
AC_ARG_ENABLE(rc,
Sam Hocevar's avatar
 
Sam Hocevar committed
804 805
  [  --disable-rc            Remote Control module (default enabled)])

Sam Hocevar's avatar
 
Sam Hocevar committed
806 807 808 809
if test x$enable_rc != xno
then
  BUILTINS="${BUILTINS} rc"
fi
Sam Hocevar's avatar
 
Sam Hocevar committed
810

811
dnl
Sam Hocevar's avatar
 
Sam Hocevar committed
812
dnl  mad plugin
813
dnl
Sam Hocevar's avatar
 
Sam Hocevar committed
814 815
AC_ARG_WITH(mad,
  [  --with-mad[=PATH]       libmad module (default disabled)],
816 817
  [ if test "x$with_val" != "xno"; then
      if test -n $with_val; then
Sam Hocevar's avatar
 
Sam Hocevar committed
818 819
	    CFLAGS_MAD="-I$with_val/include"
        LIB_MAD="-L$with_val/lib -lmad"
820
      else
Sam Hocevar's avatar
 
Sam Hocevar committed
821
        LIB_MAD="-lmad"
822 823 824
      fi
      save_CFLAGS=$CFLAGS
      save_LDFLAGS=$LDFLAGS
Sam Hocevar's avatar
 
Sam Hocevar committed
825 826
      CFLAGS="$CFLAGS $CFLAGS_MAD"
      LDFLAGS="$LDFLAGS $LIB_MAD"
827 828 829 830 831 832 833 834 835 836
      AC_CHECK_HEADERS(mad.h, ,
      [ echo "Cannot find development headers for libmad..."
        exit 1
      ])
      AC_CHECK_LIB(mad, mad_bit_init, ,
      [ echo "Cannot find libmad library..."
        exit 1
      ])
      CFLAGS=$save_CFLAGS
      LDFLAGS=$save_LDFLAGS
Sam Hocevar's avatar
 
Sam Hocevar committed
837
      PLUGINS="${PLUGINS} mad"
838 839
    fi ])

Sam Hocevar's avatar
 
Sam Hocevar committed
840
dnl special case for BeOS
Sam Hocevar's avatar
 
Sam Hocevar committed
841 842
if test x$SYS = xbeos
then
Sam Hocevar's avatar
 
Sam Hocevar committed
843
    BUILTINS="${BUILTINS} beos"
844 845 846 847

dnl default case
else

Sam Hocevar's avatar
 
Sam Hocevar committed
848 849
dnl
dnl  OSS /dev/dsp module
850
dnl  (enabled by default except on win32)
Sam Hocevar's avatar
 
Sam Hocevar committed
851
dnl
852
AC_ARG_ENABLE(dsp,
853
  [  --disable-dsp           Linux /dev/dsp support (default enabled)])
Sam Hocevar's avatar
 
Sam Hocevar committed
854

855 856
if test x$enable_dsp != xno &&
  (test $SYS != mingw32 || test x$enable_dsp = xyes)
Sam Hocevar's avatar
 
Sam Hocevar committed
857 858 859
then
  if test -c /dev/dsp
  then
Sam Hocevar's avatar
 
Sam Hocevar committed
860
    PLUGINS="${PLUGINS} dsp"
861 862
  fi
fi
Sam Hocevar's avatar
 
Sam Hocevar committed
863 864 865 866

dnl
dnl  Esound module
dnl
867
AC_ARG_ENABLE(esd,
868
  [  --enable-esd            Esound library support (default disabled)],
Sam Hocevar's avatar
 
Sam Hocevar committed
869 870
  [if test x$enable_esd = xyes
   then
Sam Hocevar's avatar
 
Sam Hocevar committed
871
     AC_PATH_PROG(ESD_CONFIG, esd-config, no)
Sam Hocevar's avatar
 
Sam Hocevar committed
872 873
     if test x${ESD_CONFIG} != xno
     then
Sam Hocevar's avatar
 
Sam Hocevar committed
874
       PLUGINS="${PLUGINS} esd"
Sam Hocevar's avatar
 
Sam Hocevar committed
875
       CFLAGS_ESD="`${ESD_CONFIG} --cflags`"
Sam Hocevar's avatar
 
Sam Hocevar committed
876 877
       LIB_ESD="`${ESD_CONFIG} --libs`"
     fi
Sam Hocevar's avatar
 
Sam Hocevar committed
878 879
   fi])

Sam Hocevar's avatar
 
Sam Hocevar committed
880 881 882 883 884 885 886 887 888 889 890 891 892 893 894 895
dnl
dnl  aRts module
dnl
AC_ARG_ENABLE(arts,
  [  --enable-arts           aRts sound server (default disabled)],
  [if test x$enable_arts = xyes
   then
     AC_PATH_PROG(ARTS_CONFIG, artsc-config, no)
     if test x${ARTS_CONFIG} != xno
     then
       PLUGINS="${PLUGINS} arts"
       CFLAGS_ARTS="`${ARTS_CONFIG} --cflags`"
       LIB_ARTS="`${ARTS_CONFIG} --libs `"
     fi
   fi])

Sam Hocevar's avatar
 
Sam Hocevar committed
896 897 898
dnl
dnl  MacOS X module
dnl
Sam Hocevar's avatar
 
Sam Hocevar committed
899
AC_ARG_ENABLE(macosx,
900
  [  --enable-macosx         MacOS X support (default enabled on MacOS X)],
Sam Hocevar's avatar
 
Sam Hocevar committed
901 902
  [if test x$enable_macosx = xyes
   then
903
     BUILTINS="${BUILTINS} macosx"
Sam Hocevar's avatar
 
Sam Hocevar committed
904 905
     LIB_MACOSX="-framework CoreAudio -framework Cocoa -framework AGL -framework QuickTime -lobjc"
     CFLAGS_MACOSX="-ObjC"
906
     LIB="${LIB} -ObjC"
Sam Hocevar's avatar
 
Sam Hocevar committed
907
   fi],
908 909
  [AC_CHECK_HEADERS(Cocoa/Cocoa.h,
     BUILTINS="${BUILTINS} macosx"
Sam Hocevar's avatar
 
Sam Hocevar committed
910 911
     LIB_MACOSX="-framework CoreAudio -framework Cocoa -framework AGL -framework QuickTime -lobjc"
     CFLAGS_MACOSX="-ObjC"
912
     LIB="${LIB} -ObjC"
Sam Hocevar's avatar
 
Sam Hocevar committed
913 914
   )])

915 916 917 918
dnl
dnl  QNX RTOS module
dnl
AC_ARG_ENABLE(qnx,
919
  [  --disable-qnx           QNX RTOS support (default enabled on QNX RTOS)])
Sam Hocevar's avatar
 
Sam Hocevar committed
920 921
    if test x$enable_qnx != xno
    then
922 923 924 925 926 927
      AC_CHECK_HEADERS(Ph.h, [
        PLUGINS="${PLUGINS} qnx"
        LIB_QNX="-lasound -lph"
      ])
    fi

Sam Hocevar's avatar
 
Sam Hocevar committed
928 929 930
dnl
dnl  Linux framebuffer module
dnl
931 932
AC_ARG_ENABLE(fb,
  [  --enable-fb             Linux framebuffer support (default disabled)],
Sam Hocevar's avatar
 
Sam Hocevar committed
933 934 935 936
  [ if test x$enable_fb = xyes
    then
      PLUGINS="${PLUGINS} fb"
    fi ])
Sam Hocevar's avatar
 
Sam Hocevar committed
937 938 939 940

dnl
dnl  GGI module
dnl
Christophe Massiot's avatar
Christophe Massiot committed
941 942
AC_ARG_WITH(ggi,
  [  --with-ggi[=name]       GGI support (default disabled)],
Sam Hocevar's avatar
 
Sam Hocevar committed
943
  [ if test "x$withval" != "xno"
Christophe Massiot's avatar
Christophe Massiot committed
944
    then
Sam Hocevar's avatar
 
Sam Hocevar committed
945 946
      PLUGINS="${PLUGINS} ggi"
      if test "x$withval" != "xyes"
Sam Hocevar's avatar
 
Sam Hocevar committed
947 948 949 950 951
      then
        LIB_GGI="-l"$withval
      else
        LIB_GGI="-lggi"
      fi
Christophe Massiot's avatar
Christophe Massiot committed
952
    fi ])
Sam Hocevar's avatar
 
Sam Hocevar committed
953 954 955 956

dnl
dnl  SDL module
dnl
957 958
AC_ARG_ENABLE(sdl,
  [  --disable-sdl           SDL support (default enabled)])
959
if test "x$enable_sdl" != "xno"
960
then
961 962 963 964 965 966 967 968
  SDL_PATH=$PATH
  AC_ARG_WITH(sdl-config-path,
    [  --with-sdl-config-path=path sdl-config path (default search in \$PATH)],
    [ if test "x$withval" != "xno"
      then
        SDL_PATH=$withval:$PATH
      fi ])
  AC_PATH_PROG(SDL12_CONFIG, sdl12-config, no, $SDL_PATH)
969 970
  SDL_CONFIG=${SDL12_CONFIG}
  SDL_HEADER="SDL12/SDL.h"
Sam Hocevar's avatar
 
Sam Hocevar committed
971 972
  if test x${SDL_CONFIG} = xno
  then
973
    AC_PATH_PROG(SDL11_CONFIG, sdl11-config, no, $SDL_PATH)
Sam Hocevar's avatar
 
Sam Hocevar committed
974
    SDL_CONFIG=${SDL11_CONFIG}
975 976
    SDL_HEADER="SDL11/SDL.h"
  fi
Sam Hocevar's avatar
 
Sam Hocevar committed
977 978
  if test x${SDL_CONFIG} = xno
  then
979
    AC_PATH_PROG(SDL_CONFIG, sdl-config, no, $SDL_PATH)
980
    SDL_HEADER="SDL/SDL.h"
981
  fi
Sam Hocevar's avatar
 
Sam Hocevar committed
982 983
  if test x${SDL_CONFIG} != xno
  then
984 985 986
    PLUGINS="${PLUGINS} sdl"
    CFLAGS_SDL="`${SDL_CONFIG} --cflags`"
    LIB_SDL="`${SDL_CONFIG} --libs | sed 's,-rdynamic,,'`"
Sam Hocevar's avatar
 
Sam Hocevar committed
987 988
    save_CPPFLAGS=$CPPFLAGS
    CPPFLAGS="$CPPFLAGS $CFLAGS_SDL"
989 990
    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),
991 992 993 994
      [ 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
995
    CPPFLAGS=$save_CPPFLAGS
Sam Hocevar's avatar
 
Sam Hocevar committed
996
    if expr 1.1.5 \> `$SDL_CONFIG --version` >/dev/null
Sam Hocevar's avatar
 
Sam Hocevar committed
997
    then
998 999 1000
      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
1001
    fi
1002
  elif test "x$enable_sdl" =  "xyes"
Sam Hocevar's avatar
 
Sam Hocevar committed
1003
  then
1004 1005 1006
    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.
    ])
1007 1008
  fi
fi
Sam Hocevar's avatar
 
Sam Hocevar committed
1009

Sam Hocevar's avatar
 
Sam Hocevar committed
1010 1011 1012
dnl
dnl  Windows DirectX module
dnl
1013
AC_ARG_ENABLE(directx,
1014 1015 1016 1017 1018 1019 1020 1021
  [  --disable-directx       Windows DirectX support (default enabled on WIN32)])
if test "x$enableval" != "xno"
then
  if test $SYS = mingw32
  then
    AC_ARG_WITH(directx-path, 
    [  --with-directx-path=path Windows DirectX headers and libraries])
    if test "x$with_directx_path" = "x"
Sam Hocevar's avatar
 
Sam Hocevar committed
1022
    then
1023 1024 1025 1026 1027 1028
      AC_CHECK_HEADERS(directx.h,
      [ PLUGINS="${PLUGINS} directx"
        LIB_DIRECTX="-lgdi32 -ldxguid" ])
    else
      AC_MSG_CHECKING(for directX headers in ${withval})
      if test -f ${withval}/include/directx.h
Gildas Bazin's avatar
 
Gildas Bazin committed
1029
      then
1030 1031 1032 1033
        PLUGINS="${PLUGINS} directx"
        LIB_DIRECTX="-L${withval}/lib -lgdi32 -ldxguid"
        INCLUDE="${INCLUDE} -I${withval}/include"
        AC_MSG_RESULT(yes)
Gildas Bazin's avatar
 
Gildas Bazin committed
1034
      else
1035 1036
        AC_MSG_RESULT(no)
        AC_MSG_ERROR([Cannot find ${withval}/include/directx.h!])
Gildas Bazin's avatar
 
Gildas Bazin committed
1037
      fi
1038 1039 1040
    fi
  fi
fi
Sam Hocevar's avatar
 
Sam Hocevar committed
1041

Sam Hocevar's avatar
 
Sam Hocevar committed
1042 1043 1044
dnl
dnl  Glide module
dnl
Christophe Massiot's avatar
Christophe Massiot committed
1045 1046
AC_ARG_WITH(glide,
  [  --with-glide[=name]     Glide (3dfx) support (default disabled)],
Sam Hocevar's avatar
 
Sam Hocevar committed
1047
  [ if test "x$withval" != "xno"
Christophe Massiot's avatar
Christophe Massiot committed
1048
    then
Sam Hocevar's avatar
 
Sam Hocevar committed
1049 1050
      PLUGINS="${PLUGINS} glide"
      if test "x$withval" != "xyes"
Sam Hocevar's avatar
 
Sam Hocevar committed
1051
      then
Sam Hocevar's avatar
 
Sam Hocevar committed
1052
        LIB_GLIDE="-l"$withval" -lm"
Sam Hocevar's avatar
 
Sam Hocevar committed
1053
      else
Sam Hocevar's avatar
 
Sam Hocevar committed
1054
        LIB_GLIDE="-lglide2x -lm"
Sam Hocevar's avatar
 
Sam Hocevar committed
1055
      fi
Sam Hocevar's avatar
 
Sam Hocevar committed
1056
      CFLAGS_GLIDE="-I/usr/include/glide"
Christophe Massiot's avatar
Christophe Massiot committed
1057
    fi ])
Sam Hocevar's avatar
 
Sam Hocevar committed
1058 1059 1060 1061

dnl
dnl  ncurses module
dnl
Sam Hocevar's avatar
 
Sam Hocevar committed
1062 1063
AC_ARG_ENABLE(ncurses,
  [  --enable-ncurses        ncurses interface support (default disabled)],
Sam Hocevar's avatar
 
Sam Hocevar committed
1064
  [if test x$enable_ncurses = xyes; then
Sam Hocevar's avatar
 
Sam Hocevar committed
1065
     PLUGINS="${PLUGINS} ncurses"
Sam Hocevar's avatar
 
Sam Hocevar committed
1066 1067 1068 1069 1070 1071
     LIB_NCURSES="-lncurses"
   fi])

dnl
dnl  Qt module
dnl
Sam Hocevar's avatar
 
Sam Hocevar committed
1072 1073
AC_ARG_ENABLE(qt,
  [  --enable-qt             Qt interface support (default disabled)],
Sam Hocevar's avatar
 
Sam Hocevar committed
1074
  [if test x$enable_qt = xyes; then
Sam Hocevar's avatar
 
Sam Hocevar committed
1075 1076
     PLUGINS="${PLUGINS} qt"
     ALIASES="${ALIASES} qvlc"
Sam Hocevar's avatar
 
Sam Hocevar committed
1077
     LIB_QT="-lqt -L${QTDIR}/lib"
Sam Hocevar's avatar
 
Sam Hocevar committed
1078
     CFLAGS_QT="-I/usr/include/qt -I${QTDIR}/include"
Sam Hocevar's avatar
 
Sam Hocevar committed
1079
     if test -x ${QTDIR}/bin/moc
Sam Hocevar's avatar
 
Sam Hocevar committed
1080 1081 1082 1083 1084
     then
       MOC=${QTDIR}/bin/moc
     else
       MOC=moc
     fi
Sam Hocevar's avatar
 
Sam Hocevar committed
1085 1086 1087 1088 1089
   fi])

dnl 
dnl  KDE module
dnl
1090 1091
AC_ARG_ENABLE(kde,
  [  --enable-kde            KDE interface support (default disabled)],
Sam Hocevar's avatar
 
Sam Hocevar committed
1092
  [if test x$enable_kde = xyes; then
Sam Hocevar's avatar
 
Sam Hocevar committed
1093 1094
     PLUGINS="${PLUGINS} kde"
     ALIASES="${ALIASES} kvlc"
Sam Hocevar's avatar
 
Sam Hocevar committed
1095 1096 1097
     LIB_KDE="${LIB_KDE} -L${KDEDIR}/lib -lkfile"
     CFLAGS_KDE="${CFLAGS_KDE} -I/usr/include/kde -I/usr/include/qt"
     CFLAGS_KDE="${CFLAGS_KDE} -I${KDEDIR}/include -I${QTDIR}/include"
1098 1099 1100 1101 1102 1103
     if test -x ${QTDIR}/bin/moc
     then
       MOC=${QTDIR}/bin/moc
     else
       MOC=moc
     fi
Sam Hocevar's avatar
 
Sam Hocevar committed
1104
   fi])
Sam Hocevar's avatar
 
Sam Hocevar committed
1105 1106 1107 1108

dnl
dnl  Gnome module
dnl
1109
AC_ARG_ENABLE(gnome,
Sam Hocevar's avatar
 
Sam Hocevar committed
1110
  [  --enable-gnome          Gnome interface support (default disabled)],
Sam Hocevar's avatar
 
Sam Hocevar committed
1111
  [if test x$enable_gnome = xyes; then
1112 1113 1114 1115
    # look for gnome-config
    AC_PATH_PROG(GNOME_CONFIG, gnome-config, no)
    if test -x ${GNOME_CONFIG}
    then
Sam Hocevar's avatar
 
Sam Hocevar committed
1116
       CFLAGS_GNOME="`${GNOME_CONFIG} --cflags gtk gnomeui`"
1117 1118 1119 1120 1121 1122 1123 1124 1125 1126 1127 1128 1129 1130 1131
       LIB_GNOME="`${GNOME_CONFIG} --libs gnomeui | sed 's,-rdynamic,,'`"
    fi
    # now look for the gnome.h header
    saved_CPPFLAGS=$CPPFLAGS
    CPPFLAGS="$CPPFLAGS $CFLAGS_GNOME"
    AC_CHECK_HEADERS(gnome.h, [
      PLUGINS="${PLUGINS} gnome"
      ALIASES="${ALIASES} gnome-vlc"
     ],[
      AC_MSG_ERROR([Can't find gnome headers. Please install the gnome
developement librairie or remove the --enable-gnome option])
     ])
  
    CPPFLAGS=$saved_CPPFLAGS
  fi])
Sam Hocevar's avatar
 
Sam Hocevar committed
1132 1133 1134 1135

dnl
dnl  Gtk+ module
dnl
Sam Hocevar's avatar
 
Sam Hocevar committed
1136 1137
AC_ARG_ENABLE(gtk,
  [  --disable-gtk           Gtk+ support (default enabled)])
Sam Hocevar's avatar
 
Sam Hocevar committed
1138 1139
if test x$enable_gtk != xno
then
1140 1141 1142 1143 1144 1145 1146
  GTK_PATH=$PATH
  AC_ARG_WITH(gtk-config-path,
    [  --with-gtk-config-path=path gtk-config path (default search in \$PATH)],
    [ if test "x$withval" != "xno"
      then
        GTK_PATH=$withval:$PATH
      fi ])
Sam Hocevar's avatar
 
Sam Hocevar committed
1147
  # look for gtk-config
1148
  AC_PATH_PROG(GTK_CONFIG, gtk-config, no, $GTK_PATH)
Sam Hocevar's avatar
 
Sam Hocevar committed
1149 1150
  if test -x ${GTK_CONFIG}
  then
Sam Hocevar's avatar
 
Sam Hocevar committed
1151 1152
    CFLAGS_GTK="`${GTK_CONFIG} --cflags gtk`"
    LIB_GTK="`${GTK_CONFIG} --libs gtk | sed 's,-rdynamic,,'`"
1153
  fi
Sam Hocevar's avatar
 
Sam Hocevar committed
1154 1155 1156
  # now look for the gtk.h header
  saved_CPPFLAGS=$CPPFLAGS
  CPPFLAGS="$CPPFLAGS $CFLAGS_GTK"
Sam Hocevar's avatar
 
Sam Hocevar committed
1157 1158 1159 1160
  ac_cv_gtk_headers=yes
  AC_CHECK_HEADERS(gtk/gtk.h glib.h gdk/gdk.h, , [
    ac_cv_gtk_headers=no
    echo "Cannot find gtk development headers."
1161
  ])
Sam Hocevar's avatar
 
Sam Hocevar committed
1162 1163
  if test "x$ac_cv_gtk_headers" = xyes
  then
Sam Hocevar's avatar
 
Sam Hocevar committed
1164 1165
    PLUGINS="${PLUGINS} gtk"
    ALIASES="${ALIASES} gvlc"
1166
  fi
Sam Hocevar's avatar
 
Sam Hocevar committed
1167
  CPPFLAGS=$saved_CPPFLAGS
1168
fi
Sam Hocevar's avatar
 
Sam Hocevar committed
1169 1170 1171

dnl
dnl  X11 module
1172
dnl  (enabled by default except on win32)
Sam Hocevar's avatar
 
Sam Hocevar committed
1173
dnl
1174
AC_ARG_ENABLE(x11,
Sam Hocevar's avatar
 
Sam Hocevar committed
1175
  [  --disable-x11           X11 support (default enabled)])
1176 1177
if test x$enable_x11 != xno &&
  (test $SYS != mingw32 || test x$enable_x11 = xyes); then
Sam Hocevar's avatar
 
Sam Hocevar committed
1178 1179 1180 1181 1182 1183 1184 1185
  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
  saved_CPPFLAGS=$CPPFLAGS
  CPPFLAGS="$CPPFLAGS -I$x_includes"
Sam Hocevar's avatar
 
Sam Hocevar committed
1186
  AC_CHECK_HEADERS(X11/Xlib.h, [
Sam Hocevar's avatar
 
Sam Hocevar committed
1187 1188 1189
    PLUGINS="${PLUGINS} x11"
    LIB_X11="${LIB_X11} -L$x_libraries -lX11 -lXext"
    CFLAGS_X11="${CFLAGS_X11} -I$x_includes"
Sam Hocevar's avatar
 
Sam Hocevar committed
1190 1191
  ]
  CPPFLAGS=$saved_CPPFLAGS)
1192
fi
Sam Hocevar's avatar
 
Sam Hocevar committed
1193 1194 1195

dnl
dnl  XVideo module
1196
dnl  (enabled by default except on win32)
Sam Hocevar's avatar
 
Sam Hocevar committed
1197
dnl
Sam Hocevar's avatar
 
Sam Hocevar committed
1198
AC_ARG_ENABLE(xvideo,
Sam Hocevar's avatar
 
Sam Hocevar committed
1199
  [  --disable-xvideo        XVideo support (default enabled)])
1200 1201
if test x$enable_xvideo != xno &&
  (test $SYS != mingw32 || test x$enable_xvideo = xyes); then
Sam Hocevar's avatar
 
Sam Hocevar committed
1202 1203 1204 1205 1206 1207 1208 1209 1210
  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
  saved_CPPFLAGS=$CPPFLAGS
  CPPFLAGS="$CPPFLAGS -I$x_includes"
  AC_CHECK_HEADERS(X11/extensions/Xv.h, [
Sam Hocevar's avatar
 
Sam Hocevar committed
1211
    BUILTINS="${BUILTINS} xvideo"
Sam Hocevar's avatar
 
Sam Hocevar committed
1212 1213
    LIB_XVIDEO="${LIB_XVIDEO} -L$x_libraries -lX11 -lXext -lXv"
    CFLAGS_XVIDEO="${CFLAGS_XVIDEO} -I$x_includes"
Sam Hocevar's avatar
 
Sam Hocevar committed
1214 1215 1216
  ]
  CPPFLAGS=$saved_CPPFLAGS)
fi
Sam Hocevar's avatar
 
Sam Hocevar committed
1217 1218 1219 1220

dnl
dnl  ALSA module
dnl
Henri Fallon's avatar
 
Henri Fallon committed
1221
AC_ARG_ENABLE(alsa,
1222 1223
  [  --enable-alsa           Alsa sound drivers support (Only for linux)
                          (default disabled)],
Sam Hocevar's avatar
 
Sam Hocevar committed
1224 1225
  [if test x$enable_alsa = xyes
   then
Sam Hocevar's avatar
 
Sam Hocevar committed
1226
     AC_CHECK_HEADER(alsa/asoundlib.h, AC_CHECK_LIB(asound, main, have_alsa="true", have_alsa="false"),have_alsa="false")
Sam Hocevar's avatar
 
Sam Hocevar committed
1227 1228 1229
     if test x$have_alsa = xtrue
     then
       PLUGINS="${PLUGINS} alsa"
Sam Hocevar's avatar
 
Sam Hocevar committed
1230
       LIB_ALSA="-lasound -lm -ldl"
Sam Hocevar's avatar
 
Sam Hocevar committed
1231 1232
     fi
   fi])
Sam Hocevar's avatar
 
Sam Hocevar committed
1233

Sam Hocevar's avatar
 
Sam Hocevar committed
1234
dnl  end of non-BeOS stuff
1235 1236
fi

1237 1238 1239 1240 1241 1242 1243 1244 1245 1246 1247
dnl
dnl  Plug-ins - this must be AT THE END
dnl
AC_ARG_ENABLE(plugins,
  [  --disable-plugins       Make all plug-ins built-in (default plug-ins enabled)],
  [if test x$enable_plugins = xno
   then
     BUILTINS="${BUILTINS} ${PLUGINS}"
     PLUGINS=
   fi])

Sam Hocevar's avatar
 
Sam Hocevar committed
1248 1249 1250 1251 1252 1253 1254 1255 1256 1257
dnl
dnl  DLLs - used for Win32 package build
dnl
DLL_PATH=.
AC_ARG_WITH(dll-path,
  [  --with-dll-path=path    Path to Win32 DLLs (default search in \$PWD)],
  [ if test "x$withval" != "xno"
    then
      DLL_PATH=$withval
    fi ])
1258

Sam Hocevar's avatar
 
Sam Hocevar committed
1259 1260 1261
dnl 
dnl  Configuration is finished
dnl
1262 1263
AC_SUBST(SYS)
AC_SUBST(ARCH)
1264
AC_SUBST(PLUGINS)
Sam Hocevar's avatar
 
Sam Hocevar committed
1265
AC_SUBST(BUILTINS)
1266
AC_SUBST(ALIASES)
Sam Hocevar's avatar
 
Sam Hocevar committed
1267
AC_SUBST(DEFINE)
Sam Hocevar's avatar
 
Sam Hocevar committed
1268
AC_SUBST(INCLUDE)
1269
AC_SUBST(DEBUG)
Sam Hocevar's avatar
 
Sam Hocevar committed
1270
AC_SUBST(ASM)
1271
AC_SUBST(TRACE)
Sam Hocevar's avatar
 
Sam Hocevar committed
1272 1273
AC_SUBST(CPROF)
AC_SUBST(GPROF)
1274
AC_SUBST(OPTIMS)
1275
AC_SUBST(TUNING)
1276
AC_SUBST(RELEASE)
Sam Hocevar's avatar
 
Sam Hocevar committed
1277
AC_SUBST(MOC)
Sam Hocevar's avatar
 
Sam Hocevar committed
1278
AC_SUBST(WINDRES)
Sam Hocevar's avatar
 
Sam Hocevar committed
1279
AC_SUBST(DLL_PATH)
Sam Hocevar's avatar
 
Sam Hocevar committed
1280 1281
AC_SUBST(PACKAGE)
AC_SUBST(VERSION)
Sam Hocevar's avatar
 
Sam Hocevar committed
1282 1283
AC_SUBST(VCD_DEVICE)
AC_SUBST(DVD_DEVICE)
Sam Hocevar's avatar
 
Sam Hocevar committed
1284

Sam Hocevar's avatar
 
Sam Hocevar committed
1285 1286
AC_SUBST(LDFLAGS)
AC_SUBST(PLDFLAGS)
Sam Hocevar's avatar
 
Sam Hocevar committed
1287
AC_SUBST(SOFLAGS)
Sam Hocevar's avatar
 
Sam Hocevar committed
1288

Sam Hocevar's avatar
 
Sam Hocevar committed
1289
AC_SUBST(LIB)
Sam Hocevar's avatar
 
Sam Hocevar committed
1290
AC_SUBST(LIB_ALSA)
Sam Hocevar's avatar
 
Sam Hocevar committed
1291
AC_SUBST(LIB_ARTS)
Sam Hocevar's avatar
 
Sam Hocevar committed
1292 1293
AC_SUBST(LIB_BEOS)
AC_SUBST(LIB_DARWIN)
Gildas Bazin's avatar
 
Gildas Bazin committed
1294
AC_SUBST(LIB_DIRECTX)
Sam Hocevar's avatar
 
Sam Hocevar committed
1295
AC_SUBST(LIB_DVD)
Sam Hocevar's avatar
 
Sam Hocevar committed
1296
AC_SUBST(LIB_DVD_PLUGIN)
Stéphane Borel's avatar
Stéphane Borel committed
1297 1298
AC_SUBST(LIB_DVDREAD)
AC_SUBST(LIB_DVDREAD_PLUGIN)
Sam Hocevar's avatar
 
Sam Hocevar committed
1299
AC_SUBST(LIB_ESD)
Sam Hocevar's avatar
 
Sam Hocevar committed
1300
AC_SUBST(LIB_FILTER_DISTORT)
Christophe Massiot's avatar
Christophe Massiot committed
1301
AC_SUBST(LIB_GGI)
Sam Hocevar's avatar
 
Sam Hocevar committed
1302 1303 1304
AC_SUBST(LIB_GLIDE)
AC_SUBST(LIB_GNOME)
AC_SUBST(LIB_GTK)
Sam Hocevar's avatar
 
Sam Hocevar committed
1305
AC_SUBST(LIB_IDCTALTIVEC)
Sam Hocevar's avatar
 
Sam Hocevar committed
1306 1307 1308
AC_SUBST(LIB_IMDCT)
AC_SUBST(LIB_IMDCT3DN)
AC_SUBST(LIB_IMDCTSSE)
Sam Hocevar's avatar
 
Sam Hocevar committed
1309
AC_SUBST(LIB_KDE)
Gildas Bazin's avatar
 
Gildas Bazin committed
1310
AC_SUBST(LIB_LIBDVDCSS)
Sam Hocevar's avatar
 
Sam Hocevar committed
1311
AC_SUBST(LIB_MACOSX)
Sam Hocevar's avatar
 
Sam Hocevar committed
1312
AC_SUBST(LIB_MAD)
Sam Hocevar's avatar
 
Sam Hocevar committed
1313
AC_SUBST(LIB_MOTIONALTIVEC)
Sam Hocevar's avatar
 
Sam Hocevar committed
1314
AC_SUBST(LIB_MPEG_TS)
Sam Hocevar's avatar
 
Sam Hocevar committed
1315
AC_SUBST(LIB_NCURSES)
Gildas Bazin's avatar
 
Gildas Bazin committed
1316
AC_SUBST(LIB_QNX)
Sam Hocevar's avatar
 
Sam Hocevar committed
1317
AC_SUBST(LIB_QT)
Gildas Bazin's avatar
 
Gildas Bazin committed
1318
AC_SUBST(LIB_RC)
Sam Hocevar's avatar
 
Sam Hocevar committed
1319 1320 1321
AC_SUBST(LIB_SDL)
AC_SUBST(LIB_X11)
AC_SUBST(LIB_XVIDEO)
1322

Sam Hocevar's avatar
 
Sam Hocevar committed
1323
AC_SUBST(CFLAGS_VLC)
Sam Hocevar's avatar
 
Sam Hocevar committed
1324
AC_SUBST(CFLAGS_ARTS)
Sam Hocevar's avatar
 
Sam Hocevar committed
1325
AC_SUBST(CFLAGS_DVD)
Stéphane Borel's avatar
Stéphane Borel committed
1326
AC_SUBST(CFLAGS_DVDREAD)
Sam Hocevar's avatar
 
Sam Hocevar committed
1327
AC_SUBST(CFLAGS_ESD)
Sam Hocevar's avatar
 
Sam Hocevar committed
1328 1329
AC_SUBST(CFLAGS_GLIDE)
AC_SUBST(CFLAGS_GNOME)
Sam Hocevar's avatar
 
Sam Hocevar committed
1330
AC_SUBST(CFLAGS_GTK)
Sam Hocevar's avatar
 
Sam Hocevar committed
1331 1332 1333 1334
AC_SUBST(CFLAGS_KDE)
AC_SUBST(CFLAGS_IDCTALTIVEC)
AC_SUBST(CFLAGS_LIBDVDCSS)
AC_SUBST(CFLAGS_MACOSX)
Sam Hocevar's avatar
 
Sam Hocevar committed
1335
AC_SUBST(CFLAGS_MAD)
Sam Hocevar's avatar
 
Sam Hocevar committed
1336 1337
AC_SUBST(CFLAGS_MOTIONALTIVEC)
AC_SUBST(CFLAGS_QT)
Sam Hocevar's avatar
 
Sam Hocevar committed
1338
AC_SUBST(CFLAGS_SDL)
Sam Hocevar's avatar
 
Sam Hocevar committed
1339
AC_SUBST(CFLAGS_X11)
Sam Hocevar's avatar
 
Sam Hocevar committed
1340
AC_SUBST(CFLAGS_XVIDEO)
Sam Hocevar's avatar
 
Sam Hocevar committed
1341

Sam Hocevar's avatar
 
Sam Hocevar committed
1342 1343
AC_SUBST(SRC_DVD_EXTRA)
AC_SUBST(SRC_DVDCSS_EXTRA)
Sam Hocevar's avatar
 
Sam Hocevar committed
1344

Sam Hocevar's avatar
 
Sam Hocevar committed
1345
AC_SUBST(NEED_GETOPT)
Sam Hocevar's avatar
 
Sam Hocevar committed
1346
AC_SUBST(NEED_LIBDVDCSS)
Sam Hocevar's avatar
 
Sam Hocevar committed
1347

Sam Hocevar's avatar
 
Sam Hocevar committed
1348
AC_OUTPUT([Makefile.opts include/config.h po/Makefile.in])
1349

1350
echo "
Sam Hocevar's avatar
 
Sam Hocevar committed
1351 1352 1353 1354
global configuration
--------------------
system                : ${SYS}
architecture          : ${ARCH}
1355
optimizations         : ${OPTIMS}
1356 1357
tuning:               : ${TUNING}
release:              : ${RELEASE}"
Sam Hocevar's avatar
 
Sam Hocevar committed
1358

Sam Hocevar's avatar
 
Sam Hocevar committed
1359 1360 1361
if test x${HAVE_VLC} = x1
then
  echo "
1362 1363 1364
vlc configuration
-----------------
vlc version           : ${VLC_VERSION}
1365
debug mode            : ${DEBUG}
1366
trace mode            : ${TRACE}
Sam Hocevar's avatar
 
Sam Hocevar committed
1367
cprof/gprof support   : ${CPROF}/${GPROF}
Sam Hocevar's avatar
 
Sam Hocevar committed
1368
need builtin getopt   : ${NEED_GETOPT}
Sam Hocevar's avatar
 
Sam Hocevar committed
1369
built-in modules      :${BUILTINS}
1370
plug-in modules       :${PLUGINS}
Sam Hocevar's avatar
 
Sam Hocevar committed
1371 1372
vlc aliases           :${ALIASES}"
fi
Sam Hocevar's avatar
 
Sam Hocevar committed
1373

Sam Hocevar's avatar
 
Sam Hocevar committed
1374
echo "
Sam Hocevar's avatar
 
Sam Hocevar committed
1375 1376
libdvdcss configuration
-----------------------
Sam Hocevar's avatar
 
Sam Hocevar committed
1377
can be built          : ${CAN_BUILD_LIBDVDCSS}
Sam Hocevar's avatar
 
Sam Hocevar committed
1378 1379
will be built         : ${NEED_LIBDVDCSS}"
if test x${NEED_LIBDVDCSS} = x1
Sam Hocevar's avatar
 
Sam Hocevar committed
1380
then
Sam Hocevar's avatar
 
Sam Hocevar committed
1381
  echo "need BSDI libdvd      : ${NEED_BSDI_LIBDVD}"
Sam Hocevar's avatar
 
Sam Hocevar committed
1382 1383 1384
  echo "link statically       : ${STATIC_LIBDVDCSS}"
else
  echo "use dummy replacement : ${DUMMY_LIBDVDCSS}"
Sam Hocevar's avatar
 
Sam Hocevar committed
1385 1386 1387
fi

echo "
Sam Hocevar's avatar
 
Sam Hocevar committed
1388 1389 1390 1391 1392
You may now tune Makefile.opts at your convenience, for instance to choose
which modules get compiled as plugins.
"
if test x${HAVE_VLC} = x1
then
Sam Hocevar's avatar
 
Sam Hocevar committed
1393
  echo "To build vlc and its plugins, type \`make vlc plugins'."
Sam Hocevar's avatar
 
Sam Hocevar committed
1394 1395 1396 1397 1398 1399
fi
if test x${HAVE_LIBDVDCSS} = x1
then
  echo "To build libdvdcss only, type \`make libdvdcss'."
fi
echo ""
1400