configure.in 18 KB
Newer Older
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

5 6
AC_CANONICAL_HOST

Sam Hocevar's avatar
 
Sam Hocevar committed
7
VLC_VERSION=0.2.80
8
AC_SUBST(VLC_VERSION)
Sam Hocevar's avatar
 
Sam Hocevar committed
9 10
LIBDVDCSS_VERSION=0.0.1
AC_SUBST(LIBDVDCSS_VERSION)
Sam Hocevar's avatar
 
Sam Hocevar committed
11
VLC_CODENAME=Ourumov
12 13
AC_SUBST(VLC_CODENAME)

Sam Hocevar's avatar
 
Sam Hocevar committed
14 15 16
dnl Save CFLAGS
save_CFLAGS="${CFLAGS}"

17 18
dnl Check for tools
AC_PROG_MAKE_SET
Sam Hocevar's avatar
 
Sam Hocevar committed
19 20
AC_PROG_CC
AC_PROG_CPP
Sam Hocevar's avatar
 
Sam Hocevar committed
21
AC_PROG_RANLIB
22 23 24 25 26 27

dnl AM_PROG_LIBTOOL
AC_PROG_INSTALL

dnl Check for compiler environment
AC_C_CONST
Sam Hocevar's avatar
 
Sam Hocevar committed
28 29 30 31 32

dnl Check for endianness if not cross-compiling
if test x${cross_compiling} != xyes; then
  AC_C_BIGENDIAN
fi
33 34 35 36

dnl Check for system libs needed
AC_CHECK_FUNCS(gettimeofday select strerror strtod strtol)
AC_CHECK_FUNCS(setenv putenv)
Sam Hocevar's avatar
 
Sam Hocevar committed
37 38 39 40 41 42 43 44 45 46 47
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")
  ])
])
48
AC_CHECK_FUNCS(usleep)
Sam Hocevar's avatar
 
Sam Hocevar committed
49 50 51
AC_CHECK_FUNC(inet_aton,,[
  AC_CHECK_LIB(resolv,inet_aton,LIB="${LIB} -lresolv")
])
Sam Hocevar's avatar
 
Sam Hocevar committed
52
AC_CHECK_FUNCS(vasprintf)
Sam Hocevar's avatar
 
Sam Hocevar committed
53
AC_CHECK_FUNCS(swab)
Sam Hocevar's avatar
 
Sam Hocevar committed
54

Sam Hocevar's avatar
 
Sam Hocevar committed
55 56
AC_CHECK_FUNCS(sigrelse)

Sam Hocevar's avatar
 
Sam Hocevar committed
57 58 59
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
60
    [AC_DEFINE(HAVE_GETOPT_LONG,1,getopt support) LIB="${LIB} -lgnugetopt"],
Sam Hocevar's avatar
 
Sam Hocevar committed
61
    [GETOPT=1])])
Sam Hocevar's avatar
 
Sam Hocevar committed
62 63
AC_SUBST(GETOPT)

64 65
AC_FUNC_MMAP
AC_TYPE_SIGNAL
Sam Hocevar's avatar
 
Sam Hocevar committed
66 67
AC_CHECK_LIB(dl,dlopen,LIB="${LIB} -ldl")
AC_CHECK_LIB(m,pow,LIB_YUV="${LIB_YUV} -lm")
Sam Hocevar's avatar
 
Sam Hocevar committed
68

Christophe Massiot's avatar
Christophe Massiot committed
69
CPPFLAGS="${CPPFLAGS} -I/usr/local/include"
Sam Hocevar's avatar
 
Sam Hocevar committed
70
CFLAGS="${CFLAGS} -I/usr/local/include"
Sam Hocevar's avatar
 
Sam Hocevar committed
71

Sam Hocevar's avatar
 
Sam Hocevar committed
72 73
dnl Check for pthreads - borrowed from XMMS
PTHREAD_LIBS=error
Sam Hocevar's avatar
 
Sam Hocevar committed
74 75 76
AC_CHECK_LIB(pthread,pthread_attr_init,THREAD_LIB="-lpthread")
if test "x${THREAD_LIB}" = xerror; then
  AC_CHECK_LIB(pthreads,pthread_attr_init,THREAD_LIB="-lpthreads")
Sam Hocevar's avatar
 
Sam Hocevar committed
77
fi
Sam Hocevar's avatar
 
Sam Hocevar committed
78 79
if test "x${THREAD_LIB}" = xerror; then
  AC_CHECK_LIB(c_r,pthread_attr_init,THREAD_LIB="-lc_r")
Sam Hocevar's avatar
 
Sam Hocevar committed
80
fi
Sam Hocevar's avatar
 
Sam Hocevar committed
81 82
if test "x${THREAD_LIB}" = xerror; then
  THREAD_LIBS=""
Sam Hocevar's avatar
 
Sam Hocevar committed
83 84
  AC_CHECK_FUNC(pthread_attr_init)
fi
85

Sam Hocevar's avatar
 
Sam Hocevar committed
86 87 88
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
89
            Define if <pthread.h> defines pthread_cond_t.)])
Sam Hocevar's avatar
 
Sam Hocevar committed
90 91
AC_EGREP_HEADER(strncasecmp,strings.h,[
  AC_DEFINE(STRNCASECMP_IN_STRINGS_H, 1,
Sam Hocevar's avatar
 
Sam Hocevar committed
92
            Define if <strings.h> defines strncasecmp.)])
Sam Hocevar's avatar
 
Sam Hocevar committed
93

Sam Hocevar's avatar
 
Sam Hocevar committed
94 95 96 97 98 99 100 101 102 103 104
dnl Check for headers
AC_CHECK_HEADERS(stddef.h getopt.h strings.h)
AC_CHECK_HEADERS(sys/sockio.h fcntl.h sys/time.h unistd.h)
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)

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
105
dnl Check for ntohl, etc.
Sam Hocevar's avatar
 
Sam Hocevar committed
106
CFLAGS="${save_CFLAGS} -Wall -Werror"
Christophe Massiot's avatar
Christophe Massiot committed
107 108 109
AC_MSG_CHECKING([for ntohl in sys/param.h])
AC_TRY_COMPILE([#include <sys/param.h>
void foo() { int meuh; ntohl(meuh); }],,
Sam Hocevar's avatar
 
Sam Hocevar committed
110
 AC_DEFINE(NTOHL_IN_SYS_PARAM_H, 1, Define if <sys/param.h> defines ntohl.)
Sam Hocevar's avatar
 
Sam Hocevar committed
111 112
 AC_MSG_RESULT(yes), AC_MSG_RESULT(no))

Sam Hocevar's avatar
 
Sam Hocevar committed
113 114 115 116 117 118 119 120 121 122 123 124 125 126
dnl Check for Darwin plugin linking flags
CFLAGS="${save_CFLAGS} -bundle -undefined suppress"
AC_MSG_CHECKING([if \$CC compiles plugins with -bundle -undefined suppress])
AC_TRY_COMPILE([],,
 PLCFLAGS="${PLCFLAGS} -bundle -undefined suppress"; AC_MSG_RESULT(yes),
 AC_MSG_RESULT(no))

dnl Check for standard plugin linking flags
CFLAGS="${save_CFLAGS} -shared"
AC_MSG_CHECKING([if \$CC compiles plugins with -shared])
AC_TRY_COMPILE([],,
 PLCFLAGS="${PLCFLAGS} -shared"; AC_MSG_RESULT(yes),
 AC_MSG_RESULT(no))

Sam Hocevar's avatar
 
Sam Hocevar committed
127
dnl End of the bizarre compilation tests
Sam Hocevar's avatar
 
Sam Hocevar committed
128
CFLAGS="${save_CFLAGS}"
Christophe Massiot's avatar
Christophe Massiot committed
129

130
dnl Check for boolean_t
Sam Hocevar's avatar
 
Sam Hocevar committed
131 132 133 134 135
AC_MSG_CHECKING([for boolean_t in sys/types.h])
AC_TRY_COMPILE([#include <sys/types.h>
void quux() { boolean_t foo; }],,
 AC_DEFINE(BOOLEAN_T_IN_SYS_TYPES_H, 1, Define if <sys/types.h> defines boolean_t.)
 AC_MSG_RESULT(yes), AC_MSG_RESULT(no))
136 137 138 139 140
AC_MSG_CHECKING([for boolean_t in pthread.h])
AC_TRY_COMPILE([#include <pthread.h>
void quux() { boolean_t foo; }],,
 AC_DEFINE(BOOLEAN_T_IN_PTHREAD_H, 1, Define if <pthread.h> defines boolean_t.)
 AC_MSG_RESULT(yes), AC_MSG_RESULT(no))
Sam Hocevar's avatar
 
Sam Hocevar committed
141

142 143 144 145 146
dnl Checks for typedefs, structures, and compiler characteristics.
AC_C_CONST
AC_TYPE_SIZE_T
AC_HEADER_TIME

Sam Hocevar's avatar
 
Sam Hocevar committed
147 148 149 150 151
ARCH=${host_cpu}

dnl
dnl  default modules
dnl
Sam Hocevar's avatar
 
Sam Hocevar committed
152 153
BUILTINS="${BUILTINS} es ps ts yuv idct idctclassic motion imdct downmix"
PLUGINS="${PLUGINS}"
Sam Hocevar's avatar
 
Sam Hocevar committed
154 155 156 157

dnl
dnl  Accelerated modules
dnl
Gildas Bazin's avatar
 
Gildas Bazin committed
158 159
MMX_MODULES="yuvmmx idctmmx motionmmx"
MMXEXT_MODULES="idctmmxext motionmmxext imdct3dn imdctsse downmix3dn downmixsse"
160

Sam Hocevar's avatar
 
Sam Hocevar committed
161 162
AC_MSG_CHECKING([if \$CC groks MMX inline assembly])
AC_TRY_COMPILE([void quux(){void *p;asm("packuswb %%mm1,%%mm2"::"r"(p));}],,
Sam Hocevar's avatar
 
Sam Hocevar committed
163
  ACCEL_MODULES="${ACCEL_MODULES} ${MMX_MODULES}"
Sam Hocevar's avatar
 
Sam Hocevar committed
164 165
  AC_MSG_RESULT(yes), AC_MSG_RESULT(no))

Sam Hocevar's avatar
 
Sam Hocevar committed
166
AC_MSG_CHECKING([if \$CC groks MMX EXT or SSE inline assembly])
Sam Hocevar's avatar
 
Sam Hocevar committed
167
AC_TRY_COMPILE([void quux(){void *p;asm("maskmovq %%mm1,%%mm2"::"r"(p));}],,
Sam Hocevar's avatar
 
Sam Hocevar committed
168
  ACCEL_MODULES="${ACCEL_MODULES} ${MMXEXT_MODULES}"
Sam Hocevar's avatar
 
Sam Hocevar committed
169 170
  AC_MSG_RESULT(yes), AC_MSG_RESULT(no))

Sam Hocevar's avatar
 
Sam Hocevar committed
171
dnl
Sam Hocevar's avatar
 
Sam Hocevar committed
172
dnl  libdvdcss: check for DVD ioctls
Sam Hocevar's avatar
 
Sam Hocevar committed
173
dnl
Sam Hocevar's avatar
 
Sam Hocevar committed
174 175 176 177 178 179 180

dnl  for windoze
AC_CHECK_HEADERS(winioctl.h,[
  LIBDVDCSS=1
])

dnl  for Un*x
Sam Hocevar's avatar
 
Sam Hocevar committed
181
AC_CHECK_HEADERS(sys/ioctl.h,[
Sam Hocevar's avatar
 
Sam Hocevar committed
182
  LIBDVDCSS=1
Sam Hocevar's avatar
 
Sam Hocevar committed
183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210
  AC_CHECK_HEADERS(sys/cdio.h sys/dvdio.h linux/cdrom.h)
  BSD_DVD_STRUCT=0
  dnl
  dnl Old FreeBSD: sys/cdio.h
  dnl
  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.)
    BSD_DVD_STRUCT=1
  ])
  dnl
  dnl Newer FreeBSD: sys/dvdio.h
  dnl
  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.)
    BSD_DVD_STRUCT=1
  ])
  if test x$BSD_DVD_STRUCT = x1; then
    AC_DEFINE(HAVE_BSD_DVD_STRUCT, 1,
              Define if BSD-like dvd_struct is defined.)
  fi
  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
211 212 213
  ])
])

Sam Hocevar's avatar
 
Sam Hocevar committed
214 215 216 217 218 219 220 221 222 223 224 225
dnl
dnl  Check the operating system
dnl
case ${host_os} in
  darwin*)
    SYS=darwin
    ;;
  *)
    SYS=${host_os}
    ;;
esac

Sam Hocevar's avatar
 
Sam Hocevar committed
226 227 228
dnl
dnl  PentiumPro acceleration
dnl
229
AC_ARG_ENABLE(ppro,
Sam Hocevar's avatar
 
Sam Hocevar committed
230
  [  --disable-ppro          Disable PentiumPro optimizations (default enabled for x86)],
Sam Hocevar's avatar
 
Sam Hocevar committed
231 232
[ if test x$enableval = xyes; then ARCH="${ARCH} ppro"; fi ],
[ if test x${host_cpu} = xi686; then ARCH="${ARCH} ppro"; fi ])
Sam Hocevar's avatar
 
Sam Hocevar committed
233 234 235 236

dnl
dnl  MMX acceleration
dnl
237
AC_ARG_ENABLE(mmx,
Christophe Massiot's avatar
Christophe Massiot committed
238
[  --disable-mmx           Disable MMX optimizations (default enabled for x86)],
Sam Hocevar's avatar
 
Sam Hocevar committed
239
[ if test x$enableval = xyes; then ARCH="${ARCH} mmx";
Sam Hocevar's avatar
 
Sam Hocevar committed
240
  BUILTINS="${BUILTINS} ${ACCEL_MODULES}"; fi ],
Sam Hocevar's avatar
 
Sam Hocevar committed
241
[ if test x${host_cpu} = xi686 -o x${host_cpu} = xi586 -o x${host_cpu} = xx86 -o x${host_cpu} = xi386; then ARCH="${ARCH} mmx";
Sam Hocevar's avatar
 
Sam Hocevar committed
242
  BUILTINS="${BUILTINS} ${ACCEL_MODULES}"; fi ])
Sam Hocevar's avatar
 
Sam Hocevar committed
243 244 245 246

dnl
dnl  AltiVec acceleration
dnl
247
AC_ARG_ENABLE(altivec,
248
[  --enable-altivec        Enable altivec optimizations (default disabled since it is broken)],
Sam Hocevar's avatar
 
Sam Hocevar committed
249
[ if test x$enableval = xyes; then ARCH="${ARCH} altivec";
Sam Hocevar's avatar
 
Sam Hocevar committed
250
    BUILTINS="${BUILTINS} idctaltivec"
Sam Hocevar's avatar
 
Sam Hocevar committed
251 252
    LIB_IDCTALTIVEC="-framework vecLib"
  fi ])
Sam Hocevar's avatar
 
Sam Hocevar committed
253
#[ if test -d /System/Library/Frameworks/vecLib.framework; then ARCH="${ARCH} altivec"; PLUGINS="${PLUGINS} idctaltivec"; fi ])
Sam Hocevar's avatar
 
Sam Hocevar committed
254 255 256 257

dnl
dnl  Debugging mode
dnl
258
AC_ARG_ENABLE(debug,
259
[  --enable-debug          Enable debug mode (default disabled)],
260
[ if test x$enableval = xyes; then DEBUG=1; fi ])
Sam Hocevar's avatar
 
Sam Hocevar committed
261 262 263 264

dnl
dnl  Enable/disable statistics
dnl
265
AC_ARG_ENABLE(stats,
266
[  --enable-stats          Enable printing of statistics (default disabled)],
267
[ if test x$enableval = xyes; then STATS=1; fi ])
Sam Hocevar's avatar
 
Sam Hocevar committed
268

269 270 271 272 273 274 275
dnl
dnl  Trace mode
dnl
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
276 277 278 279 280 281 282
dnl
dnl  Trace mode
dnl
AC_ARG_ENABLE(profiling,
[  --enable-profiling      Enable gprof profiling (default disabled)],
[ if test x$enableval = xyes; then PROFILING=1; fi ])

Sam Hocevar's avatar
 
Sam Hocevar committed
283 284 285
dnl
dnl  Enable/disable optimizations
dnl
286
AC_ARG_ENABLE(optimizations,
287
[  --disable-optimizations Disable compiler optimizations (default enabled)],
288 289
[ if test x$enableval = xno; then OPTIMS=0; fi ],
[ OPTIMS=1 ])
290

Sam Hocevar's avatar
 
Sam Hocevar committed
291 292 293 294 295 296 297 298 299 300 301 302 303 304 305 306 307 308 309 310 311 312 313 314
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
dnl  CSS DVD decryption
dnl
AC_ARG_ENABLE(css,
[  --disable-css           Disable DVD CSS decryption (default enabled)],
[ if test x$enableval = xyes; then CSS=1; else CSS=0; fi ], [ CSS=1; ])
if test x${CSS} = x1; then AC_DEFINE(HAVE_CSS, 1, Define if you want DVD CSS decryption.) fi

Sam Hocevar's avatar
 
Sam Hocevar committed
315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 334 335 336 337 338 339 340 341 342 343 344 345 346 347 348 349 350 351 352 353
dnl
dnl  DVD module: check for installed libdvdcss or local libdvdcss
dnl  TODO: use user-provided --with-dvdcss flag
dnl
AC_CHECK_HEADERS(videolan/dvdcss.h,[
  # installed libdvdcss
  BUILTINS="${BUILTINS} dvd"
  LIB_DVD="${LIB_DVD} -ldvdcss"],
  [if test x${LIBDVDCSS} = x1; then
    # local libdvdcss
    LOCAL_LIBDVDCSS=1
    BUILTINS="${BUILTINS} dvd"
    CFLAGS_DVD="${CFLAGS_DVD} -I../../extras/libdvdcss"
  fi])

dnl
dnl  dummy plugin
dnl
AC_ARG_ENABLE(dummy,
  [  --disable-dummy         dummy module (default enabled)])
if test x$enable_dummy != xno; then
  BUILTINS="${BUILTINS} dummy"; fi

dnl
dnl  null plugin
dnl
AC_ARG_ENABLE(null,
  [  --disable-null          Null module (default enabled)])
if test x$enable_null != xno; then
  BUILTINS="${BUILTINS} null"; fi

dnl
dnl  rc plugin
dnl
AC_ARG_ENABLE(rc,
  [  --disable-rc            rc module (default enabled)])
if test x$enable_rc != xno; then
  BUILTINS="${BUILTINS} rc"; fi

Sam Hocevar's avatar
 
Sam Hocevar committed
354
dnl special case for BeOS
Sam Hocevar's avatar
 
Sam Hocevar committed
355
if test x$SYS = xbeos; then
Sam Hocevar's avatar
 
Sam Hocevar committed
356
    BUILTINS="${BUILTINS} beos"
Sam Hocevar's avatar
 
Sam Hocevar committed
357
    LIB_BEOS="-lbe -lgame -lroot -ltracker"
Sam Hocevar's avatar
 
Sam Hocevar committed
358
    PLCFLAGS="${PLCFLAGS} -nostart"
359 360 361 362

dnl default case
else

Sam Hocevar's avatar
 
Sam Hocevar committed
363 364 365
dnl
dnl  OSS /dev/dsp module
dnl
366
AC_ARG_ENABLE(dsp,
367
  [  --disable-dsp           Linux /dev/dsp support (default enabled)])
368
if test x$enable_dsp != xno; then
369
  if test -c /dev/dsp; then
Sam Hocevar's avatar
 
Sam Hocevar committed
370
    PLUGINS="${PLUGINS} dsp"
371 372
  fi
fi
Sam Hocevar's avatar
 
Sam Hocevar committed
373 374 375 376

dnl
dnl  Esound module
dnl
377
AC_ARG_ENABLE(esd,
378
  [  --enable-esd            Esound library support (default disabled)],
Sam Hocevar's avatar
 
Sam Hocevar committed
379
  [if test x$enable_esd = xyes; then
Sam Hocevar's avatar
 
Sam Hocevar committed
380 381
     AC_PATH_PROG(ESD_CONFIG, esd-config, no)
     if test x${ESD_CONFIG} != xno; then
Sam Hocevar's avatar
 
Sam Hocevar committed
382
       PLUGINS="${PLUGINS} esd"
Sam Hocevar's avatar
 
Sam Hocevar committed
383 384
       LIB_ESD="`${ESD_CONFIG} --libs`"
     fi
Sam Hocevar's avatar
 
Sam Hocevar committed
385 386 387 388 389
   fi])

dnl
dnl  Darwin module
dnl
Sam Hocevar's avatar
 
Sam Hocevar committed
390 391
AC_ARG_ENABLE(darwin,
  [  --enable-darwin         Darwin sound support (default disabled)],
Sam Hocevar's avatar
 
Sam Hocevar committed
392
  [if test x$enable_darwin = xyes; then
Sam Hocevar's avatar
 
Sam Hocevar committed
393
     PLUGINS="${PLUGINS} darwin"
Sam Hocevar's avatar
 
Sam Hocevar committed
394 395 396 397 398 399
     LIB_DARWIN="-framework CoreAudio"
   fi])

dnl
dnl  MacOS X module
dnl
Sam Hocevar's avatar
 
Sam Hocevar committed
400
AC_ARG_ENABLE(macosx,
401
  [  --enable-macosx         Mac OS X interface support (default enabled in Mac OS X)],
Sam Hocevar's avatar
 
Sam Hocevar committed
402
  [if test x$enable_macosx = xyes; then
Sam Hocevar's avatar
 
Sam Hocevar committed
403
     BUILTINS="${BUILTINS} macosx"
Sam Hocevar's avatar
 
Sam Hocevar committed
404
     LIB_MACOSX="-framework CoreAudio -framework Carbon -framework AGL"
Sam Hocevar's avatar
 
Sam Hocevar committed
405 406
     LIB_TS="${LIB_TS} -framework AGL -framework Carbon"
     LIB_SDL="${LIB_SDL} -framework AGL -framework Carbon"
Sam Hocevar's avatar
 
Sam Hocevar committed
407 408
   fi],
  [AC_CHECK_HEADERS(Carbon/Carbon.h,
Sam Hocevar's avatar
 
Sam Hocevar committed
409
     BUILTINS="${BUILTINS} macosx"
Sam Hocevar's avatar
 
Sam Hocevar committed
410
     LIB_MACOSX="-framework CoreAudio -framework Carbon -framework AGL"
Sam Hocevar's avatar
 
Sam Hocevar committed
411 412
     LIB_TS="${LIB_TS} -framework AGL -framework Carbon"
     LIB_SDL="${LIB_SDL} -framework AGL -framework Carbon"
Sam Hocevar's avatar
 
Sam Hocevar committed
413 414 415 416 417
   )])

dnl
dnl  Linux framebuffer module
dnl
418 419
AC_ARG_ENABLE(fb,
  [  --enable-fb             Linux framebuffer support (default disabled)],
Sam Hocevar's avatar
 
Sam Hocevar committed
420
  [if test x$enable_fb = xyes; then PLUGINS="${PLUGINS} fb"; fi])
Sam Hocevar's avatar
 
Sam Hocevar committed
421 422 423 424

dnl
dnl  GGI module
dnl
Christophe Massiot's avatar
Christophe Massiot committed
425 426
AC_ARG_WITH(ggi,
  [  --with-ggi[=name]       GGI support (default disabled)],
Sam Hocevar's avatar
 
Sam Hocevar committed
427
  [ if test "x$withval" != "xno";
Christophe Massiot's avatar
Christophe Massiot committed
428
    then
Sam Hocevar's avatar
 
Sam Hocevar committed
429
      PLUGINS="${PLUGINS} ggi";
Sam Hocevar's avatar
 
Sam Hocevar committed
430 431 432 433 434 435
      if test "x$withval" != "xyes";
      then
        LIB_GGI="-l"$withval
      else
        LIB_GGI="-lggi"
      fi
Christophe Massiot's avatar
Christophe Massiot committed
436
    fi ])
Sam Hocevar's avatar
 
Sam Hocevar committed
437 438 439 440

dnl
dnl  SDL module
dnl
Christophe Massiot's avatar
Christophe Massiot committed
441
AC_ARG_WITH(sdl,
Sam Hocevar's avatar
 
Sam Hocevar committed
442
  [  --with-sdl[=name]       SDL support (default enabled)],
Sam Hocevar's avatar
 
Sam Hocevar committed
443
  [ if test "x$withval" != "xno";
Christophe Massiot's avatar
Christophe Massiot committed
444
    then
Sam Hocevar's avatar
 
Sam Hocevar committed
445
      PLUGINS="${PLUGINS} sdl";
Sam Hocevar's avatar
 
Sam Hocevar committed
446 447
      if test "x$withval" != "xyes";
      then
Sam Hocevar's avatar
 
Sam Hocevar committed
448
        LIB_SDL="${LIB_SDL} -L/usr/X11R6/lib -L"$withval"/lib -lSDL"
Sam Hocevar's avatar
 
Sam Hocevar committed
449
        CFLAGS_SDL="-I"$withval"/include"
Sam Hocevar's avatar
 
Sam Hocevar committed
450
      else
451
        AC_CHECK_HEADERS(SDL/SDL.h, , [echo "Cannot find SDL headers !"; exit])
Sam Hocevar's avatar
 
Sam Hocevar committed
452
        LIB_SDL="${LIB_SDL} -L/usr/X11R6/lib -lSDL"
Sam Hocevar's avatar
 
Sam Hocevar committed
453
      fi
Christophe Massiot's avatar
Christophe Massiot committed
454
    fi ])
455
    if test "x$withval" = "x";
Sam Hocevar's avatar
 
Sam Hocevar committed
456
    then
457
      AC_CHECK_HEADERS(SDL/SDL.h,
Sam Hocevar's avatar
 
Sam Hocevar committed
458 459
      [PLUGINS="${PLUGINS} sdl"
       LIB_SDL="${LIB_SDL} -L/usr/X11R6/lib -lSDL"])
Sam Hocevar's avatar
 
Sam Hocevar committed
460
    fi
Sam Hocevar's avatar
 
Sam Hocevar committed
461

Sam Hocevar's avatar
 
Sam Hocevar committed
462 463 464 465 466 467 468 469 470 471
dnl
dnl  Windows DirectX module
dnl
AC_ARG_WITH(directx,
  [  --with-directx[=name]   Windows DirectX support (default enabled)],
  [ if test "x$withval" != "xno";
    then
      PLUGINS="${PLUGINS} directx";
      if test "x$withval" != "xyes";
      then
Sam Hocevar's avatar
 
Sam Hocevar committed
472
        LIB_DIRECTX="${LIB_DIRECTX} -L"$withval"/lib -lgdi32 -ldxguid"
Sam Hocevar's avatar
 
Sam Hocevar committed
473 474 475
        INCLUDE="${INCLUDE} -I"$withval"/include"
      else
        AC_CHECK_HEADERS(directx.h, , [echo "Cannot find DirectX headers !"; exit])
Sam Hocevar's avatar
 
Sam Hocevar committed
476
        LIB_DIRECTX="${LIB_DIRECTX} -L/usr/lib -lgdi32 -ldxguid"
Sam Hocevar's avatar
 
Sam Hocevar committed
477 478 479 480 481 482
      fi
    fi ])
    if test "x$withval" = "x";
    then
      AC_CHECK_HEADERS(directx.h,
      [PLUGINS="${PLUGINS} directx"
Sam Hocevar's avatar
 
Sam Hocevar committed
483
       LIB_DIRECTX="${LIB_DIRECTX} -L/usr/lib -lgdi32 -ldxguid"])
Sam Hocevar's avatar
 
Sam Hocevar committed
484 485
    fi

Sam Hocevar's avatar
 
Sam Hocevar committed
486 487 488
dnl
dnl  Glide module
dnl
Christophe Massiot's avatar
Christophe Massiot committed
489 490
AC_ARG_WITH(glide,
  [  --with-glide[=name]     Glide (3dfx) support (default disabled)],
Sam Hocevar's avatar
 
Sam Hocevar committed
491
  [ if test "x$withval" != "xno";
Christophe Massiot's avatar
Christophe Massiot committed
492
    then
Sam Hocevar's avatar
 
Sam Hocevar committed
493
      PLUGINS="${PLUGINS} glide";
Sam Hocevar's avatar
 
Sam Hocevar committed
494 495
      if test "x$withval" != "xyes";
      then
Sam Hocevar's avatar
 
Sam Hocevar committed
496
        LIB_GLIDE="-l"$withval" -lm"
Sam Hocevar's avatar
 
Sam Hocevar committed
497
      else
Sam Hocevar's avatar
 
Sam Hocevar committed
498
        LIB_GLIDE="-lglide2x -lm"
Sam Hocevar's avatar
 
Sam Hocevar committed
499
      fi
Christophe Massiot's avatar
Christophe Massiot committed
500
    fi ])
Sam Hocevar's avatar
 
Sam Hocevar committed
501 502 503 504

dnl
dnl  ncurses module
dnl
Sam Hocevar's avatar
 
Sam Hocevar committed
505 506
AC_ARG_ENABLE(ncurses,
  [  --enable-ncurses        ncurses interface support (default disabled)],
Sam Hocevar's avatar
 
Sam Hocevar committed
507
  [if test x$enable_ncurses = xyes; then
Sam Hocevar's avatar
 
Sam Hocevar committed
508
     PLUGINS="${PLUGINS} ncurses"
Sam Hocevar's avatar
 
Sam Hocevar committed
509 510 511 512 513 514
     LIB_NCURSES="-lncurses"
   fi])

dnl
dnl  Qt module
dnl
Sam Hocevar's avatar
 
Sam Hocevar committed
515 516
AC_ARG_ENABLE(qt,
  [  --enable-qt             Qt interface support (default disabled)],
Sam Hocevar's avatar
 
Sam Hocevar committed
517
  [if test x$enable_qt = xyes; then
Sam Hocevar's avatar
 
Sam Hocevar committed
518 519
     PLUGINS="${PLUGINS} qt"
     ALIASES="${ALIASES} qvlc"
Sam Hocevar's avatar
 
Sam Hocevar committed
520
     LIB_QT="-lqt -L${QTDIR}/lib"
Sam Hocevar's avatar
 
Sam Hocevar committed
521 522 523 524 525 526
     if test -x ${QTDIR}/bin/moc ;
     then
       MOC=${QTDIR}/bin/moc
     else
       MOC=moc
     fi
Sam Hocevar's avatar
 
Sam Hocevar committed
527 528 529 530 531
   fi])

dnl 
dnl  KDE module
dnl
532 533
AC_ARG_ENABLE(kde,
  [  --enable-kde            KDE interface support (default disabled)],
Sam Hocevar's avatar
 
Sam Hocevar committed
534
  [if test x$enable_kde = xyes; then PLUGINS="${PLUGINS} kde"; ALIASES="${ALIASES} kvlc"; fi])
Sam Hocevar's avatar
 
Sam Hocevar committed
535 536 537 538

dnl
dnl  Gnome module
dnl
539
AC_ARG_ENABLE(gnome,
Sam Hocevar's avatar
 
Sam Hocevar committed
540
  [  --enable-gnome          Gnome interface support (default disabled)],
Sam Hocevar's avatar
 
Sam Hocevar committed
541
  [if test x$enable_gnome = xyes; then
Sam Hocevar's avatar
 
Sam Hocevar committed
542 543
     PLUGINS="${PLUGINS} gnome"
     ALIASES="${ALIASES} gnome-vlc"
Sam Hocevar's avatar
 
Sam Hocevar committed
544 545 546 547 548 549
     LIB_GNOME="`gnome-config --libs gnomeui | sed 's,-rdynamic,,'`"
   fi])

dnl
dnl  Gtk+ module
dnl
Sam Hocevar's avatar
 
Sam Hocevar committed
550 551
AC_ARG_ENABLE(gtk,
  [  --disable-gtk           Gtk+ support (default enabled)])
552
if test x$enable_gtk != xno; then
Sam Hocevar's avatar
 
Sam Hocevar committed
553 554
  AC_PATH_PROG(GTK_CONFIG, gtk-config, no)
  if test x${GTK_CONFIG} != xno; then
Sam Hocevar's avatar
 
Sam Hocevar committed
555 556
    PLUGINS="${PLUGINS} gtk"
    ALIASES="${ALIASES} gvlc"
Sam Hocevar's avatar
 
Sam Hocevar committed
557 558
    CFLAGS_GTK="`${GTK_CONFIG} --cflags gtk`"
    LIB_GTK="`${GTK_CONFIG} --libs gtk | sed 's,-rdynamic,,'`"
559 560
  fi
fi
Sam Hocevar's avatar
 
Sam Hocevar committed
561 562 563 564

dnl
dnl  X11 module
dnl
565
AC_ARG_ENABLE(x11,
Sam Hocevar's avatar
 
Sam Hocevar committed
566
  [  --disable-x11           X11 support (default enabled)])
567
if test x$enable_x11 != xno; then
Sam Hocevar's avatar
 
Sam Hocevar committed
568 569 570 571 572 573 574 575
  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
576
  AC_CHECK_HEADERS(X11/Xlib.h, [
Sam Hocevar's avatar
 
Sam Hocevar committed
577
    PLUGINS="${PLUGINS} x11"
Sam Hocevar's avatar
 
Sam Hocevar committed
578 579 580 581
    LIB_X11="-L$x_libraries -lX11 -lXext"
    CFLAGS_X11="-I$x_includes"
  ]
  CPPFLAGS=$saved_CPPFLAGS)
582
fi
Sam Hocevar's avatar
 
Sam Hocevar committed
583 584 585 586

dnl
dnl  XVideo module
dnl
Sam Hocevar's avatar
 
Sam Hocevar committed
587
AC_ARG_ENABLE(xvideo,
Sam Hocevar's avatar
 
Sam Hocevar committed
588 589 590 591 592 593 594 595 596 597 598 599 600 601 602 603 604
  [  --disable-xvideo        XVideo support (default enabled)])
if test x$enable_xvideo != xno; 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
  saved_CPPFLAGS=$CPPFLAGS
  CPPFLAGS="$CPPFLAGS -I$x_includes"
  AC_CHECK_HEADERS(X11/extensions/Xv.h, [
    PLUGINS="${PLUGINS} xvideo"
    LIB_XVIDEO="-L$x_libraries -lX11 -lXext -lXv"
    CFLAGS_X11="-I$x_includes"
  ]
  CPPFLAGS=$saved_CPPFLAGS)
fi
Sam Hocevar's avatar
 
Sam Hocevar committed
605 606 607 608

dnl
dnl  ALSA module
dnl
Henri Fallon's avatar
 
Henri Fallon committed
609
AC_ARG_ENABLE(alsa,
610
  [  --enable-alsa           Alsa sound drivers support (Only for linux) (default disabled)],
Sam Hocevar's avatar
 
Sam Hocevar committed
611 612
  [if test x$enable_alsa = xyes; then AC_CHECK_HEADER(sys/asoundlib.h, AC_CHECK_LIB(asound, main, have_alsa="true", have_alsa="false"),have_alsa="false") if test x$have_alsa = xtrue; then
     PLUGINS="${PLUGINS} alsa"
Sam Hocevar's avatar
 
Sam Hocevar committed
613 614
     LIB_ALSA="-lasound"
   fi; fi])
Sam Hocevar's avatar
 
Sam Hocevar committed
615

Sam Hocevar's avatar
 
Sam Hocevar committed
616
dnl  end of non-BeOS stuff
617 618
fi

Sam Hocevar's avatar
 
Sam Hocevar committed
619 620 621
dnl 
dnl  Configuration is finished
dnl
622 623
AC_SUBST(SYS)
AC_SUBST(ARCH)
624
AC_SUBST(PLUGINS)
Sam Hocevar's avatar
 
Sam Hocevar committed
625
AC_SUBST(BUILTINS)
626
AC_SUBST(ALIASES)
Sam Hocevar's avatar
 
Sam Hocevar committed
627
AC_SUBST(DEFINE)
Sam Hocevar's avatar
 
Sam Hocevar committed
628
AC_SUBST(INCLUDE)
629 630
AC_SUBST(DEBUG)
AC_SUBST(STATS)
Sam Hocevar's avatar
 
Sam Hocevar committed
631
AC_SUBST(ASM)
632
AC_SUBST(TRACE)
Sam Hocevar's avatar
 
Sam Hocevar committed
633
AC_SUBST(PROFILING)
634
AC_SUBST(OPTIMS)
Sam Hocevar's avatar
 
Sam Hocevar committed
635
AC_SUBST(CSS)
Sam Hocevar's avatar
 
Sam Hocevar committed
636
AC_SUBST(MOC)
Sam Hocevar's avatar
 
Sam Hocevar committed
637
AC_SUBST(WINDRES)
Sam Hocevar's avatar
 
Sam Hocevar committed
638 639

AC_SUBST(LCFLAGS)
Sam Hocevar's avatar
 
Sam Hocevar committed
640
AC_SUBST(PLCFLAGS)
Sam Hocevar's avatar
 
Sam Hocevar committed
641 642
AC_SUBST(LIB)

Sam Hocevar's avatar
 
Sam Hocevar committed
643 644 645
AC_SUBST(LIB_ALSA)
AC_SUBST(LIB_BEOS)
AC_SUBST(LIB_DARWIN)
Sam Hocevar's avatar
 
Sam Hocevar committed
646
AC_SUBST(LIB_DVD)
Sam Hocevar's avatar
 
Sam Hocevar committed
647
AC_SUBST(LIB_ESD)
Christophe Massiot's avatar
Christophe Massiot committed
648
AC_SUBST(LIB_GGI)
Sam Hocevar's avatar
 
Sam Hocevar committed
649 650 651 652 653 654 655 656 657
AC_SUBST(LIB_GLIDE)
AC_SUBST(LIB_GNOME)
AC_SUBST(LIB_GTK)
AC_SUBST(LIB_IDCTALTIVEC)
AC_SUBST(LIB_MACOSX)
AC_SUBST(LIB_NCURSES)
AC_SUBST(LIB_QT)
AC_SUBST(LIB_TS)
AC_SUBST(LIB_SDL)
Sam Hocevar's avatar
 
Sam Hocevar committed
658
AC_SUBST(LIB_DIRECTX)
Sam Hocevar's avatar
 
Sam Hocevar committed
659 660 661
AC_SUBST(LIB_X11)
AC_SUBST(LIB_XVIDEO)
AC_SUBST(LIB_YUV)
662

Sam Hocevar's avatar
 
Sam Hocevar committed
663
AC_SUBST(CFLAGS_VLC)
Sam Hocevar's avatar
 
Sam Hocevar committed
664
AC_SUBST(CFLAGS_DVD)
Sam Hocevar's avatar
 
Sam Hocevar committed
665
AC_SUBST(CFLAGS_GTK)
Sam Hocevar's avatar
 
Sam Hocevar committed
666
AC_SUBST(CFLAGS_SDL)
Sam Hocevar's avatar
 
Sam Hocevar committed
667 668
AC_SUBST(CFLAGS_X11)

Sam Hocevar's avatar
 
Sam Hocevar committed
669 670
AC_SUBST(LOCAL_LIBDVDCSS)

Sam Hocevar's avatar
 
Sam Hocevar committed
671
AC_OUTPUT([Makefile.opts include/config.h])
672

673
echo "
Sam Hocevar's avatar
 
Sam Hocevar committed
674 675 676 677 678
global configuration
--------------------
system                : ${SYS}
architecture          : ${ARCH}
optimizations         : ${OPTIMS}
Sam Hocevar's avatar
 
Sam Hocevar committed
679
inline assembly       : ${ASM}
Sam Hocevar's avatar
 
Sam Hocevar committed
680

681 682 683
vlc configuration
-----------------
vlc version           : ${VLC_VERSION}
684 685
debug mode            : ${DEBUG}
statistics            : ${STATS}
686
trace mode            : ${TRACE}
Sam Hocevar's avatar
 
Sam Hocevar committed
687
profiling             : ${PROFILING}
Sam Hocevar's avatar
 
Sam Hocevar committed
688
need builtin getopt   : ${GETOPT}
Sam Hocevar's avatar
 
Sam Hocevar committed
689
built-in modules      :${BUILTINS}
Sam Hocevar's avatar
 
Sam Hocevar committed
690
plugin modules        :${PLUGINS}
Sam Hocevar's avatar
 
Sam Hocevar committed
691
vlc aliases           :${ALIASES}
Sam Hocevar's avatar
 
Sam Hocevar committed
692

Sam Hocevar's avatar
 
Sam Hocevar committed
693 694 695 696 697 698
libdvdcss configuration
-----------------------
CSS decryption        : ${CSS}

You may now tune Makefile.opts at your convenience. To build vlc, type
\`make vlc'. To build libdvdcss only, type \`make libdvdcss'."
699