]> git.sesse.net Git - vlc/blobdiff - configure.ac
Add some option in configure to help Gentoo people. Closes #1045. Closes #1046
[vlc] / configure.ac
index e9a9866869d1be73af9223376963ff35f95c1a89..abe3035970ef8fd78d2d75bfe795eb26d60d5db6 100644 (file)
@@ -1017,19 +1017,20 @@ AC_CACHE_CHECK([if \$CC accepts -fvisibility=hidden],
     [CFLAGS="${CFLAGS_save} -fvisibility=hidden"
      AC_TRY_COMPILE([],,ac_cv_c_visibility_hidden=yes, ac_cv_c_visibility_hidden=no)])
 if test "${ac_cv_c_visibility_hidden}" != "no"; then
-    VLC_ADD_CFLAGS([libvlc],[-fvisibility=hidden])
-    VLC_ADD_CFLAGS([plugin],[-fvisibility=hidden])
+    VLC_ADD_CFLAGS([libvlc plugin],[-fvisibility=hidden])
 fi
 
-dnl Check for -fvisibility-inlines-hidden
-AC_CACHE_CHECK([if \$CC accepts -fvisibility-inlines-hidden],
-    [ac_cv_c_visibility_inlines_hidden],
-    [CFLAGS="${CFLAGS_save} -fvisibility-inlines-hidden"
-     AC_TRY_COMPILE([],,ac_cv_c_visibility_inlines_hidden=yes, ac_cv_c_visibility_inlines_hidden=no)])
-if test "${ac_cv_c_visibility_inlines_hidden}" != "no"; then
-    VLC_ADD_CFLAGS([libvlc],[-fvisibility-inlines-hidden])
-    VLC_ADD_CFLAGS([plugin],[-fvisibility-inlines-hidden])
-fi
+dnl Check for -fvisibility-inlines-hidden (breaks x86_64 linkers)
+dnl AC_LANG_PUSH(C++)
+dnl     AC_CACHE_CHECK([if \$CXX accepts -fvisibility-inlines-hidden],
+dnl         [ac_cv_c_visibility_inlines_hidden],
+dnl         [CXXFLAGS="${CXXFLAGS_save} -fvisibility-inlines-hidden"
+dnl          AC_TRY_COMPILE([],,ac_cv_c_visibility_inlines_hidden=yes, ac_cv_c_visibility_inlines_hidden=no)])
+dnl     if test "${ac_cv_c_visibility_inlines_hidden}" != "no"; then
+dnl         VLC_ADD_CXXFLAGS([libvlc plugin],[-fvisibility-inlines-hidden])
+dnl     fi
+dnl     CXXFLAGS="${CXXFLAGS_save}"
+dnl AC_LANG_POP(C++)
 
 dnl Check for -mdynamic-no-pic
 AC_CACHE_CHECK([if \$CC accepts -mdynamic-no-pic],
@@ -2388,7 +2389,7 @@ if test "${enable_screen}" != "no"; then
     CPPFLAGS="${CPPFLAGS_save} ${X_CFLAGS}"
     AC_CHECK_HEADERS(X11/Xlib.h, [
       VLC_ADD_PLUGINS([screen])
-      VLC_ADD_LDFLAGS([screen],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext])
+      VLC_ADD_LDFLAGS([screen],[${X_LIBS} ${X_PRE_LIBS} -lX11])
       VLC_ADD_CPPFLAGS([screen],[${X_CFLAGS}])
     ])
     CPPFLAGS="${CPPFLAGS_save}"
@@ -3121,10 +3122,14 @@ AC_CHECK_HEADERS(sysfs/libsysfs.h, [
 dnl
 dnl skins2 module
 dnl
-AC_CHECK_HEADERS(libtar.h, [
-  VLC_ADD_LDFLAGS([skins2],[-ltar])
-] )
+AC_ARG_ENABLE(libtar,
+  [  --enable libtar support for skins2 (default enabled)])
 
+AS_IF([test "${enable_libtar}" != "no"],[
+  AC_CHECK_HEADERS(libtar.h, [
+    VLC_ADD_LDFLAGS([skins2],[-ltar])
+  ] )
+])
 
 
 dnl
@@ -3637,9 +3642,14 @@ if test "${enable_x11}" != "no" &&
    test "${enable_x11}" = "yes"); then
   CPPFLAGS="${CPPFLAGS_save} ${X_FLAGS}"
   AC_CHECK_HEADERS(X11/Xlib.h, [
-    VLC_ADD_PLUGINS([x11 panoramix])
-    VLC_ADD_LDFLAGS([x11 panoramix],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext])
-    VLC_ADD_CPPFLAGS([x11 panoramix],[${X_CFLAGS}])
+    VLC_ADD_PLUGINS([panoramix])
+    VLC_ADD_LDFLAGS([panoramix],[${X_LIBS} ${X_PRE_LIBS} -lX11])
+    VLC_ADD_CPPFLAGS([panoramix],[${X_CFLAGS}])
+    AC_CHECK_LIB(Xext, XShmAttach, [
+      VLC_ADD_PLUGINS([x11])
+      VLC_ADD_LDFLAGS([x11],[${X_LIBS} ${X_PRE_LIBS} -lX11 -lXext])
+      VLC_ADD_CPPFLAGS([x11],[${X_CFLAGS}])
+    ])
   ])
   CPPFLAGS="${CPPFLAGS_save}"
 fi
@@ -3815,6 +3825,8 @@ dnl  SDL module
 dnl
 AC_ARG_ENABLE(sdl,
   [  --enable-sdl            SDL support (default enabled)])
+AC_ARG_ENABLE(sdl-image,
+  [  --enable-sdl-image            SDL image support (default enabled)])
 if test "${enable_sdl}" != "no"
 then
   SDL_PATH="${PATH}"
@@ -3868,21 +3880,23 @@ then
 Please install it and try again. Alternatively you can also configure with
 --disable-sdl.])
       ])])
-    AC_CHECK_HEADERS(${SDL_IMAGE}, [AC_DEFINE_UNQUOTED(SDL_IMAGE_INCLUDE_FILE,
-      <${SDL_IMAGE}>, Indicate the path of SDL_image.h)
-      VLC_ADD_PLUGINS([sdl_image])
-      AC_CHECK_LIB(png, png_set_rows,
-        [VLC_ADD_LDFLAGS([sdl_image],[-lpng -lz])],[],[-lz])
-      AC_CHECK_LIB(jpeg, jpeg_start_decompress,
-        [VLC_ADD_LDFLAGS([sdl_image],[-ljpeg])])
-      AC_CHECK_LIB(tiff, TIFFClientOpen,
-        [VLC_ADD_LDFLAGS([sdl_image],[-ltiff])])
-      VLC_ADD_LDFLAGS([sdl_image], [-lSDL_image])],
-      [ AC_CHECK_HEADERS(SDL_image.h, AC_DEFINE(SDL_IMAGE_INCLUDE_FILE, <SDL_image.h>,
-          As a last resort we also test for SDL_image.h presence),
-      [ AC_MSG_WARN([The development package for SDL_image is not installed.
-You should install it alongside your SDL package.])
-      ])])
+    AS_IF([ test "${enable_sdl_image}" != "no"],[
+      AC_CHECK_HEADERS(${SDL_IMAGE}, [AC_DEFINE_UNQUOTED(SDL_IMAGE_INCLUDE_FILE,
+        <${SDL_IMAGE}>, Indicate the path of SDL_image.h)
+        VLC_ADD_PLUGINS([sdl_image])
+        AC_CHECK_LIB(png, png_set_rows,
+          [VLC_ADD_LDFLAGS([sdl_image],[-lpng -lz])],[],[-lz])
+        AC_CHECK_LIB(jpeg, jpeg_start_decompress,
+          [VLC_ADD_LDFLAGS([sdl_image],[-ljpeg])])
+        AC_CHECK_LIB(tiff, TIFFClientOpen,
+          [VLC_ADD_LDFLAGS([sdl_image],[-ltiff])])
+        VLC_ADD_LDFLAGS([sdl_image], [-lSDL_image])],
+        [ AC_CHECK_HEADERS(SDL_image.h, AC_DEFINE(SDL_IMAGE_INCLUDE_FILE, <SDL_image.h>,
+            As a last resort we also test for SDL_image.h presence),
+        [ AC_MSG_WARN([The development package for SDL_image is not installed.
+  You should install it alongside your SDL package.])
+        ])])
+    ])
     CPPFLAGS="${CPPFLAGS_save}"
     if expr 1.1.5 \> `${SDL_CONFIG} --version` >/dev/null
     then
@@ -5630,9 +5644,11 @@ dnl Pic and shared libvlc stuff
 dnl
 AS_IF([test "${SYS}" = "mingw32" || test "${enable_libtool}" != "no"], [
   AC_DEFINE(HAVE_SHARED_LIBVLC, 1, [Define to 1 if libvlc is built as a shared library.])
-  FILE_LIBVLC_DLL="!define LIBVLC_DLL libvlc.dll"
   VLC_ADD_PLUGINS([${BUILTINS}])
-  VLC_ADD_CPPFLAGS([libvlc],[-DDLL_EXPORT])
+  AS_IF([test "${SYS}" = "mingw32"], [
+    FILE_LIBVLC_DLL="!define LIBVLC_DLL libvlc.dll"
+    VLC_ADD_CPPFLAGS([libvlc],[-DDLL_EXPORT])
+  ])
   BUILTINS=""
 ], [
   LDFLAGS_vlc="${LDFLAGS_vlc} ${LDFLAGS_libvlc}"