| 1 |
dnl Autoconf settings for vlc |
|---|
| 2 |
|
|---|
| 3 |
AC_INIT(vlc,0.9.0-git) |
|---|
| 4 |
VERSION_MAJOR="0" |
|---|
| 5 |
VERSION_MINOR="9" |
|---|
| 6 |
VERSION_REVISION="0" |
|---|
| 7 |
VERSION_EXTRA="git" |
|---|
| 8 |
|
|---|
| 9 |
CONFIGURE_LINE="`echo "$0 $ac_configure_args" | sed -e 's/\\\/\\\\\\\/g'`" |
|---|
| 10 |
CODENAME="Grishenko" |
|---|
| 11 |
COPYRIGHT_YEARS="1996-2008" |
|---|
| 12 |
|
|---|
| 13 |
AC_PREREQ(2.59c) |
|---|
| 14 |
AC_CONFIG_SRCDIR(src/libvlc.c) |
|---|
| 15 |
AC_CONFIG_AUX_DIR(autotools) |
|---|
| 16 |
AC_CANONICAL_BUILD |
|---|
| 17 |
AC_CANONICAL_HOST |
|---|
| 18 |
|
|---|
| 19 |
AM_INIT_AUTOMAKE(tar-ustar) |
|---|
| 20 |
AM_CONFIG_HEADER(config.h) |
|---|
| 21 |
|
|---|
| 22 |
dnl Too many people are not aware of maintainer mode: |
|---|
| 23 |
dnl If you want to use it, you definitely know what you are doing, so |
|---|
| 24 |
dnl you can specify "--disable-maintainer-mode". But if you want the default |
|---|
| 25 |
dnl automake behavior, you've likely never heard of maintainer mode, so we |
|---|
| 26 |
dnl can't expect you to enable it manually. |
|---|
| 27 |
|
|---|
| 28 |
AS_IF([test "x${enable_maintainer_mode}" != "xno"], |
|---|
| 29 |
[enable_maintainer_mode="yes"]) |
|---|
| 30 |
AM_MAINTAINER_MODE |
|---|
| 31 |
|
|---|
| 32 |
dnl |
|---|
| 33 |
dnl Save *FLAGS |
|---|
| 34 |
dnl |
|---|
| 35 |
VLC_SAVE_FLAGS |
|---|
| 36 |
|
|---|
| 37 |
dnl |
|---|
| 38 |
dnl Check for tools |
|---|
| 39 |
dnl |
|---|
| 40 |
AC_PROG_CC_C99 |
|---|
| 41 |
AC_USE_SYSTEM_EXTENSIONS |
|---|
| 42 |
AC_DEFINE([_FORTIFY_SOURCE], 2, [Define to `2' to get glibc warnings.]) |
|---|
| 43 |
AM_PROG_CC_C_O |
|---|
| 44 |
AC_PROG_CXX |
|---|
| 45 |
AC_PROG_CPP |
|---|
| 46 |
AC_PROG_OBJC |
|---|
| 47 |
_AM_DEPENDENCIES([OBJC]) |
|---|
| 48 |
AC_PROG_EGREP |
|---|
| 49 |
AC_PROG_MAKE_SET |
|---|
| 50 |
AC_PROG_INSTALL |
|---|
| 51 |
AM_PROG_AS |
|---|
| 52 |
|
|---|
| 53 |
dnl Find the right ranlib, even when cross-compiling |
|---|
| 54 |
AC_CHECK_TOOL(RANLIB, ranlib, :) |
|---|
| 55 |
AC_CHECK_TOOL(STRIP, strip, :) |
|---|
| 56 |
AC_CHECK_TOOL(AR, ar, :) |
|---|
| 57 |
AC_CHECK_TOOL(LD, ld, :) |
|---|
| 58 |
AC_CHECK_TOOL(DLLTOOL, dlltool, :) |
|---|
| 59 |
|
|---|
| 60 |
dnl Check for compiler properties |
|---|
| 61 |
AC_C_CONST |
|---|
| 62 |
AC_C_INLINE |
|---|
| 63 |
AC_C_RESTRICT |
|---|
| 64 |
|
|---|
| 65 |
dnl |
|---|
| 66 |
dnl Check for the contrib directory |
|---|
| 67 |
dnl |
|---|
| 68 |
AC_ARG_WITH(contrib, |
|---|
| 69 |
[ --without-contrib do not use the libraries in extras/contrib],[],[]) |
|---|
| 70 |
if test "${with_contrib}" != "no"; then |
|---|
| 71 |
AC_MSG_CHECKING([for libs in extras/contrib]) |
|---|
| 72 |
topdir="`dirname $0`" |
|---|
| 73 |
if test "`echo \"$topdir\" | cut -c 1`" != "/"; then |
|---|
| 74 |
topdir="`pwd`/$topdir" |
|---|
| 75 |
fi |
|---|
| 76 |
if test "`grep HOST ${topdir}/extras/contrib/config.mak 2>/dev/null|awk '{print $3}'`" != "`$CC -dumpmachine`"; then |
|---|
| 77 |
if test "${with_contrib}" = "yes"; then |
|---|
| 78 |
AC_MSG_RESULT([no]) |
|---|
| 79 |
AC_MSG_ERROR([ not using the libs in extras/contrib as it is not the same host]) |
|---|
| 80 |
else |
|---|
| 81 |
AC_MSG_RESULT([no]) |
|---|
| 82 |
AC_MSG_WARN([ not using the libs in extras/contrib as it is not the same host]) |
|---|
| 83 |
fi |
|---|
| 84 |
else |
|---|
| 85 |
if test -d ${topdir}/extras/contrib/lib; then |
|---|
| 86 |
AC_MSG_RESULT([yes]) |
|---|
| 87 |
export PATH=${topdir}/extras/contrib/bin:$PATH |
|---|
| 88 |
CPPFLAGS="${CPPFLAGS} -I${topdir}/extras/contrib/include" |
|---|
| 89 |
CPPFLAGS_save="${CPPFLAGS_save} -I${topdir}/extras/contrib/include" |
|---|
| 90 |
CFLAGS="${CFLAGS} -I${topdir}/extras/contrib/include" |
|---|
| 91 |
CFLAGS_save="${CFLAGS_save} -I${topdir}/extras/contrib/include" |
|---|
| 92 |
CXXFLAGS="${CXXFLAGS} -I${topdir}/extras/contrib/include" |
|---|
| 93 |
CXXFLAGS_save="${CXXFLAGS_save} -I${topdir}/extras/contrib/include" |
|---|
| 94 |
OBJCFLAGS="${OBJCFLAGS} -I${topdir}/extras/contrib/include" |
|---|
| 95 |
OBJCFLAGS_save="${OBJCFLAGS_save} -I${topdir}/extras/contrib/include" |
|---|
| 96 |
if test $build = $host -o "$PKG_CONFIG_LIBDIR"; then |
|---|
| 97 |
export PKG_CONFIG_PATH=${topdir}/extras/contrib/lib/pkgconfig:$PKG_CONFIG_PATH |
|---|
| 98 |
else |
|---|
| 99 |
export PKG_CONFIG_LIBDIR=${topdir}/extras/contrib/lib/pkgconfig |
|---|
| 100 |
fi |
|---|
| 101 |
LDFLAGS="${LDFLAGS} -L${topdir}/extras/contrib/lib" |
|---|
| 102 |
LDFLAGS_save="${LDFLAGS_save} -L${topdir}/extras/contrib/lib" |
|---|
| 103 |
|
|---|
| 104 |
if test -z $with_live555_tree; then |
|---|
| 105 |
with_live555_tree=${topdir}/extras/contrib/src/live |
|---|
| 106 |
fi |
|---|
| 107 |
if test -z $with_goom_tree; then |
|---|
| 108 |
with_goom_tree=${topdir}/extras/contrib/src/goom |
|---|
| 109 |
fi |
|---|
| 110 |
if test -z $with_mozilla_sdk_path; then |
|---|
| 111 |
with_mozilla_sdk_path=${topdir}/extras/contrib/gecko-sdk |
|---|
| 112 |
fi |
|---|
| 113 |
if test -z $with_cyberlink_tree; then |
|---|
| 114 |
with_cyberlink_tree=${topdir}/extras/contrib/src/clinkcc |
|---|
| 115 |
fi |
|---|
| 116 |
if test -z $with_libmpeg2_tree; then |
|---|
| 117 |
with_libmpeg2_tree=${topdir}/extras/contrib/src/mpeg2dec |
|---|
| 118 |
fi |
|---|
| 119 |
if test -z $with_a52_tree; then |
|---|
| 120 |
with_a52_tree=${topdir}/extras/contrib/src/a52dec |
|---|
| 121 |
fi |
|---|
| 122 |
|
|---|
| 123 |
if test ".`uname -s`" = ".Darwin"; then |
|---|
| 124 |
export LD_LIBRARY_PATH=${topdir}/extras/contrib/lib:$LD_LIBRARY_PATH |
|---|
| 125 |
export DYLD_LIBRARY_PATH=${topdir}/extras/contrib/lib:$DYLD_LIBRARY_PATH |
|---|
| 126 |
elif test ".`uname -s`" = ".BeOS"; then |
|---|
| 127 |
export LIBRARY_PATH=${topdir}/extras/contrib/lib:$LIBRARY_PATH |
|---|
| 128 |
export BELIBRARIES=${topdir}/extras/contrib/lib:$BELIBRARIES |
|---|
| 129 |
fi |
|---|
| 130 |
else |
|---|
| 131 |
AC_MSG_RESULT([no]) |
|---|
| 132 |
fi |
|---|
| 133 |
fi |
|---|
| 134 |
fi |
|---|
| 135 |
dnl |
|---|
| 136 |
dnl Set default values |
|---|
| 137 |
dnl |
|---|
| 138 |
LDFLAGS_vlc="${LDFLAGS}" |
|---|
| 139 |
|
|---|
| 140 |
dnl |
|---|
| 141 |
dnl Check the operating system |
|---|
| 142 |
dnl |
|---|
| 143 |
case "${host_os}" in |
|---|
| 144 |
"") |
|---|
| 145 |
SYS=unknown |
|---|
| 146 |
;; |
|---|
| 147 |
linux*) |
|---|
| 148 |
SYS=linux |
|---|
| 149 |
;; |
|---|
| 150 |
bsdi*) |
|---|
| 151 |
SYS=bsdi |
|---|
| 152 |
CFLAGS_save="${CFLAGS_save} -pthread"; CFLAGS="${CFLAGS_save}" |
|---|
| 153 |
VLC_ADD_LIBS([dvd dvdcss vcd cdda vcdx cddax],[-ldvd]) |
|---|
| 154 |
;; |
|---|
| 155 |
*bsd*) |
|---|
| 156 |
SYS="${host_os}" |
|---|
| 157 |
CFLAGS_save="${CFLAGS_save} -pthread"; CFLAGS="${CFLAGS_save}" |
|---|
| 158 |
case "${host_os}" in |
|---|
| 159 |
freebsd*) |
|---|
| 160 |
CPPFLAGS_save="${CPPFLAGS_save} -I/usr/local/include" |
|---|
| 161 |
CPPFLAGS="${CPPFLAGS_save}" |
|---|
| 162 |
LDFLAGS_save="${LDFLAGS_save} -L/usr/local/lib" |
|---|
| 163 |
LDFLAGS="${LDFLAGS_save}" |
|---|
| 164 |
;; |
|---|
| 165 |
esac |
|---|
| 166 |
;; |
|---|
| 167 |
darwin*) |
|---|
| 168 |
SYS=darwin |
|---|
| 169 |
CFLAGS_save="${CFLAGS_save} -D_INTL_REDIRECT_MACROS"; CFLAGS="${CFLAGS_save}" |
|---|
| 170 |
CXXFLAGS_save="${CXXFLAGS_save} -D_INTL_REDIRECT_MACROS"; CXXFLAGS="${CXXFLAGS_save}" |
|---|
| 171 |
OBJCFLAGS_save="${OBJCFLAGS_save} -D_INTL_REDIRECT_MACROS -std=gnu99"; OBJCFLAGS="${OBJCFLAGS_save}" |
|---|
| 172 |
LDFLAGS_save="${LDFLAGS_save} -Wl,-headerpad_max_install_names"; LDFLAGS="${LDFLAGS_save}" |
|---|
| 173 |
VLC_ADD_LDFLAGS([mp4], [-Wl,-framework,IOKit,-framework,CoreFoundation]) |
|---|
| 174 |
VLC_ADD_LDFLAGS([mkv mp4], [-Wl,-framework,IOKit,-framework,CoreFoundation]) |
|---|
| 175 |
VLC_ADD_LDFLAGS([vlc],[-Wl,-undefined,dynamic_lookup]) |
|---|
| 176 |
VLC_ADD_LDFLAGS([libvlc_control],[-Wl,dynamic_lookup]) |
|---|
| 177 |
VLC_ADD_LDFLAGS([ffmpeg i420_rgb_mmx x264],[-Wl,-read_only_relocs,suppress]) |
|---|
| 178 |
VLC_ADD_CFLAGS([motion],[-fconstant-cfstrings]) |
|---|
| 179 |
VLC_ADD_LDFLAGS([libvlc],[-Wl,-framework,Cocoa,-framework,CoreFoundation]) |
|---|
| 180 |
VLC_ADD_LDFLAGS([motion],[-Wl,-framework,IOKit,-framework,CoreFoundation]) |
|---|
| 181 |
AC_ARG_ENABLE(macosx-defaults, |
|---|
| 182 |
[ --enable-macosx-defaults Build the default configuration on Mac OS X (default enabled)]) |
|---|
| 183 |
if test "x${enable_macosx_defaults}" != "xno" |
|---|
| 184 |
then |
|---|
| 185 |
echo "" |
|---|
| 186 |
echo "Building with Mac OS X defaults:" |
|---|
| 187 |
with_macosx_version_min="10.4" |
|---|
| 188 |
echo " Assuming --with-macosx-version-min=10.4" |
|---|
| 189 |
build_dir=`pwd` |
|---|
| 190 |
echo " Assuming --prefix=${build_dir}/vlc_install_dir" |
|---|
| 191 |
ac_default_prefix="${build_dir}/vlc_install_dir" |
|---|
| 192 |
enable_macosx="yes" |
|---|
| 193 |
echo " Assuming --enable-macosx" |
|---|
| 194 |
enable_faad="yes" |
|---|
| 195 |
echo " Assuming --enable-faad" |
|---|
| 196 |
enable_flac="yes" |
|---|
| 197 |
echo " Assuming --enable-flac" |
|---|
| 198 |
enable_theora="yes" |
|---|
| 199 |
echo " Assuming --enable-theora" |
|---|
| 200 |
enable_shout="yes" |
|---|
| 201 |
echo " Assuming --enable-shout" |
|---|
| 202 |
enable_cddax="yes" |
|---|
| 203 |
echo " Assuming --enable-cddax" |
|---|
| 204 |
enable_vcdx="yes" |
|---|
| 205 |
echo " Assuming --enable-vcdx" |
|---|
| 206 |
enable_caca="yes" |
|---|
| 207 |
echo " Assuming --enable-caca" |
|---|
| 208 |
enable_goom="yes" |
|---|
| 209 |
echo " Assuming --enable-goom" |
|---|
| 210 |
enable_ncurses="yes" |
|---|
| 211 |
echo " Assuming --enable-ncurses" |
|---|
| 212 |
enable_twolame="yes" |
|---|
| 213 |
echo " Assuming --enable-twolame" |
|---|
| 214 |
enable_realrtsp="yes" |
|---|
| 215 |
echo " Assuming --enable-realrtsp" |
|---|
| 216 |
|
|---|
| 217 |
enable_skins2="no" |
|---|
| 218 |
echo " Assuming --disable-skins2" |
|---|
| 219 |
enable_x11="no" |
|---|
| 220 |
echo " Assuming --disable-x11" |
|---|
| 221 |
enable_glx="no" |
|---|
| 222 |
echo " Assuming --disable-glx" |
|---|
| 223 |
enable_xvideo="no" |
|---|
| 224 |
echo " Assuming --disable-xvideo" |
|---|
| 225 |
fi |
|---|
| 226 |
if test ".`uname -p`" = ".i386"; then |
|---|
| 227 |
dnl Due to a ld(64) bug in 10.5 we cannot use our mmx code |
|---|
| 228 |
dnl without hacking it a lot, we disable mmx and sse. |
|---|
| 229 |
dnl (that bug is about ld being unable to handle |
|---|
| 230 |
dnl text relocation) |
|---|
| 231 |
save_cflags="$CFLAGS" |
|---|
| 232 |
CFLAGS="$CFLAGS -dynamiclib -single_module -read_only_relocs suppress" |
|---|
| 233 |
AC_TRY_LINK( |
|---|
| 234 |
[int a;], [asm("movq _a,%mm0\n");], |
|---|
| 235 |
ac_ld_does_not_support_text_reloc=no, |
|---|
| 236 |
ac_ld_does_not_support_text_reloc=yes) |
|---|
| 237 |
CFLAGS="$save_cflags" |
|---|
| 238 |
|
|---|
| 239 |
if test "x$ac_ld_does_not_support_text_reloc" = "xyes"; then |
|---|
| 240 |
enable_mmx="no" |
|---|
| 241 |
echo " Assuming --disable-mmx (due to a bug in ld)" |
|---|
| 242 |
enable_sse="no" |
|---|
| 243 |
echo " Assuming --disable-sse (due to a bug in ld)" |
|---|
| 244 |
fi |
|---|
| 245 |
fi |
|---|
| 246 |
dnl |
|---|
| 247 |
dnl Check for Mac OS X SDK settings |
|---|
| 248 |
dnl |
|---|
| 249 |
AC_ARG_WITH(macosx-sdk, |
|---|
| 250 |
[ --with-macosx-sdk=DIR compile using the SDK in DIR]) |
|---|
| 251 |
if test "${with_macosx_sdk}" != "" ; then |
|---|
| 252 |
CC="${CC} -isysroot ${with_macosx_sdk}" |
|---|
| 253 |
CXX="${CXX} -isysroot ${with_macosx_sdk}" |
|---|
| 254 |
OBJC="${OBJC} -isysroot ${with_macosx_sdk}" |
|---|
| 255 |
LD="${LD} -syslibroot ${with_macosx_sdk}" |
|---|
| 256 |
fi |
|---|
| 257 |
AC_ARG_WITH(macosx-version-min, |
|---|
| 258 |
[ --with-macosx-version-min=VERSION compile for MacOSX VERSION and above]) |
|---|
| 259 |
if test "${with_macosx_version_min}" != "" ; then |
|---|
| 260 |
CC="${CC} -mmacosx-version-min=${with_macosx_version_min}" |
|---|
| 261 |
CXX="${CXX} -mmacosx-version-min=${with_macosx_version_min}" |
|---|
| 262 |
OBJC="${OBJC} -mmacosx-version-min=${with_macosx_version_min}" |
|---|
| 263 |
LD="${LD} -macosx_version_min=${with_macosx_version_min}" |
|---|
| 264 |
CFLAGS_save="${CFLAGS_save} -DMACOSX_DEPLOYMENT_TARGET=${with_macosx_version_min}"; CFLAGS="${CFLAGS_save}" |
|---|
| 265 |
CXXFLAGS_save="${CXXFLAGS_save} -DMACOSX_DEPLOYMENT_TARGET=${with_macosx_version_min}"; CXXFLAGS="${CXXFLAGS_save}" |
|---|
| 266 |
OBJCFLAGS_save="${OBJCFLAGS_save} -DMACOSX_DEPLOYMENT_TARGET=${with_macosx_version_min}"; OBJCFLAGS="${OBJCFLAGS_save}" |
|---|
| 267 |
MACOSX_DEPLOYMENT_TARGET=${with_macosx_version_min} |
|---|
| 268 |
export MACOSX_DEPLOYMENT_TARGET |
|---|
| 269 |
fi |
|---|
| 270 |
;; |
|---|
| 271 |
*mingw32* | *cygwin* | *wince* | *mingwce* | *pe*) |
|---|
| 272 |
AC_CHECK_TOOL(WINDRES, windres, :) |
|---|
| 273 |
|
|---|
| 274 |
case "${host_os}" in |
|---|
| 275 |
*wince* | *mingwce* | *mingw32ce* | *pe*) |
|---|
| 276 |
SYS=mingwce |
|---|
| 277 |
;; |
|---|
| 278 |
*mingw32*) |
|---|
| 279 |
SYS=mingw32 |
|---|
| 280 |
;; |
|---|
| 281 |
*cygwin*) |
|---|
| 282 |
dnl Check if we are using the mno-cygwin mode in which case we are |
|---|
| 283 |
dnl actually dealing with a mingw32 compiler. |
|---|
| 284 |
AC_EGREP_CPP(yes, |
|---|
| 285 |
[#ifdef WIN32 |
|---|
| 286 |
yes |
|---|
| 287 |
#endif], |
|---|
| 288 |
SYS=mingw32, SYS=cygwin) |
|---|
| 289 |
;; |
|---|
| 290 |
esac |
|---|
| 291 |
|
|---|
| 292 |
if test "${SYS}" = "mingw32"; then |
|---|
| 293 |
# add ws2_32 for closesocket, select, recv |
|---|
| 294 |
VLC_ADD_LIBS([libvlc],[-lws2_32 -lnetapi32 -lwinmm]) |
|---|
| 295 |
VLC_ADD_LDFLAGS([vlc],[-mwindows]) |
|---|
| 296 |
VLC_ADD_LIBS([activex mozilla],[-lgdi32]) |
|---|
| 297 |
VLC_ADD_LIBS([cdda vcdx cddax sdl_image],[-lwinmm]) |
|---|
| 298 |
VLC_ADD_LIBS([access_http access_mms access_udp access_tcp access_ftp access_rtmp access_output_udp access_output_shout sap slp http stream_out_standard stream_out_rtp vod_rtsp access_realrtsp telnet rc netsync gnutls growl_udp flac ts audioscrobbler lua],[-lws2_32]) |
|---|
| 299 |
fi |
|---|
| 300 |
if test "${SYS}" = "mingwce"; then |
|---|
| 301 |
# add ws2 for closesocket, select, recv |
|---|
| 302 |
VLC_ADD_CPPFLAGS([libvlc vlc],[-Dmain(a,b)=maince(a,b)]) |
|---|
| 303 |
VLC_ADD_LDFLAGS([libvlc vlc],[-e WinMainCRTStartup]) |
|---|
| 304 |
VLC_ADD_LIBS([libvlc access_http access_mms access_udp access_tcp access_ftp access_rtmp access_output_udp sap http netsync audioscrobbler growl rtp stream_out_rtp],[-lws2]) |
|---|
| 305 |
VLC_ADD_LIBS([libvlc],[-lmmtimer]) |
|---|
| 306 |
fi |
|---|
| 307 |
;; |
|---|
| 308 |
*nto*) |
|---|
| 309 |
SYS=nto |
|---|
| 310 |
VLC_ADD_LIBS([x11 xvideo],[-lsocket]) |
|---|
| 311 |
;; |
|---|
| 312 |
solaris*) |
|---|
| 313 |
SYS=solaris |
|---|
| 314 |
# _POSIX_PTHREAD_SEMANTICS is needed to get the POSIX ctime_r |
|---|
| 315 |
# Perhaps it is useful other places as well? |
|---|
| 316 |
CFLAGS_save="${CFLAGS_save} -D_POSIX_PTHREAD_SEMANTICS"; CFLAGS="${CFLAGS_save}" |
|---|
| 317 |
;; |
|---|
| 318 |
hpux*) |
|---|
| 319 |
SYS=hpux |
|---|
| 320 |
;; |
|---|
| 321 |
beos) |
|---|
| 322 |
SYS=beos |
|---|
| 323 |
CFLAGS_save="${CFLAGS_save} -Wno-multichar"; CFLAGS="${CFLAGS_save}" |
|---|
| 324 |
CXXFLAGS_save="${CXXFLAGS_save} -Wno-multichar"; CXXFLAGS="${CXXFLAGS_save}" |
|---|
| 325 |
VLC_ADD_CXXFLAGS([beos],[]) |
|---|
| 326 |
VLC_ADD_LIBS([vlc libvlc logger],[-lbe]) |
|---|
| 327 |
VLC_ADD_LIBS([beos],[-lbe -lmedia -ltranslation -ltracker -lgame]) |
|---|
| 328 |
VLC_ADD_LIBS([dvdnav dvdread],[-ldl]) |
|---|
| 329 |
VLC_ADD_LIBS([access_file],[-lpoll]) |
|---|
| 330 |
LDFLAGS_save="${LDFLAGS_save} -lintl"; LDFLAGS="${LDFLAGS_save}" |
|---|
| 331 |
dnl Check for BONE |
|---|
| 332 |
if test -f /boot/beos/system/lib/libbind.so; then |
|---|
| 333 |
VLC_ADD_LIBS([access_file access_ftp access_mms access_output_udp telnet netsync sap libvlc growl_udp],[-lbind -lsocket]) |
|---|
| 334 |
else |
|---|
| 335 |
VLC_ADD_LIBS([access_file access_ftp access_mms access_output_udp telnet netsync sap libvlc growl_udp],[-lnet]) |
|---|
| 336 |
fi |
|---|
| 337 |
|
|---|
| 338 |
dnl Ugly check for Zeta |
|---|
| 339 |
if test -f /boot/beos/system/lib/libzeta.so; then |
|---|
| 340 |
VLC_ADD_LIBS([beos],[-lzeta]) |
|---|
| 341 |
fi |
|---|
| 342 |
;; |
|---|
| 343 |
*) |
|---|
| 344 |
SYS="${host_os}" |
|---|
| 345 |
;; |
|---|
| 346 |
esac |
|---|
| 347 |
AM_CONDITIONAL(HAVE_BEOS, test "${SYS}" = "beos") |
|---|
| 348 |
AM_CONDITIONAL(HAVE_DARWIN, test "${SYS}" = "darwin") |
|---|
| 349 |
AM_CONDITIONAL(HAVE_LINUX, [test "${SYS}" = "linux"]) |
|---|
| 350 |
AM_CONDITIONAL(HAVE_WIN32, test "${SYS}" = "mingw32") |
|---|
| 351 |
AM_CONDITIONAL(HAVE_WINCE, test "${SYS}" = "mingwce") |
|---|
| 352 |
|
|---|
| 353 |
dnl |
|---|
| 354 |
dnl Sadly autoconf doesn't think about testing foo.exe when ask to test |
|---|
| 355 |
dnl for program foo on win32 |
|---|
| 356 |
|
|---|
| 357 |
case "${build_os}" in |
|---|
| 358 |
cygwin|msys) |
|---|
| 359 |
ac_executable_extensions=".exe" |
|---|
| 360 |
;; |
|---|
| 361 |
*) |
|---|
| 362 |
;; |
|---|
| 363 |
esac |
|---|
| 364 |
|
|---|
| 365 |
dnl |
|---|
| 366 |
dnl Libtool |
|---|
| 367 |
dnl It's very bad, but our former custom system was worst |
|---|
| 368 |
dnl -- Courmisch |
|---|
| 369 |
dnl |
|---|
| 370 |
|
|---|
| 371 |
dnl override platform specific check for dependent libraries |
|---|
| 372 |
dnl otherwise libtool linking of shared libraries will |
|---|
| 373 |
dnl fail on anything other than pass_all. |
|---|
| 374 |
AC_CACHE_VAL(lt_cv_deplibs_check_method, |
|---|
| 375 |
[lt_cv_deplibs_check_method=pass_all]) |
|---|
| 376 |
|
|---|
| 377 |
AC_DISABLE_STATIC |
|---|
| 378 |
AC_DISABLE_FAST_INSTALL |
|---|
| 379 |
AC_LIBTOOL_DLOPEN |
|---|
| 380 |
AC_LIBTOOL_WIN32_DLL |
|---|
| 381 |
m4_undefine([AC_PROG_F77]) |
|---|
| 382 |
m4_defun([AC_PROG_F77],[]) |
|---|
| 383 |
AC_PROG_LIBTOOL |
|---|
| 384 |
|
|---|
| 385 |
m4_undefine([AC_DEPLIBS_CHECK_METHOD]) |
|---|
| 386 |
m4_defun([AC_DEPLIBS_CHECK_METHOD],[]) |
|---|
| 387 |
|
|---|
| 388 |
lt_cv_deplibs_check_method=pass_all |
|---|
| 389 |
|
|---|
| 390 |
|
|---|
| 391 |
dnl |
|---|
| 392 |
dnl Gettext stuff |
|---|
| 393 |
dnl |
|---|
| 394 |
AM_GNU_GETTEXT_VERSION([0.17]) |
|---|
| 395 |
AM_GNU_GETTEXT([external]) |
|---|
| 396 |
VLC_ADD_LIBS([libvlc vlc], [${LTLIBINTL}]) |
|---|
| 397 |
|
|---|
| 398 |
dnl |
|---|
| 399 |
dnl Iconv stuff |
|---|
| 400 |
dnl |
|---|
| 401 |
AM_ICONV |
|---|
| 402 |
AS_IF([test "$am_cv_func_iconv" != "yes"], |
|---|
| 403 |
[AC_MSG_ERROR([libiconv is needed for VLC to work properly])]) |
|---|
| 404 |
VLC_ADD_CFLAGS([libvlc],[${INCICONV}]) |
|---|
| 405 |
VLC_ADD_LIBS([libvlc],[${LTLIBICONV}]) |
|---|
| 406 |
|
|---|
| 407 |
dnl Check for the need to include the mingwex lib for mingw32 |
|---|
| 408 |
if test "${SYS}" = "mingw32" |
|---|
| 409 |
then |
|---|
| 410 |
AC_CHECK_LIB(mingwex,opendir, |
|---|
| 411 |
AC_CHECK_LIB(mingw32,opendir,, |
|---|
| 412 |
[VLC_ADD_LIBS([libvlc gtk],[-lmingwex])]) |
|---|
| 413 |
) |
|---|
| 414 |
fi |
|---|
| 415 |
|
|---|
| 416 |
dnl Check for fnative-struct or mms-bitfields support for mingw32 |
|---|
| 417 |
if test "${SYS}" = "mingw32" |
|---|
| 418 |
then |
|---|
| 419 |
AC_CACHE_CHECK([if \$CC accepts -mms-bitfields], |
|---|
| 420 |
[ac_cv_c_mms_bitfields], |
|---|
| 421 |
[CFLAGS="${CFLAGS_save} -mms-bitfields" |
|---|
| 422 |
AC_TRY_COMPILE([],,ac_cv_c_mms_bitfields=yes, ac_cv_c_mms_bitfields=no)]) |
|---|
| 423 |
if test "${ac_cv_c_mms_bitfields}" != "no"; then |
|---|
| 424 |
CFLAGS_save="${CFLAGS_save} -mms-bitfields"; |
|---|
| 425 |
CXXFLAGS_save="${CXXFLAGS_save} -mms-bitfields"; |
|---|
| 426 |
else |
|---|
| 427 |
AC_CACHE_CHECK([if \$CC accepts -fnative-struct], |
|---|
| 428 |
[ac_cv_c_fnative_struct], |
|---|
| 429 |
[CFLAGS="${CFLAGS_save} -fnative-struct" |
|---|
| 430 |
AC_TRY_COMPILE([],,ac_cv_c_fnative_struct=yes, ac_cv_c_fnative_struct=no)]) |
|---|
| 431 |
if test "${ac_cv_c_fnative_struct}" != "no"; then |
|---|
| 432 |
CFLAGS_save="${CFLAGS_save} -fnative-struct"; |
|---|
| 433 |
CXXFLAGS_save="${CXXFLAGS_save} -fnative-struct"; |
|---|
| 434 |
fi |
|---|
| 435 |
fi |
|---|
| 436 |
|
|---|
| 437 |
CFLAGS="${CFLAGS_save}"; CXXFLAGS="${CXXFLAGS_save}" |
|---|
| 438 |
fi |
|---|
| 439 |
|
|---|
| 440 |
dnl Check for fvtable-thunks support for mingw32 |
|---|
| 441 |
if test "${SYS}" = "mingw32" -a "${CXX}" != "" |
|---|
| 442 |
then |
|---|
| 443 |
AC_LANG_PUSH(C++) |
|---|
| 444 |
AC_CACHE_CHECK([if \$CXX accepts -fvtable-thunks], |
|---|
| 445 |
[ac_cv_cxx_fvtable_thunks], |
|---|
| 446 |
[CXXFLAGS="${CXXFLAGS_save} -Wall -Werror -fvtable-thunks" |
|---|
| 447 |
AC_TRY_COMPILE([],,ac_cv_cxx_fvtable_thunks=yes, |
|---|
| 448 |
ac_cv_cxx_fvtable_thunks=no)]) |
|---|
| 449 |
if test "${ac_cv_cxx_fvtable_thunks}" = "yes"; then |
|---|
| 450 |
CXXFLAGS_mingw32_special="-fvtable-thunks" |
|---|
| 451 |
fi |
|---|
| 452 |
|
|---|
| 453 |
CXXFLAGS_save="${CXXFLAGS_save} ${CXXFLAGS_mingw32_special}"; CXXFLAGS="${CXXFLAGS_save}" |
|---|
| 454 |
AC_LANG_POP(C++) |
|---|
| 455 |
fi |
|---|
| 456 |
|
|---|
| 457 |
dnl Plugin compilation stuff |
|---|
| 458 |
|
|---|
| 459 |
VLC_LIBRARY_SUFFIX |
|---|
| 460 |
|
|---|
| 461 |
dnl The -DSYS_FOO flag |
|---|
| 462 |
CPPFLAGS_save="${CPPFLAGS_save} -DSYS_`echo ${SYS} | sed -e 's/-.*//' | tr 'abcdefghijklmnopqrstuvwxyz.' 'ABCDEFGHIJKLMNOPQRSTUVWXYZ_'`"; CPPFLAGS="${CPPFLAGS_save}" |
|---|
| 463 |
|
|---|
| 464 |
dnl Check for system libs needed |
|---|
| 465 |
need_libc=false |
|---|
| 466 |
|
|---|
| 467 |
dnl Check for usual libc functions |
|---|
| 468 |
AC_CHECK_FUNCS([gettimeofday strtod strtol strtof strtoll strtoull strsep isatty vasprintf asprintf swab sigrelse getpwuid_r memalign posix_memalign if_nametoindex atoll getenv putenv setenv gmtime_r ctime_r localtime_r lrintf daemon scandir fork bsearch lstat strlcpy strdup strndup strnlen atof lldiv posix_fadvise posix_madvise]) |
|---|
| 469 |
AC_CHECK_FUNCS(strcasecmp,,[AC_CHECK_FUNCS(stricmp)]) |
|---|
| 470 |
AC_CHECK_FUNCS(strncasecmp,,[AC_CHECK_FUNCS(strnicmp)]) |
|---|
| 471 |
AC_CHECK_FUNCS(strcasestr,,[AC_CHECK_FUNCS(stristr)]) |
|---|
| 472 |
AC_FUNC_ALLOCA |
|---|
| 473 |
|
|---|
| 474 |
AH_BOTTOM([#include <vlc_fixups.h>]) |
|---|
| 475 |
|
|---|
| 476 |
AC_CHECK_FUNCS(mmap, [VLC_ADD_PLUGIN([access_mmap])]) |
|---|
| 477 |
|
|---|
| 478 |
dnl Check for setlocal and langinfo |
|---|
| 479 |
AC_CHECK_FUNCS(setlocale) |
|---|
| 480 |
AC_CHECK_HEADERS(langinfo.h) |
|---|
| 481 |
AC_CHECK_FUNCS(nl_langinfo) |
|---|
| 482 |
|
|---|
| 483 |
AC_CACHE_CHECK([for nl_langinfo and CODESET], ac_cv_langinfo_codeset, |
|---|
| 484 |
[AC_TRY_LINK([#include <langinfo.h>], |
|---|
| 485 |
[char* cs = nl_langinfo(CODESET);], |
|---|
| 486 |
ac_cv_langinfo_codeset=yes, |
|---|
| 487 |
ac_cv_langinfo_codeset=no) |
|---|
| 488 |
]) |
|---|
| 489 |
if test ${ac_cv_langinfo_codeset} = yes; then |
|---|
| 490 |
AC_DEFINE(HAVE_LANGINFO_CODESET, 1, |
|---|
| 491 |
[Define if you have <langinfo.h> and nl_langinfo(CODESET).]) |
|---|
| 492 |
fi |
|---|
| 493 |
|
|---|
| 494 |
AC_CHECK_FUNCS(connect,,[ |
|---|
| 495 |
AC_CHECK_LIB(socket,connect,[ |
|---|
| 496 |
VLC_ADD_LIBS([libvlc cdda cddax],-lsocket) |
|---|
| 497 |
LIBS_socket="-lsocket" |
|---|
| 498 |
]) |
|---|
| 499 |
]) |
|---|
| 500 |
|
|---|
| 501 |
AC_CHECK_FUNCS(send,,[ |
|---|
| 502 |
AC_CHECK_LIB(socket,send,[ |
|---|
| 503 |
VLC_ADD_LIBS([access_http access_mms access_udp access_tcp access_ftp access_rtmp sap access_output_udp stream_out_standard growl_udp],[-lsocket]) |
|---|
| 504 |
]) |
|---|
| 505 |
]) |
|---|
| 506 |
|
|---|
| 507 |
AC_CHECK_FUNCS(gethostbyname,,[ |
|---|
| 508 |
AC_CHECK_LIB(nsl,gethostbyname,[ |
|---|
| 509 |
VLC_ADD_LIBS([cdda cddax libvlc],[-lnsl]) |
|---|
| 510 |
],[ |
|---|
| 511 |
AC_CHECK_LIB(bind,gethostbyname,[ |
|---|
| 512 |
VLC_ADD_LIBS([access_mms],[-lbind]) |
|---|
| 513 |
]) |
|---|
| 514 |
]) |
|---|
| 515 |
]) |
|---|
| 516 |
|
|---|
| 517 |
AC_CHECK_HEADERS(zlib.h, [ |
|---|
| 518 |
VLC_ADD_LIBS([access_http],[-lz]) |
|---|
| 519 |
]) |
|---|
| 520 |
|
|---|
| 521 |
dnl Check for socklen_t |
|---|
| 522 |
AH_TEMPLATE(socklen_t, [Define to `int' if <sys/socket.h> does not define.]) |
|---|
| 523 |
AC_CACHE_CHECK([for socklen_t in sys/socket.h], |
|---|
| 524 |
ac_cv_type_socklen_t, |
|---|
| 525 |
[AC_COMPILE_IFELSE([AC_LANG_PROGRAM([ |
|---|
| 526 |
[#include <sys/types.h> |
|---|
| 527 |
#ifdef WIN32 |
|---|
| 528 |
# include <winsock2.h> |
|---|
| 529 |
# include <ws2tcpip.h> |
|---|
| 530 |
#else |
|---|
| 531 |
# include <sys/socket.h> |
|---|
| 532 |
#endif]], [[socklen_t len; len = 0;]])], |
|---|
| 533 |
ac_cv_type_socklen_t=yes, |
|---|
| 534 |
ac_cv_type_socklen_t=no)]) |
|---|
| 535 |
AS_IF([test "$ac_cv_type_socklen_t" = no], |
|---|
| 536 |
[AC_DEFINE(socklen_t, int)]) |
|---|
| 537 |
|
|---|
| 538 |
dnl Check for struct sockaddr_storage |
|---|
| 539 |
AH_TEMPLATE(sockaddr_storage, [Define to `sockaddr' if <sys/socket.h> does not define.]) |
|---|
| 540 |
AH_TEMPLATE(ss_family, [Define to `sa_family' if <sys/socket.h> does not define.]) |
|---|
| 541 |
AC_CACHE_CHECK([for struct sockaddr_storage], ac_cv_struct_sockaddr_storage, |
|---|
| 542 |
[AC_TRY_COMPILE( |
|---|
| 543 |
[#include <sys/types.h> |
|---|
| 544 |
#if defined( UNDER_CE ) |
|---|
| 545 |
# include <winsock.h> |
|---|
| 546 |
#elif defined( WIN32 ) |
|---|
| 547 |
# include <winsock2.h> |
|---|
| 548 |
#else |
|---|
| 549 |
# include <sys/socket.h> |
|---|
| 550 |
#endif], [struct sockaddr_storage addr;], |
|---|
| 551 |
ac_cv_struct_sockaddr_storage=yes, |
|---|
| 552 |
ac_cv_struct_sockaddr_storage=no)]) |
|---|
| 553 |
AS_IF([test "${ac_cv_struct_sockaddr_storage}" = no], [ |
|---|
| 554 |
AC_DEFINE(sockaddr_storage, sockaddr) |
|---|
| 555 |
AC_DEFINE(ss_family, sa_family) |
|---|
| 556 |
]) |
|---|
| 557 |
|
|---|
| 558 |
dnl getaddrinfo, getnameinfo and gai_strerror check |
|---|
| 559 |
dnl -lnsl and -lsocket are needed on Solaris; |
|---|
| 560 |
dnl we purposedly make the test fail on Windows |
|---|
| 561 |
LIBS_save="${LIBS}" |
|---|
| 562 |
AH_TEMPLATE(HAVE_GETADDRINFO, [Define to 1 if you have the `getaddrinfo' function.]) |
|---|
| 563 |
AC_SEARCH_LIBS([getaddrinfo], [nsl], [AC_DEFINE(HAVE_GETADDRINFO)],, [${LIBS_socket}]) |
|---|
| 564 |
|
|---|
| 565 |
dnl NOTE: we assume getaddrinfo will be present if getnameinfo or gai_strerro |
|---|
| 566 |
dnl are |
|---|
| 567 |
LIBS="${LIBS_gai}" |
|---|
| 568 |
AC_CHECK_FUNCS([getnameinfo gai_strerror]) |
|---|
| 569 |
LIBS="${LIBS_save}" |
|---|
| 570 |
|
|---|
| 571 |
AH_TEMPLATE(HAVE_ADDRINFO, [Define to 1 if <netdb.h> defines `struct addrinfo'.]) |
|---|
| 572 |
AC_CHECK_TYPES([struct addrinfo],[AC_DEFINE(HAVE_ADDRINFO)],, |
|---|
| 573 |
[#include <sys/types.h> |
|---|
| 574 |
#if defined( WIN32 ) || defined( UNDER_CE ) |
|---|
| 575 |
# if defined(UNDER_CE) && defined(sockaddr_storage) |
|---|
| 576 |
# undef sockaddr_storage |
|---|
| 577 |
# endif |
|---|
| 578 |
# include <winsock2.h> |
|---|
| 579 |
# include <ws2tcpip.h> |
|---|
| 580 |
#else |
|---|
| 581 |
# include <netdb.h> |
|---|
| 582 |
#endif]) |
|---|
| 583 |
|
|---|
| 584 |
dnl Check for va_copy |
|---|
| 585 |
AC_CACHE_CHECK([for va_copy], ac_cv_c_va_copy, |
|---|
| 586 |
AC_TRY_LINK( |
|---|
| 587 |
[#include <stdarg.h>], |
|---|
| 588 |
[va_list ap1, ap2; va_copy(ap1,ap2);], |
|---|
| 589 |
[ac_cv_c_va_copy="yes"], |
|---|
| 590 |
[ac_cv_c_va_copy="no"])) |
|---|
| 591 |
if test "${ac_cv_c_va_copy}" = "yes"; then |
|---|
| 592 |
AC_DEFINE(HAVE_VA_COPY, 1, [Define if <stdarg.h> defines va_copy.]) |
|---|
| 593 |
fi |
|---|
| 594 |
AC_CACHE_CHECK([for __va_copy], ac_cv_c___va_copy, |
|---|
| 595 |
AC_TRY_LINK( |
|---|
| 596 |
[#include <stdarg.h>], |
|---|
| 597 |
[va_list ap1, ap2; __va_copy(ap1,ap2);], |
|---|
| 598 |
[ac_cv_c___va_copy="yes"], |
|---|
| 599 |
[ac_cv_c___va_copy="no"])) |
|---|
| 600 |
if test "${ac_cv_c___va_copy}" = "yes"; then |
|---|
| 601 |
AC_DEFINE(HAVE___VA_COPY, 1, [Define if <stdarg.h> defines __va_copy.]) |
|---|
| 602 |
fi |
|---|
| 603 |
|
|---|
| 604 |
AC_CHECK_FUNCS(inet_aton,,[ |
|---|
| 605 |
AC_CHECK_LIB(resolv,inet_aton,[ |
|---|
| 606 |
VLC_ADD_LIBS([libvlc],[-lresolv]) |
|---|
| 607 |
]) |
|---|
| 608 |
]) |
|---|
| 609 |
|
|---|
| 610 |
dnl Check for getopt (always use builtin one on win32) |
|---|
| 611 |
if test "${SYS}" = "mingw32" -o "${SYS}" = "mingwce"; then |
|---|
| 612 |
need_getopt=: |
|---|
| 613 |
else |
|---|
| 614 |
need_getopt=false |
|---|
| 615 |
AC_CHECK_FUNCS(getopt_long,[AC_DEFINE(HAVE_GETOPT_LONG,1,long getopt support)], |
|---|
| 616 |
[ # FreeBSD has a gnugetopt library for this: |
|---|
| 617 |
AC_CHECK_LIB([gnugetopt],[getopt_long], |
|---|
| 618 |
[AC_DEFINE(HAVE_GETOPT_LONG,1,getopt support) |
|---|
| 619 |
VLC_ADD_LIBS([libvlc],[-lgnugetopt])], |
|---|
| 620 |
[need_getopt=:])]) |
|---|
| 621 |
fi |
|---|
| 622 |
AM_CONDITIONAL(BUILD_GETOPT, ${need_getopt}) |
|---|
| 623 |
|
|---|
| 624 |
if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then |
|---|
| 625 |
AC_TYPE_SIGNAL |
|---|
| 626 |
AC_CHECK_LIB(m,cos,[ |
|---|
| 627 |
VLC_ADD_LIBS([adjust wave ripple psychedelic gradient a52tofloat32 dtstofloat32 x264 goom visual panoramix rotate noise grain],[-lm]) |
|---|
| 628 |
]) |
|---|
| 629 |
AC_CHECK_LIB(m,pow,[ |
|---|
| 630 |
VLC_ADD_LIBS([ffmpeg ffmpegaltivec stream_out_transrate i420_rgb faad twolame equalizer spatializer param_eq libvlc vorbis freetype mod mpc dmo quicktime realaudio galaktos opengl],[-lm]) |
|---|
| 631 |
]) |
|---|
| 632 |
AC_CHECK_LIB(m,sqrt,[ |
|---|
| 633 |
VLC_ADD_LIBS([headphone_channel_mixer normvol speex mono colorthres extract],[-lm]) |
|---|
| 634 |
]) |
|---|
| 635 |
AC_CHECK_LIB(m,ceil,[ |
|---|
| 636 |
VLC_ADD_LIBS([mosaic],[-lm]) |
|---|
| 637 |
]) |
|---|
| 638 |
AC_CHECK_LIB(m,exp,[ |
|---|
| 639 |
VLC_ADD_LIBS([gaussianblur],[-lm]) |
|---|
| 640 |
]) |
|---|
| 641 |
AC_CHECK_LIB(m,round,[ |
|---|
| 642 |
VLC_ADD_LIBS([dbus],[-lm]) |
|---|
| 643 |
]) |
|---|
| 644 |
AC_CHECK_LIB(mx,sqrtf,[ |
|---|
| 645 |
VLC_ADD_LIBS([x264],[-lmx]) |
|---|
| 646 |
]) |
|---|
| 647 |
fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" |
|---|
| 648 |
|
|---|
| 649 |
dnl Check for dynamic plugins |
|---|
| 650 |
ac_cv_have_plugins=no |
|---|
| 651 |
|
|---|
| 652 |
# OS X style |
|---|
| 653 |
AC_CHECK_HEADERS(mach-o/dyld.h, |
|---|
| 654 |
[AC_CHECK_FUNCS(NSLinkModule, |
|---|
| 655 |
[AC_DEFINE(HAVE_DL_DYLD, 1, [Define if you have the Darwin dyld API]) |
|---|
| 656 |
ac_cv_have_plugins=yes])]) |
|---|
| 657 |
|
|---|
| 658 |
# HP-UX style |
|---|
| 659 |
if test "${ac_cv_have_plugins}" = "no"; then |
|---|
| 660 |
AC_CHECK_HEADERS(dl.h) |
|---|
| 661 |
ac_cv_my_have_shl_load=no |
|---|
| 662 |
AC_CHECK_FUNC(shl_load, |
|---|
| 663 |
[ac_cv_my_have_shl_load=yes, |
|---|
| 664 |
AC_CHECK_LIB(dld, shl_load, |
|---|
| 665 |
[ac_cv_my_have_shl_load=yes |
|---|
| 666 |
VLC_ADD_LIBS([libvlc],[-ldld])])]) |
|---|
| 667 |
if test "${ac_cv_my_have_shl_load}" = "yes"; then |
|---|
| 668 |
AC_DEFINE(HAVE_DL_SHL_LOAD, 1, [Define if you have the shl_load API]) |
|---|
| 669 |
ac_cv_have_plugins=yes |
|---|
| 670 |
fi |
|---|
| 671 |
fi |
|---|
| 672 |
|
|---|
| 673 |
# Whatever style |
|---|
| 674 |
if test "${ac_cv_have_plugins}" = "no"; then |
|---|
| 675 |
AC_CHECK_LIB(dld, dld_link, |
|---|
| 676 |
[VLC_ADD_LIBS([libvlc],[-ldld]) |
|---|
| 677 |
AC_DEFINE(HAVE_DL_DLD_LINK, 1, [Define if you have the GNU dld library]) |
|---|
| 678 |
ac_cv_have_plugins=yes]) |
|---|
| 679 |
fi |
|---|
| 680 |
|
|---|
| 681 |
# Win32 style |
|---|
| 682 |
if test "${ac_cv_have_plugins}" = "no"; then |
|---|
| 683 |
if test "${SYS}" = "mingw32" -o "${SYS}" = "cygwin"; then |
|---|
| 684 |
AC_CHECK_LIB(kernel32, main, |
|---|
| 685 |
[VLC_ADD_LIBS([libvlc],[-lkernel32]) |
|---|
| 686 |
AC_DEFINE(HAVE_DL_WINDOWS, 1, [Define if you have Windows' LoadLibrary]) |
|---|
| 687 |
ac_cv_have_plugins=yes]) |
|---|
| 688 |
fi |
|---|
| 689 |
fi |
|---|
| 690 |
|
|---|
| 691 |
# WinCE style |
|---|
| 692 |
if test "${ac_cv_have_plugins}" = "no"; then |
|---|
| 693 |
if test "${SYS}" = "mingwce"; then |
|---|
| 694 |
AC_DEFINE(HAVE_DL_WINDOWS, 1, [Define if you have Windows' LoadLibrary]) |
|---|
| 695 |
ac_cv_have_plugins=yes |
|---|
| 696 |
fi |
|---|
| 697 |
fi |
|---|
| 698 |
|
|---|
| 699 |
# BeOS style |
|---|
| 700 |
if test "${ac_cv_have_plugins}" = "no"; then |
|---|
| 701 |
AC_CHECK_HEADERS(image.h) |
|---|
| 702 |
AC_CHECK_FUNCS(load_add_on, |
|---|
| 703 |
[AC_DEFINE(HAVE_DL_BEOS, 1, [Define if you have the BeOS dl]) |
|---|
| 704 |
ac_cv_have_plugins=yes]) |
|---|
| 705 |
fi |
|---|
| 706 |
|
|---|
| 707 |
# Only test for dlopen() if the others didn't work |
|---|
| 708 |
if test "${ac_cv_have_plugins}" = "no"; then |
|---|
| 709 |
AC_CHECK_HEADERS(dlfcn.h sys/dl.h) |
|---|
| 710 |
ac_cv_my_have_dlopen=no |
|---|
| 711 |
AC_CHECK_FUNC(dlopen, |
|---|
| 712 |
ac_cv_my_have_dlopen=yes, |
|---|
| 713 |
AC_CHECK_LIB(dl, dlopen, |
|---|
| 714 |
ac_cv_my_have_dlopen=yes |
|---|
| 715 |
VLC_ADD_LIBS([libvlc realaudio],[-ldl]), |
|---|
| 716 |
AC_CHECK_LIB(svld, dlopen, |
|---|
| 717 |
ac_cv_my_have_dlopen=yes |
|---|
| 718 |
VLC_ADD_LIBS([libvlc],[-lsvld])))) |
|---|
| 719 |
if test "${ac_cv_my_have_dlopen}" = "yes"; then |
|---|
| 720 |
AC_DEFINE(HAVE_DL_DLOPEN, 1, [Define if you have the dlopen API]) |
|---|
| 721 |
ac_cv_have_plugins=yes |
|---|
| 722 |
fi |
|---|
| 723 |
fi |
|---|
| 724 |
|
|---|
| 725 |
if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then |
|---|
| 726 |
dnl Check for pthreads - borrowed from XMMS |
|---|
| 727 |
THREAD_LIB=error |
|---|
| 728 |
if test "${THREAD_LIB}" = "error"; then |
|---|
| 729 |
AC_CHECK_LIB(pthread,main,THREAD_LIB="-lpthread") |
|---|
| 730 |
fi |
|---|
| 731 |
if test "${THREAD_LIB}" = "error"; then |
|---|
| 732 |
AC_CHECK_LIB(pthreads,main,THREAD_LIB="-lpthreads") |
|---|
| 733 |
fi |
|---|
| 734 |
if test "${THREAD_LIB}" = "error"; then |
|---|
| 735 |
AC_CHECK_LIB(c_r,main,THREAD_LIB="-lc_r") |
|---|
| 736 |
fi |
|---|
| 737 |
if test "${THREAD_LIB}" = "error"; then |
|---|
| 738 |
AC_CHECK_FUNCS(pthread_mutex_lock) |
|---|
| 739 |
THREAD_LIB="" |
|---|
| 740 |
fi |
|---|
| 741 |
|
|---|
| 742 |
VLC_ADD_LIBS([libvlc plugin],[${THREAD_LIB}]) |
|---|
| 743 |
|
|---|
| 744 |
AC_CHECK_LIB(rt, clock_nanosleep, [ |
|---|
| 745 |
VLC_ADD_LIBS([libvlc],[-lrt]) |
|---|
| 746 |
AC_DEFINE(HAVE_CLOCK_NANOSLEEP, 1, [Define to 1 if you have clock_nanosleep.]) |
|---|
| 747 |
], [ |
|---|
| 748 |
dnl HP/UX port |
|---|
| 749 |
AC_CHECK_LIB(rt,sem_init, [VLC_ADD_LIBS([libvlc],[-lrt])]) |
|---|
| 750 |
]) |
|---|
| 751 |
|
|---|
| 752 |
have_nanosleep=false |
|---|
| 753 |
AC_CHECK_FUNCS(nanosleep,have_nanosleep=:,[ |
|---|
| 754 |
AC_CHECK_LIB(rt,nanosleep, |
|---|
| 755 |
[VLC_ADD_LIBS([libvlc],[-lrt]) have_nanosleep=:], |
|---|
| 756 |
[AC_CHECK_LIB(posix4,nanosleep, |
|---|
| 757 |
[VLC_ADD_LIBS([libvlc],[-lposix4]) have_nanosleep=:])] |
|---|
| 758 |
) |
|---|
| 759 |
]) |
|---|
| 760 |
if ${have_nanosleep}; then |
|---|
| 761 |
AC_DEFINE(HAVE_NANOSLEEP, 1, [Define if nanosleep is available.]) |
|---|
| 762 |
fi |
|---|
| 763 |
fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" |
|---|
| 764 |
|
|---|
| 765 |
dnl Check for misc headers |
|---|
| 766 |
AC_MSG_CHECKING(for strncasecmp in strings.h) |
|---|
| 767 |
AC_EGREP_HEADER(strncasecmp,strings.h,[ |
|---|
| 768 |
AC_MSG_RESULT(yes) |
|---|
| 769 |
AC_DEFINE(STRNCASECMP_IN_STRINGS_H, 1, |
|---|
| 770 |
Define if <strings.h> defines strncasecmp.)],[ |
|---|
| 771 |
AC_MSG_RESULT(no)]) |
|---|
| 772 |
|
|---|
| 773 |
dnl Check for headers |
|---|
| 774 |
AC_CHECK_HEADERS(signal.h time.h errno.h stdint.h stdbool.h getopt.h strings.h inttypes.h sys/int_types.h wchar.h locale.h) |
|---|
| 775 |
AC_CHECK_HEADERS(sys/sockio.h fcntl.h sys/types.h sys/time.h sys/times.h sys/ioctl.h sys/stat.h) |
|---|
| 776 |
AC_CHECK_HEADERS([arpa/inet.h netinet/in.h netinet/udplite.h]) |
|---|
| 777 |
AC_CHECK_HEADERS([net/if.h], [], [], |
|---|
| 778 |
[ |
|---|
| 779 |
#include <sys/socket.h> |
|---|
| 780 |
]) |
|---|
| 781 |
if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then |
|---|
| 782 |
AC_CHECK_HEADERS(machine/param.h sys/shm.h) |
|---|
| 783 |
AC_CHECK_HEADERS([linux/version.h linux/dccp.h]) |
|---|
| 784 |
AC_CHECK_HEADERS(syslog.h) |
|---|
| 785 |
fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" |
|---|
| 786 |
|
|---|
| 787 |
AC_HEADER_TIME |
|---|
| 788 |
|
|---|
| 789 |
dnl LP64 adn LLP64 architectures had better define ssize_t by themselves... |
|---|
| 790 |
AH_TEMPLATE(ssize_t, [Define to `int' if <stddef.h> does not define.]) |
|---|
| 791 |
AC_CHECK_TYPE(ssize_t,, [ |
|---|
| 792 |
AC_DEFINE(ssize_t, int) |
|---|
| 793 |
]) |
|---|
| 794 |
|
|---|
| 795 |
dnl don't attemp to use poll on darwin, it can't poll a tty. select will do a better job. |
|---|
| 796 |
if test "${SYS}" != "darwin"; then |
|---|
| 797 |
AC_SEARCH_LIBS(poll, [poll], [AC_DEFINE(HAVE_POLL, 1, [Define to 1 if the OS is usabl... err, has poll().])]) |
|---|
| 798 |
fi |
|---|
| 799 |
|
|---|
| 800 |
dnl Check for dirent |
|---|
| 801 |
need_dirent=false |
|---|
| 802 |
AC_CHECK_HEADERS(dirent.h,,[need_dirent=:]) |
|---|
| 803 |
AM_CONDITIONAL(BUILD_DIRENT, ${need_dirent}) |
|---|
| 804 |
|
|---|
| 805 |
dnl Mac OS X and other OSes don't have declaration for nanosleep |
|---|
| 806 |
if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then |
|---|
| 807 |
AC_MSG_CHECKING(for nanosleep in time.h) |
|---|
| 808 |
AC_EGREP_HEADER(nanosleep,time.h,[ |
|---|
| 809 |
AC_MSG_RESULT(yes) |
|---|
| 810 |
AC_DEFINE(HAVE_DECL_NANOSLEEP, 1, |
|---|
| 811 |
Define if <time.h> defines nanosleep.) |
|---|
| 812 |
],[ |
|---|
| 813 |
AC_MSG_RESULT(no) |
|---|
| 814 |
]) |
|---|
| 815 |
fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" |
|---|
| 816 |
|
|---|
| 817 |
dnl Make sure we have timespecs |
|---|
| 818 |
AC_MSG_CHECKING(for timespec in sys/time.h) |
|---|
| 819 |
AC_EGREP_HEADER(timespec,sys/time.h,[ |
|---|
| 820 |
AC_MSG_RESULT(yes) |
|---|
| 821 |
AC_DEFINE(HAVE_STRUCT_TIMESPEC, 1, |
|---|
| 822 |
Define if <sys/time.h> defines struct timespec.) |
|---|
| 823 |
],[ |
|---|
| 824 |
AC_MSG_RESULT(no) |
|---|
| 825 |
]) |
|---|
| 826 |
|
|---|
| 827 |
dnl Check for threads library |
|---|
| 828 |
if test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"; then |
|---|
| 829 |
AC_CHECK_HEADERS(pthread.h kernel/scheduler.h kernel/OS.h) |
|---|
| 830 |
fi # end "${SYS}" != "mingw32" -a "${SYS}" != "mingwce" |
|---|
| 831 |
|
|---|
| 832 |
dnl Find where are the X headers and libraries |
|---|
| 833 |
AC_PATH_XTRA() |
|---|
| 834 |
|
|---|
| 835 |
dnl it seems that autoconf do the pkg-config detection only for the first PKG_CHECK_MODULES in the configure.ac ( which is logical) but in our case it is nested in a if so it was not working if you're not on linux or have disable hal. |
|---|
| 836 |
|
|---|
| 837 |
PKG_PROG_PKG_CONFIG() |
|---|
| 838 |
|
|---|
| 839 |
dnl Check for hal |
|---|
| 840 |
AC_ARG_ENABLE(hal, |
|---|
| 841 |
[ --enable-hal Linux HAL services discovery (default enabled)]) |
|---|
| 842 |
|
|---|
| 843 |
if test "${enable_hal}" != "no" |
|---|
| 844 |
then |
|---|
| 845 |
PKG_CHECK_MODULES(HAL, hal >= 0.5.0, |
|---|
| 846 |
[ AC_DEFINE( HAVE_HAL_1, 1 , [Define if you have the new HAL library API]) |
|---|
| 847 |
AC_DEFINE( HAVE_HAL, 1, [Define if you have the HAL library] ) |
|---|
| 848 |
VLC_ADD_PLUGIN([hal]) |
|---|
| 849 |
VLC_ADD_PLUGIN([probe_hal]) |
|---|
| 850 |
VLC_ADD_LIBS([libvlc hal probe_hal],[$HAL_LIBS]) |
|---|
| 851 |
VLC_ADD_CFLAGS([libvlc hal probe_hal],[$HAL_CFLAGS])], |
|---|
| 852 |
dnl No hal 0.5 Test for 0.2 |
|---|
| 853 |
[ PKG_CHECK_MODULES( HAL, hal >= 0.2.97, |
|---|
| 854 |
[AC_DEFINE(HAVE_HAL, 1, [Define if you have the HAL library]) |
|---|
| 855 |
VLC_ADD_PLUGIN([hal]) |
|---|
| 856 |
VLC_ADD_LIBS([libvlc hal],[$HAL_LIBS]) |
|---|
| 857 |
VLC_ADD_CFLAGS([libvlc hal],[$HAL_CFLAGS])], |
|---|
| 858 |
[AC_MSG_WARN(HAL library not found)]) |
|---|
| 859 |
] |
|---|
| 860 |
) |
|---|
| 861 |
fi |
|---|
| 862 |
|
|---|
| 863 |
dnl Check for dbus |
|---|
| 864 |
AC_ARG_ENABLE(dbus, |
|---|
| 865 |
[ --enable-dbus Linux D-BUS message bus system (default enabled)]) |
|---|
| 866 |
case "${SYS}" in |
|---|
| 867 |
linux*|*bsd*) |
|---|
| 868 |
if test "${enable_dbus}" != "no" |
|---|
| 869 |
then |
|---|
| 870 |
dnl api stable dbus |
|---|
| 871 |
PKG_CHECK_MODULES(DBUS, dbus-1 >= 1.0.0, |
|---|
| 872 |
[ AC_DEFINE( HAVE_DBUS_3, 1, [Define if you have the D-BUS library API >= 1.0.0] ) |
|---|
| 873 |
AC_DEFINE( HAVE_DBUS_2, 1, [Define if you have the D-BUS library API >= 0.92] ) |
|---|
| 874 |
AC_DEFINE( HAVE_DBUS_1, 1, [Define if you have the D-BUS library API >= 0.30] ) |
|---|
| 875 |
AC_DEFINE( HAVE_DBUS, 1, [Define if you have the D-BUS library] ) |
|---|
| 876 |
VLC_ADD_LIBS([screensaver libvlc],[$DBUS_LIBS]) |
|---|
| 877 |
VLC_ADD_CFLAGS([screensaver libvlc],[$DBUS_CFLAGS]) |
|---|
| 878 |
dnl Check for dbus control interface |
|---|
| 879 |
AC_ARG_ENABLE(dbus-control, [ --disable-dbus-control D-BUS control interface (default enabled)]) |
|---|
| 880 |
if test "${enable_dbus_control}" != "no" |
|---|
| 881 |
then |
|---|
| 882 |
VLC_ADD_PLUGIN([dbus]) |
|---|
| 883 |
VLC_ADD_LIBS([dbus],[$DBUS_LIBS]) |
|---|
| 884 |
VLC_ADD_CFLAGS([dbus],[$DBUS_CFLAGS]) |
|---|
| 885 |
fi |
|---|
| 886 |
dnl Check for Telepathy |
|---|
| 887 |
AC_ARG_ENABLE(telepathy, [ --enable-telepathy Telepathy Presence plugin through DBus(default enabled)]) |
|---|
| 888 |
if test "${enable_telepathy}" != "no"; then |
|---|
| 889 |
VLC_ADD_PLUGIN([telepathy]) |
|---|
| 890 |
VLC_ADD_LIBS([telepathy],[$DBUS_LIBS]) |
|---|
| 891 |
VLC_ADD_CFLAGS([telepathy],[$DBUS_CFLAGS]) |
|---|
| 892 |
fi |
|---|
| 893 |
dnl Power Management Inhibiter |
|---|
| 894 |
VLC_ADD_PLUGIN([inhibit]) |
|---|
| 895 |
VLC_ADD_LIBS([inhibit],[$DBUS_LIBS]) |
|---|
| 896 |
VLC_ADD_CFLAGS([inhibit],[$DBUS_CFLAGS]) |
|---|
| 897 |
], |
|---|
| 898 |
if ${PKG_CONFIG} --exists dbus-1 |
|---|
| 899 |
then |
|---|
| 900 |
[AC_ARG_ENABLE(old-dbus, |
|---|
| 901 |
[ --enable-old-dbus Deprecated D-Bus support (default disabled)])] |
|---|
| 902 |
|
|---|
| 903 |
if test "${enable_old_dbus}" != "yes" |
|---|
| 904 |
then |
|---|
| 905 |
echo "" |
|---|
| 906 |
echo "****** WARNING **** WARNING ***** WARNING *************" |
|---|
| 907 |
echo "*** Your D-Bus version is < 1.0.0" |
|---|
| 908 |
echo "*** You are using old and buggy software and so" |
|---|
| 909 |
echo "*** D-Bus support has been disabled." |
|---|
| 910 |
echo "*** Please upgrade D-Bus : http://dbus.freedesktop.org" |
|---|
| 911 |
echo "*** Alternatively you can force the use of your old and" |
|---|
| 912 |
echo "*** buggy D-Bus version by specifying --enable-old-dbus" |
|---|
| 913 |
echo "*******************************************************" |
|---|
| 914 |
echo "" |
|---|
| 915 |
else |
|---|
| 916 |
dnl not too old dbus |
|---|
| 917 |
[ PKG_CHECK_MODULES(DBUS, dbus-1 >= 0.92, |
|---|
| 918 |
[ AC_DEFINE( HAVE_DBUS_2, 1, [Define if you have the D-BUS library API >= 0.92] ) |
|---|
| 919 |
AC_DEFINE( HAVE_DBUS_1, 1, [Define if you have the D-BUS library API >= 0.30] ) |
|---|
| 920 |
AC_DEFINE( HAVE_DBUS, 1, [Define if you have the D-BUS library] ) |
|---|
| 921 |
VLC_ADD_LIBS([screensaver],[$DBUS_LIBS]) |
|---|
| 922 |
VLC_ADD_CFLAGS([screensaver],[$DBUS_CFLAGS])], |
|---|
| 923 |
dnl older dbus |
|---|
| 924 |
[ PKG_CHECK_MODULES(DBUS, dbus-1 >= 0.30, |
|---|
| 925 |
[ AC_DEFINE( HAVE_DBUS_1, 1, [Define if you have the D-BUS library API >= 0.30 ] ) |
|---|
| 926 |
AC_DEFINE( HAVE_DBUS, 1, [Define if you have the D-BUS library] ) |
|---|
| 927 |
VLC_ADD_LIBS([screensaver],[$DBUS_LIBS]) |
|---|
| 928 |
VLC_ADD_CFLAGS([screensaver],[$DBUS_CFLAGS])], |
|---|
| 929 |
dnl much older dbus |
|---|
| 930 |
[ PKG_CHECK_MODULES( DBUS, dbus-1, |
|---|
| 931 |
[AC_DEFINE(HAVE_DBUS, 1, [Define if you have the D-BUS library]) |
|---|
| 932 |
VLC_ADD_LIBS([screensaver],[$DBUS_LIBS]) |
|---|
| 933 |
VLC_ADD_CFLAGS([screensaver],[$DBUS_CFLAGS])], |
|---|
| 934 |
[AC_MSG_WARN(DBUS library not found)]) |
|---|
| 935 |
] |
|---|
| 936 |
)] |
|---|
| 937 |
)] |
|---|
| 938 |
fi |
|---|
| 939 |
fi |
|---|
| 940 |
) |
|---|
| 941 |
fi |
|---|
| 942 |
;; |
|---|
| 943 |
esac |
|---|
| 944 |
|
|---|
| 945 |
dnl Build the gtk_main plugins? |
|---|
| 946 |
NEED_GTK_MAIN=no |
|---|
| 947 |
NEED_GNOME_MAIN=no |
|---|
| 948 |
NEED_GTK2_MAIN=no |
|---|
| 949 |
NEED_GNOME2_MAIN=no |
|---|
| 950 |
|
|---|
| 951 |
dnl build the qte plugin ? |
|---|
| 952 |
NEED_QTE_MAIN=no |
|---|
| 953 |
|
|---|
| 954 |
dnl Check for ntohl, etc. |
|---|
| 955 |
AC_CACHE_CHECK([for ntohl in sys/param.h], |
|---|
| 956 |
[ac_cv_c_ntohl_sys_param_h], |
|---|
| 957 |
[CFLAGS="${CFLAGS_save} -Wall -Werror" |
|---|
| 958 |
AC_TRY_COMPILE([#include <sys/param.h>], |
|---|
| 959 |
[int meuh; ntohl(meuh);], |
|---|
| 960 |
ac_cv_c_ntohl_sys_param_h=yes, ac_cv_c_ntohl_sys_param_h=no)]) |
|---|
| 961 |
if test "${ac_cv_c_ntohl_sys_param_h}" != "no"; then |
|---|
| 962 |
AC_DEFINE(NTOHL_IN_SYS_PARAM_H, 1, Define if <sys/param.h> defines ntohl.) |
|---|
| 963 |
fi |
|---|
| 964 |
CFLAGS="${CFLAGS_save}" |
|---|
| 965 |
|
|---|
| 966 |
RDC_PROG_CC_WFLAGS([all extra sign-compare undef pointer-arith bad-function-cast cast-align write-strings missing-prototypes volatile-register-var]) |
|---|
| 967 |
RDC_PROG_CC_FLAGS_IFELSE([-pipe]) |
|---|
| 968 |
|
|---|
| 969 |
dnl Check for various optimization flags |
|---|
| 970 |
AC_CACHE_CHECK([if \$CC accepts -Os], |
|---|
| 971 |
[ac_cv_c_os], |
|---|
| 972 |
[CFLAGS="${CFLAGS_save} -Os" |
|---|
| 973 |
AC_TRY_COMPILE([],,ac_cv_c_os=yes, ac_cv_c_os=no)]) |
|---|
| 974 |
if test "${ac_cv_c_os}" != "no"; then |
|---|
| 975 |
CFLAGS_OPTIM_SIZE="${CFLAGS_OPTIM_SIZE} -Os" |
|---|
| 976 |
else |
|---|
| 977 |
AC_CACHE_CHECK([if \$CC accepts -O], |
|---|
| 978 |
[ac_cv_c_o], |
|---|
| 979 |
[CFLAGS="${CFLAGS_save} -O" |
|---|
| 980 |
AC_TRY_COMPILE([],,ac_cv_c_o=yes, ac_cv_c_o=no)]) |
|---|
| 981 |
if test "${ac_cv_c_o}" != "no"; then |
|---|
| 982 |
if test "${ac_cv_c_o3}" = "no"; then |
|---|
| 983 |
CFLAGS_OPTIM_SIZE="${CFLAGS_OPTIM_SIZE} -O" |
|---|
| 984 |
fi |
|---|
| 985 |
fi |
|---|
| 986 |
fi |
|---|
| 987 |
|
|---|
| 988 |
AC_CACHE_CHECK([if \$CC accepts -O3], |
|---|
| 989 |
[ac_cv_c_o3], |
|---|
| 990 |
[CFLAGS="${CFLAGS_save} -O3" |
|---|
| 991 |
AC_TRY_COMPILE([],,ac_cv_c_o3=yes, ac_cv_c_o3=no)]) |
|---|
| 992 |
if test "${ac_cv_c_o3}" != "no" -a "x${enable_debug}" = "xno"; then |
|---|
| 993 |
CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -O3" |
|---|
| 994 |
else |
|---|
| 995 |
AC_CACHE_CHECK([if \$CC accepts -O2], |
|---|
| 996 |
[ac_cv_c_o2], |
|---|
| 997 |
[CFLAGS="${CFLAGS_save} -O2" |
|---|
| 998 |
AC_TRY_COMPILE([],,ac_cv_c_o2=yes, ac_cv_c_o2=no)]) |
|---|
| 999 |
if test "${ac_cv_c_o2}" != "no"; then |
|---|
| 1000 |
CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -O2" |
|---|
| 1001 |
else |
|---|
| 1002 |
AC_CACHE_CHECK([if \$CC accepts -O], |
|---|
| 1003 |
[ac_cv_c_o], |
|---|
| 1004 |
[CFLAGS="${CFLAGS_save} -O" |
|---|
| 1005 |
AC_TRY_COMPILE([],,ac_cv_c_o=yes, ac_cv_c_o=no)]) |
|---|
| 1006 |
if test "${ac_cv_c_o}" != "no"; then |
|---|
| 1007 |
CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -O" |
|---|
| 1008 |
fi |
|---|
| 1009 |
fi |
|---|
| 1010 |
fi |
|---|
| 1011 |
|
|---|
| 1012 |
AC_CACHE_CHECK([if \$CC accepts -O0], |
|---|
| 1013 |
[ac_cv_c_o0], |
|---|
| 1014 |
[CFLAGS="${CFLAGS_save} -O0" |
|---|
| 1015 |
AC_TRY_COMPILE([],,ac_cv_c_o0=yes, ac_cv_c_o0=no)]) |
|---|
| 1016 |
if test "${ac_cv_c_o0}" != "no"; then |
|---|
| 1017 |
CFLAGS_NOOPTIM="${CFLAGS_NOOPTIM} -O0" |
|---|
| 1018 |
fi |
|---|
| 1019 |
|
|---|
| 1020 |
dnl Check for -ffast-math |
|---|
| 1021 |
AC_CACHE_CHECK([if \$CC accepts -ffast-math], |
|---|
| 1022 |
[ac_cv_c_fast_math], |
|---|
| 1023 |
[CFLAGS="${CFLAGS_save} -ffast-math" |
|---|
| 1024 |
AC_TRY_COMPILE([],,ac_cv_c_fast_math=yes, ac_cv_c_fast_math=no)]) |
|---|
| 1025 |
if test "${ac_cv_c_fast_math}" != "no"; then |
|---|
| 1026 |
CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -ffast-math" |
|---|
| 1027 |
fi |
|---|
| 1028 |
|
|---|
| 1029 |
dnl Check for -funroll-loops |
|---|
| 1030 |
dnl Disabled on BeOS because BeOS' gcc is buggy and may crash with it |
|---|
| 1031 |
if test "${SYS}" != "beos" |
|---|
| 1032 |
then |
|---|
| 1033 |
AC_CACHE_CHECK([if \$CC accepts -funroll-loops], |
|---|
| 1034 |
[ac_cv_c_unroll_loops], |
|---|
| 1035 |
[CFLAGS="${CFLAGS_save} -funroll-loops" |
|---|
| 1036 |
AC_TRY_COMPILE([],,ac_cv_c_unroll_loops=yes, ac_cv_c_unroll_loops=no)]) |
|---|
| 1037 |
if test "${ac_cv_c_unroll_loops}" != "no"; then |
|---|
| 1038 |
CFLAGS_OPTIM_SPEED="${CFLAGS_OPTIM_SPEED} -funroll-loops" |
|---|
| 1039 |
fi |
|---|
| 1040 |
fi |
|---|
| 1041 |
|
|---|
| 1042 |
dnl Check for -fomit-frame-pointer |
|---|
| 1043 |
AC_CACHE_CHECK([if \$CC accepts -fomit-frame-pointer], |
|---|
| 1044 |
[ac_cv_c_omit_frame_pointer], |
|---|
| 1045 |
[CFLAGS="${CFLAGS_save} -fomit-frame-pointer" |
|---|
| 1046 |
AC_TRY_COMPILE([],,ac_cv_c_omit_frame_pointer=yes, ac_cv_c_omit_frame_pointer=no)]) |
|---|
| 1047 |
if test "${ac_cv_c_omit_frame_pointer}" != "no"; then |
|---|
| 1048 |
CFLAGS_OPTIM_NODEBUG="${CFLAGS_OPTIM_NODEBUG} -fomit-frame-pointer" |
|---|
| 1049 |
fi |
|---|
| 1050 |
|
|---|
| 1051 |
dnl Check for -fvisibility=hidden |
|---|
| 1052 |
dnl Don't test on mingw32, because it is going to work with just a warning |
|---|
| 1053 |
dnl even if it doesn't support it |
|---|
| 1054 |
if test "${SYS}" != "mingw32" |
|---|
| 1055 |
then |
|---|
| 1056 |
AC_CACHE_CHECK([if \$CC accepts -fvisibility=hidden], |
|---|
| 1057 |
[ac_cv_c_visibility_hidden], |
|---|
| 1058 |
[CFLAGS="${CFLAGS_save} -fvisibility=hidden" |
|---|
| 1059 |
AC_TRY_COMPILE([],,ac_cv_c_visibility_hidden=yes, ac_cv_c_visibility_hidden=no)]) |
|---|
| 1060 |
if test "${ac_cv_c_visibility_hidden}" != "no"; then |
|---|
| 1061 |
VLC_ADD_CFLAGS([libvlc plugin],[-fvisibility=hidden]) |
|---|
| 1062 |
fi |
|---|
| 1063 |
fi |
|---|
| 1064 |
|
|---|
| 1065 |
AM_CONDITIONAL(HAVE_COMPILER_EXPORT, [test "$SYS" = "mingw32" -o "${ac_cv_c_visibility_hidden}" != "no"]) |
|---|
| 1066 |
|
|---|
| 1067 |
dnl Check for -fvisibility-inlines-hidden (breaks x86_64 linkers) |
|---|
| 1068 |
dnl AC_LANG_PUSH(C++) |
|---|
| 1069 |
dnl AC_CACHE_CHECK([if \$CXX accepts -fvisibility-inlines-hidden], |
|---|
| 1070 |
dnl [ac_cv_c_visibility_inlines_hidden], |
|---|
| 1071 |
dnl [CXXFLAGS="${CXXFLAGS_save} -fvisibility-inlines-hidden" |
|---|
| 1072 |
dnl AC_TRY_COMPILE([],,ac_cv_c_visibility_inlines_hidden=yes, ac_cv_c_visibility_inlines_hidden=no)]) |
|---|
| 1073 |
dnl if test "${ac_cv_c_visibility_inlines_hidden}" != "no"; then |
|---|
| 1074 |
dnl VLC_ADD_CXXFLAGS([libvlc plugin],[-fvisibility-inlines-hidden]) |
|---|
| 1075 |
dnl fi |
|---|
| 1076 |
dnl CXXFLAGS="${CXXFLAGS_save}" |
|---|
| 1077 |
dnl AC_LANG_POP(C++) |
|---|
| 1078 |
|
|---|
| 1079 |
dnl Check for -mdynamic-no-pic |
|---|
| 1080 |
dnl AC_CACHE_CHECK([if \$CC accepts -mdynamic-no-pic], |
|---|
| 1081 |
dnl [ac_cv_c_dynamic_no_pic], |
|---|
| 1082 |
dnl [CFLAGS="${CFLAGS_save} -mdynamic-no-pic" |
|---|
| 1083 |
dnl AC_TRY_COMPILE([],,ac_cv_c_dynamic_no_pic=yes, ac_cv_c_dynamic_no_pic=no)]) |
|---|
| 1084 |
dnl AS_IF([test "${ac_cv_c_dynamic_no_pic}" != "no"], [ |
|---|
| 1085 |
dnl VLC_ADD_CFLAGS([builtin],[-mdynamic-no-pic]) |
|---|
| 1086 |
dnl VLC_ADD_CFLAGS([libvlc],[-mdynamic-no-pic]) |
|---|
| 1087 |
dnl ]) |
|---|
| 1088 |
|
|---|
| 1089 |
dnl Check for Darwin plugin linking flags |
|---|
| 1090 |
AC_CACHE_CHECK([if \$CC accepts -bundle -undefined error], |
|---|
| 1091 |
[ac_cv_ld_darwin], |
|---|
| 1092 |
[CFLAGS="${CFLAGS_save} -bundle -undefined error" |
|---|
| 1093 |
AC_TRY_COMPILE([],,ac_cv_ld_darwin=yes, ac_cv_ld_darwin=no)]) |
|---|
| 1094 |
if test "${ac_cv_ld_darwin}" != "no"; then |
|---|
| 1095 |
VLC_ADD_LDFLAGS([plugin],[-bundle -undefined error]) |
|---|
| 1096 |
fi |
|---|
| 1097 |
|
|---|
| 1098 |
dnl Check for standard plugin linking flags |
|---|
| 1099 |
dnl BeOS' gcc needs -nostart instead of -shared, even if -shared isn't harmful (just a warning) |
|---|
| 1100 |
dnl AS_IF([test "${SYS}" = "beos"], [ |
|---|
| 1101 |
dnl VLC_ADD_LDFLAGS([plugin mozilla],[-nostart]) |
|---|
| 1102 |
dnl ], [ |
|---|
| 1103 |
dnl AC_CACHE_CHECK([if \$CC accepts -shared], |
|---|
| 1104 |
dnl [ac_cv_ld_plugins], |
|---|
| 1105 |
dnl [CFLAGS="${CFLAGS_save} -shared" |
|---|
| 1106 |
dnl AC_TRY_COMPILE([],, ac_cv_ld_plugins=yes, ac_cv_ld_plugins=no)]) |
|---|
| 1107 |
dnl AS_IF([test "${ac_cv_ld_plugins}" != "no"], [ |
|---|
| 1108 |
dnl VLC_ADD_LDFLAGS([plugin mozilla],[-shared]) |
|---|
| 1109 |
dnl ]) |
|---|
| 1110 |
dnl ]) |
|---|
| 1111 |
|
|---|
| 1112 |
dnl Checks for __attribute__(aligned()) directive |
|---|
| 1113 |
AC_CACHE_CHECK([__attribute__ ((aligned ())) support], |
|---|
| 1114 |
[ac_cv_c_attribute_aligned], |
|---|
| 1115 |
[ac_cv_c_attribute_aligned=0 |
|---|
| 1116 |
CFLAGS="${CFLAGS_save} -Werror" |
|---|
| 1117 |
for ac_cv_c_attr_align_try in 2 4 8 16 32 64; do |
|---|
| 1118 |
AC_TRY_COMPILE([], |
|---|
| 1119 |
[static char c __attribute__ ((aligned(${ac_cv_c_attr_align_try}))) = 0; return c;], |
|---|
| 1120 |
[ac_cv_c_attribute_aligned="${ac_cv_c_attr_align_try}"]) |
|---|
| 1121 |
done |
|---|
| 1122 |
CFLAGS="${CFLAGS_save}"]) |
|---|
| 1123 |
if test "${ac_cv_c_attribute_aligned}" != "0"; then |
|---|
| 1124 |
AC_DEFINE_UNQUOTED([ATTRIBUTE_ALIGNED_MAX], |
|---|
| 1125 |
[${ac_cv_c_attribute_aligned}],[Maximum supported data alignment]) |
|---|
| 1126 |
fi |
|---|
| 1127 |
|
|---|
| 1128 |
dnl Checks for __attribute__(format()) directive |
|---|
| 1129 |
AC_CACHE_CHECK([__attribute__ ((format ())) support with function pointers], |
|---|
| 1130 |
[ac_cv_c_attribute_format], |
|---|
| 1131 |
[ac_cv_c_attribute_format=no |
|---|
| 1132 |
CFLAGS="${CFLAGS_save} -Werror" |
|---|
| 1133 |
AC_TRY_COMPILE([], |
|---|
| 1134 |
[static void (*pf_printf)(const char *, ...) __attribute__ ((format(printf,1,2)));(void)pf_printf;], |
|---|
| 1135 |
[ac_cv_c_attribute_format=yes]) |
|---|
| 1136 |
CFLAGS="${CFLAGS_save}"]) |
|---|
| 1137 |
if test "${ac_cv_c_attribute_format}" != "no"; then |
|---|
| 1138 |
AC_DEFINE(HAVE_ATTRIBUTE_FORMAT, 1, Support for __attribute__((format())) with function pointers) |
|---|
| 1139 |
fi |
|---|
| 1140 |
|
|---|
| 1141 |
dnl Check for __attribute__((packed)) |
|---|
| 1142 |
AC_CACHE_CHECK([for __attribute__((packed))], |
|---|
| 1143 |
[ac_cv_c_attribute_packed], |
|---|
| 1144 |
[ac_cv_c_attribute_packed=no |
|---|
| 1145 |
AC_TRY_COMPILE(, [struct __attribute__((__packed__)) foo { int a; } b;], |
|---|
| 1146 |
[ac_cv_c_attribute_packed=yes])]) |
|---|
| 1147 |
if test "${ac_cv_c_attribute_packed}" != "no"; then |
|---|
| 1148 |
AC_DEFINE(HAVE_ATTRIBUTE_PACKED, 1, Support for __attribute__((packed)) for structs) |
|---|
| 1149 |
fi |
|---|
| 1150 |
|
|---|
| 1151 |
dnl Check for __attribute__((visibility())) |
|---|
| 1152 |
AC_CACHE_CHECK([for __attribute__((visibility()))], |
|---|
| 1153 |
[ac_cv_c_attribute_visibility], |
|---|
| 1154 |
[ac_cv_c_attribute_visibility=no |
|---|
| 1155 |
AC_TRY_COMPILE(, [extern __attribute__((visibility("default"))) int foo(int);], |
|---|
| 1156 |
[ac_cv_c_attribute_visibility=yes])]) |
|---|
| 1157 |
if test "${ac_cv_c_attribute_visibility}" != "no |
|---|