Skip to content
Snippets Groups Projects
configure.ac 126 KiB
Newer Older
  [
    PKG_CHECK_MODULES(VSXU, libvsxu,
    [
      VLC_ADD_PLUGIN([vsxu])
    ],[
      AC_MSG_WARN([${VSXU_PKG_ERRORS}.])
    ])
  ])

EXTEND_HELP_STRING([Service Discovery plugins:])
dnl
dnl  Bonjour services discovery
PKG_ENABLE_MODULES_VLC([BONJOUR], [], [avahi-client >= 0.6], [Bonjour services discovery], [auto])
dnl
dnl  libudev services discovery
PKG_ENABLE_MODULES_VLC([UDEV], [], [libudev >= 142], [Linux udev services discovery], [auto])
Jean-Baptiste Kempf's avatar
Jean-Baptiste Kempf committed
dnl
dnl MTP devices services discovery
PKG_ENABLE_MODULES_VLC([MTP], [mtp access_mtp], [libmtp >= 1.0.0], [MTP devices support], [auto])
Jean-Baptiste Kempf's avatar
Jean-Baptiste Kempf committed

dnl UPnP Plugin (Intel SDK)
PKG_ENABLE_MODULES_VLC([UPNP], [upnp], [libupnp], [Intel UPNP SDK],[auto])
EXTEND_HELP_STRING([Misc options:])
Samuel Hocevar's avatar
 
Samuel Hocevar committed

dnl
dnl  libxml2 module
dnl
PKG_ENABLE_MODULES_VLC([LIBXML2], [xml], [libxml-2.0 >= 2.5], [libxml2 support],[auto])


dnl
dnl libgcrypt
dnl
AC_ARG_ENABLE(libgcrypt,
  [  --disable-libgcrypt     gcrypt support (default enabled)])
# require libgcrypt >= 1.6.0
AS_IF([test "${enable_libgcrypt}" != "no"], [
  AC_TRY_COMPILE([
#include <gcrypt.h>
#if GCRYPT_VERSION_NUMBER < 0x010600
#error
#endif],
  [], [
    have_libgcrypt="yes"
    AC_DEFINE([HAVE_GCRYPT], 1, [Defined if having gcrypt])
    GCRYPT_CFLAGS="`libgcrypt-config --cflags`"
    GCRYPT_LIBS="`libgcrypt-config --libs`"
    AS_IF([test "${enable_libgcrypt}" == "yes"], [
      AC_MSG_ERROR([libgcrypt version 1.6.0 or higher not found. Install libgcrypt or pass --disable-libgcrypt.])
    ])
  ])
AC_SUBST(GCRYPT_CFLAGS)
AC_SUBST(GCRYPT_LIBS)
AM_CONDITIONAL([HAVE_GCRYPT], [test "${have_libgcrypt}" = "yes"])
  [  --enable-gnutls         GNU TLS TLS/SSL support (default enabled)])
  PKG_CHECK_MODULES(GNUTLS, [gnutls >= 3.2.0], [
    VLC_ADD_PLUGIN([gnutls])
    AS_IF([test -n "${enable_gnutls}"], [
      AC_MSG_ERROR([${GNUTLS_PKG_ERRORS}.)])
dnl
dnl Taglib plugin
dnl
AC_ARG_ENABLE(taglib,
  [AS_HELP_STRING([--disable-taglib],
    [do not use TagLib (default enabled)])])
AS_IF([test "${enable_taglib}" != "no"], [
  PKG_CHECK_MODULES(TAGLIB, taglib >= 1.9, [
    AC_MSG_WARN([${TAGLIB_PKG_ERRORS}.])])
dnl
dnl  libsecret
dnl
PKG_ENABLE_MODULES_VLC([SECRET], [], [libsecret-1], [use libsecret for keystore], [auto])

dnl
dnl  kwallet
dnl
AC_ARG_ENABLE(kwallet,
  [AS_HELP_STRING([--enable-kwallet],
    [use KWallet for keystore (default auto)])])
have_kwallet="no"
KWALLET_CXXFLAGS=""
KWALLET_LIBS=""
AS_IF([test "${SYS}" != "mingw32" -a "${SYS}" != "darwin" \
         -a "${enable_qt}" != "no" -a "${KDE4_CONFIG}" != "no" \
         -a "${enable_kwallet}" != "no" ], [
  VLC_SAVE_FLAGS
  AC_LANG_PUSH([C++])
  KWALLET_CXXFLAGS="$QT_CFLAGS $CXXFLAGS_qt4 -I`$KDE4_CONFIG --path include`"
  CPPFLAGS="$CPPFLAGS $KWALLET_CXXFLAGS"
  AC_CHECK_HEADER([kwallet.h], [
    KWALLET_LIBS="$QT_LIBS -L`$KDE4_CONFIG --install lib` -lkdeui"
    LDFLAGS="$LDFLAGS $KWALLET_LIBS"
    AC_LINK_IFELSE([AC_LANG_PROGRAM([#include <kwallet.h>], [
KWallet::Wallet::LocalWallet();
    ])], [
      have_kwallet="yes"
    ])
  AC_LANG_POP([C++])
  VLC_RESTORE_FLAGS
  ])
#])
AS_IF([test "$enable_kwallet" = "yes" -a "$have_kwallet" = "no" ], [
  AC_MSG_ERROR([KWallet headers or so not found])
])
AC_SUBST(KWALLET_CXXFLAGS)
AC_SUBST(KWALLET_LIBS)
AM_CONDITIONAL([HAVE_KWALLET], [test "${have_kwallet}" = "yes"])

dnl
dnl  Developers helper modules (should be hidden from configure help)
dnl
AC_ARG_ENABLE(devtools, [], [], [enable_devtools="no"])
AS_IF([test "${enable_devtools}" != "no"], [
  VLC_ADD_PLUGIN([accesstweaks])
])
dnl
dnl update checking system
dnl
AC_ARG_ENABLE(update-check,
  [  --enable-update-check   update checking system (default disabled)])
if test "${enable_update_check}" = "yes"
then
  if test "${have_libgcrypt}" != "yes"
  then
    AC_MSG_ERROR([libgcrypt is required for update checking system])
  fi
  VLC_ADD_LIBS([libvlccore], [${GCRYPT_LIBS}])
  VLC_ADD_CFLAGS([libvlccore], [${GCRYPT_CFLAGS}])
  AC_DEFINE([UPDATE_CHECK], 1, [Define if you want to use the VLC update mechanism])
dnl OS X notification plugin
AC_ARG_ENABLE(osx_notifications,
  [  --enable-osx-notifications          osx notification plugin (default disabled)],,
  [enable_osx_notifications=no])
AS_IF([test "${enable_osx_notifications}" != "no"], [
    AC_CHECK_HEADERS(${CONTRIB_DIR}/Growl.framework/Versions/A/Headers/Growl.h, [
      VLC_ADD_PLUGIN([osx_notifications])
      VLC_ADD_LIBS([osx_notifications], [-F${CONTRIB_DIR} -Wl,-framework,Growl,-framework,Foundation])
      VLC_ADD_OBJCFLAGS([osx_notifications], [-F${CONTRIB_DIR}])
      VLC_ADD_OBJCFLAGS([osx_notifications], [-fobjc-exceptions] )
    ])
  ]
)

dnl
dnl Libnotify notification plugin
dnl
PKG_ENABLE_MODULES_VLC([NOTIFY], [], [libnotify gtk+-2.0], [libnotify notification], [auto])

dnl  Endianness check
AC_C_BIGENDIAN
AS_IF([test "${ac_cv_c_bigendian}" = "yes"], [
  DEFS_BIGENDIAN="-DWORDS_BIGENDIAN=1"
], [
  DEFS_BIGENDIAN=""
])
AC_SUBST(DEFS_BIGENDIAN)
dnl
dnl Where to install KDE solid .desktop
dnl
AC_ARG_WITH(kde-solid,
  AS_HELP_STRING([--with-kde-solid=PATH],
                 [KDE Solid actions directory (auto)]),, [
Rémi Denis-Courmont's avatar
Rémi Denis-Courmont committed
if test "${SYS}" != "mingw32" -a "${SYS}" != "darwin" ; then
])
soliddatadir=""
AS_IF([test "${with_kde_solid}" != "no"], [
  AS_IF([test "${with_kde_solid}" = "yes"], [
    kde4datadir="`${KDE4_CONFIG} --install data`"
    AS_IF([test "x$kde4datadir" = "x"], [kde4datadir='${datadir}/kde4/apps'])
    soliddatadir="${kde4datadir}/solid/actions"
AC_SUBST(soliddatadir)
AM_CONDITIONAL(KDE_SOLID, [test "x${soliddatadir}" != "x"])
EXTEND_HELP_STRING([Components:])

dnl
dnl  the VLC binary
dnl
AC_ARG_ENABLE(vlc,
  [  --enable-vlc            build the VLC media player (default enabled)])
AM_CONDITIONAL(BUILD_VLC, [test "${enable_vlc}" != "no"])

AC_ARG_ENABLE(macosx-vlc-app,
  [  --enable-macosx-vlc-app build the VLC media player (default enabled on Mac OS X)])
AM_CONDITIONAL(BUILD_MACOSX_VLC_APP, [test "${enable_macosx_vlc_app}" != "no" &&
    (test "${SYS}" = "darwin" || test "${enable_macosx_vlc_app}" = "yes") ])

Samuel Hocevar's avatar
 
Samuel Hocevar committed
dnl
dnl  Stuff used by the program
dnl
VERSION_MESSAGE="${VERSION} ${CODENAME}"
COPYRIGHT_MESSAGE="Copyright © ${COPYRIGHT_YEARS} the VideoLAN team"
AC_DEFINE_UNQUOTED(VERSION_MESSAGE, "${VERSION_MESSAGE}", [Simple version string])
AC_DEFINE_UNQUOTED(COPYRIGHT_MESSAGE, "${COPYRIGHT_MESSAGE}", [Copyright string])
Christophe Mutricy's avatar
Christophe Mutricy committed
AC_DEFINE_UNQUOTED(COPYRIGHT_YEARS, "${COPYRIGHT_YEARS}", [The copyright years])
AC_DEFINE_UNQUOTED(CONFIGURE_LINE, "${CONFIGURE_LINE}", [The ./configure command line])
AC_DEFINE_UNQUOTED(PACKAGE_VERSION_MAJOR,${VERSION_MAJOR}, [version major number])
AC_DEFINE_UNQUOTED(PACKAGE_VERSION_MINOR,${VERSION_MINOR}, [version minor number])
AC_DEFINE_UNQUOTED(PACKAGE_VERSION_REVISION,${VERSION_REVISION}, [version revision number])
AC_DEFINE_UNQUOTED(PACKAGE_VERSION_EXTRA,${VERSION_EXTRA}, [version extra number])
AC_DEFINE_UNQUOTED(PACKAGE_VERSION_DEV,"${VERSION_DEV}", [version development string])
AC_SUBST(COPYRIGHT_MESSAGE)
AC_SUBST(VERSION_MESSAGE)
AC_SUBST(VERSION_MAJOR)
AC_SUBST(VERSION_MINOR)
AC_SUBST(VERSION_REVISION)
AC_SUBST(VERSION_EXTRA)
AC_SUBST(COPYRIGHT_YEARS)
AC_DEFINE_UNQUOTED(VLC_COMPILE_BY, "`whoami|sed -e 's/\\\/\\\\\\\/g'`", [user who ran configure])
AC_DEFINE_UNQUOTED(VLC_COMPILE_HOST, "`hostname -f 2>/dev/null || hostname`", [host which ran configure])
AC_DEFINE_UNQUOTED(VLC_COMPILER, "`$CC -v 2>&1 | tail -n 1 | sed -e 's/ *$//'`", [compiler])
Samuel Hocevar's avatar
Samuel Hocevar committed
dnl
Samuel Hocevar's avatar
Samuel Hocevar committed
dnl  Handle substvars that use $(top_srcdir)
Samuel Hocevar's avatar
Samuel Hocevar committed
dnl
CPPFLAGS="-I\$(top_srcdir)/include -I\$(top_builddir)/include ${CPPFLAGS}"
Samuel Hocevar's avatar
Samuel Hocevar committed

Samuel Hocevar's avatar
 
Samuel Hocevar committed
dnl  Configuration is finished
dnl
Samuel Hocevar's avatar
 
Samuel Hocevar committed
AC_SUBST(ASM)
Samuel Hocevar's avatar
 
Samuel Hocevar committed
AC_SUBST(MOC)
zorglub's avatar
zorglub committed
AC_SUBST(RCC)
AC_SUBST(UIC)
Samuel Hocevar's avatar
 
Samuel Hocevar committed
AC_SUBST(WINDRES)
damienf's avatar
damienf committed
AC_SUBST(WINE_SDK_PATH)
AC_SUBST(MACOSX_DEPLOYMENT_TARGET)
AC_SUBST(FILE_LIBVLCCORE_DLL)
AC_SUBST(FILE_LIBVLC_DLL)
Samuel Hocevar's avatar
 
Samuel Hocevar committed

Samuel Hocevar's avatar
Samuel Hocevar committed
  m4/Makefile
  lib/Makefile
Samuel Hocevar's avatar
Samuel Hocevar committed
  modules/gui/macosx/Makefile
  modules/gui/qt4/Makefile
  modules/gui/skins2/Makefile
  modules/hw/mmal/Makefile
AM_COND_IF([HAVE_WIN32], [
  AC_CONFIG_FILES([
    extras/package/win32/NSIS/spad.nsi
    extras/package/win32/NSIS/vlc.win32.nsi
Ludovic Fauvet's avatar
Ludovic Fauvet committed
    extras/package/win32/msi/config.wxi
  ])
])

AM_COND_IF([HAVE_DARWIN], [
  AC_CONFIG_FILES([
    extras/package/macosx/Info.plist
    extras/package/macosx/Resources/English.lproj/InfoPlist.strings
  ])
])

dnl Generate makefiles
AC_OUTPUT

dnl Do we have to use make or gmake ?
if make --version 2>&1|grep -q GNU
then
    # GNU make, all seems good
    MAKE=make
else
    # Known GNU make alias (on BSD)
    MAKE=gmake
fi
if test -n $SHELL; then
  SHELL=${CONFIG_SHELL-/bin/sh}
fi
compile_top_srcdir=`sed -ne "s/^top_srcdir *= *//p" < Makefile`
echo "#! $SHELL
rm -f .error\$\$
ERROR=0
export PATH=\"$PATH\" LANG=C
($MAKE V=1 \$@ 2>&1 || touch .error\$\$)| $compile_top_srcdir/extras/buildsystem/make.pl
Rafaël Carré's avatar
Rafaël Carré committed
test -f .error\$\$ && ERROR=1
rm -f .error\$\$
exit \$ERROR" >compile
Samuel Hocevar's avatar
 
Samuel Hocevar committed
--------------------
Samuel Hocevar's avatar
 
Samuel Hocevar committed
system                : ${SYS}
architecture          : ${ARCH}
optimizations         : ${enable_optimizations}"
if test "${enable_vlc}" != "no"; then
echo "vlc aliases           :${ALIASES}"
else
echo "build vlc executable  : no"
fi
To build vlc and its plugins, type \`$MAKE', or \`./compile' if you like nice colors."