-dnl
-dnl Microsoft ActiveX support
-dnl
-activex=false
-AC_ARG_ENABLE(activex,
- AS_HELP_STRING([--enable-activex],[build a vlc-based ActiveX control
- (default enabled on Win32)]))
-AC_ARG_WITH(wine-sdk-path,
- [ --with-wine-sdk-path=PATH path to wine sdk])
-if test "${enable_activex}" != "no"
-then
- if test "${SYS}" = "mingw32"
- then
- AC_CHECK_PROGS(MIDL, [midl], no)
- if test "${with_wine_sdk_path}" != ""
- then
- WINE_SDK_PATH=${with_wine_sdk_path}
- AC_PATH_PROG(WIDL, widl, no, [$WINE_SDK_PATH/bin:$WINE_SDK_PATH/tools/widl])
- else
- WIDL=no
- fi
- AC_LANG_PUSH(C++)
- AC_CHECK_HEADERS(ole2.h,
- [AC_CHECK_HEADERS(olectl.h,
- [ VLC_ADD_CPPFLAGS([activex],[-DUNICODE -D_UNICODE -D_MIDL_USE_GUIDDEF_])
- VLC_ADD_CXXFLAGS([activex],[-fno-exceptions])
- VLC_ADD_LIBS([activex],[-lole32 -loleaut32 -luuid -lshlwapi])
- AC_CHECK_HEADERS(objsafe.h,
- VLC_ADD_CXXFLAGS([activex],[-DHAVE_OBJSAFE_HEADER]),,
- [
- #if HAVE_OLE2_H
- # include <ole2.h>
- #endif
- ]
- )
- activex=:
- PLUGINS_BINDINGS="${PLUGINS_BINDINGS} activex"
- ],
- [ AC_MSG_ERROR([required OLE headers are missing from your system]) ]
- )],
- [ AC_MSG_ERROR([required OLE headers are missing from your system]) ]
- )
- AC_LANG_POP(C++)
- fi
-fi
-AC_ARG_VAR(MIDL, [Microsoft IDL compiler (Win32 platform only)])
-AM_CONDITIONAL(HAS_MIDL_COMPILER, test "${MIDL}" != "no")
-AC_ARG_VAR(WIDL, [Wine IDL compiler (requires Wine SDK)])
-AM_CONDITIONAL(HAS_WIDL_COMPILER, test "${WIDL}" != "no")
-AM_CONDITIONAL(BUILD_ACTIVEX,${activex})
-
-dnl
-dnl Mozilla plugin
-dnl
-mozilla=false
-AC_ARG_ENABLE(mozilla,
- AS_HELP_STRING([--enable-mozilla],[build a vlc-based Firefox/Mozilla plugin
- (default disabled)]))
-AC_ARG_WITH(mozilla-sdk-path,
- [ --with-mozilla-sdk-path=PATH path to mozilla sdk])
-AC_ARG_WITH(mozilla-pkg,
- [ --with-mozilla-pkg=PKG look for PKG.pc to build the mozilla plugin.])
-AC_LANG_PUSH(C++)
-if test "${enable_mozilla}" = "yes"
-then
- AS_IF([test "${with_mozilla_sdk_path}" = "" -o "${with_mozilla_sdk_path}" = "no"],
- [
- dnl pkg-config
- dnl As we want to do a loop due to the number of name possible for the .pc
- dnl we can't use the pkg-config macros.
-
- AC_ARG_VAR([MOZILLA_CFLAGS], [C compiler flags for Mozilla, overriding pkg-config])
- AC_ARG_VAR([MOZILLA_LIBS], [linker flags for Mozilla, overriding pkg-config])
- AC_MSG_NOTICE([Checking for Mozilla])
- found=0
- if test -n "$MOZILLA_CFLAGS" -o -n "$MOZILLA_LIBS"
- then
- found=1
- else
- if test -n "$PKG_CONFIG"; then
- for i in "${with_mozilla_pkg}" libxul {seamonkey,iceape,xulrunner,firefox,iceweasel,mozilla}-plugin; do
- if test -n "$i"
- then
- echo "Trying to find $i package" >&AS_MESSAGE_LOG_FD
- AC_MSG_CHECKING([for $i >= 1.9.2])
- if $PKG_CONFIG --exists --print-errors "$i >= 1.9.2" 2>&AS_MESSAGE_LOG_FD
- then
- echo "Using $i pkg-config package." >&AS_MESSAGE_LOG_FD
- echo "Using $i package." >&AS_MESSAGE_FD
- found=1
- MOZILLA_CFLAGS=$(eval $PKG_CONFIG --cflags "$i" )
- MOZILLA_LIBS=$(eval $PKG_CONFIG --libs "$i" )
- AC_MSG_RESULT([yes])
- break
- fi
- AC_MSG_RESULT([no])
- fi
- done
- fi
- fi
- AS_IF( [test $found = 1],[
- CPPFLAGS="${CPPFLAGS_save} ${MOZILLA_CFLAGS}"
- MOZILLA_REQUIRED_HEADERS=1
- AC_CHECK_HEADERS(npapi.h,,MOZILLA_REQUIRED_HEADERS=0)
- AC_CHECK_HEADERS(npruntime.h,,MOZILLA_REQUIRED_HEADERS=0,
- [#if HAVE_NPAPI_H
- # include <npapi.h>
- #endif
- ])
- if test "${MOZILLA_REQUIRED_HEADERS}" = "0"; then
- AC_MSG_ERROR([Please install the Firefox development tools; plugin/npapi.h and/or plugin/npruntime.h were not found.])
- fi
- MOZILLA_REQUIRED_HEADERS=
- mozilla=:
- AS_IF([ test "${SYS}" != "mingw32" -a "${SYS}" != "mingwce"],[
- VLC_ADD_CPPFLAGS([mozilla],[-DXP_UNIX])
- AS_IF([ test "${SYS}" != "darwin"],[
- PKG_CHECK_MODULES(XPM, [xpm xt],[
- VLC_ADD_CPPFLAGS([mozilla],[-DMOZ_X11])
- ],[
- AC_MSG_ERROR([Please install the libXpm and libXt development files.])
- ])
- AS_IF([test "${have_xcb_keysyms}" != "yes"], [
- AC_MSG_ERROR([Please install xcb-keysyms from xcb-utils.])
- ])
- ])
- ])
- VLC_ADD_CPPFLAGS([mozilla],[${CPPFLAGS} ${XPM_CFLAGS}])
- VLC_ADD_LIBS([mozilla],[${MOZILLA_LIBS} ${XPM_LIBS}])
- VLC_ADD_PLUGIN([mozilla])
- PLUGINS_BINDINGS="${PLUGINS_BINDINGS} mozilla"
- MOZILLA_CONFIG=
- CPPFLAGS="${CPPFLAGS_save}"
- ],
- [
- AC_PATH_PROGS(MOZILLA_CONFIG,
- [mozilla-config seamonkey-config xulrunner-config],
- [no])
- test "${MOZILLA_CONFIG}" = "no" && AC_MSG_ERROR([Please install the Mozilla development tools (version 1.9.2 or higher) or use --disable-mozilla.])
- ]
- )
- dnl pkg-config failed but we might have found a mozilla-config
- AS_IF( [test ! -z "${MOZILLA_CONFIG}"],[
- if ${MOZILLA_CONFIG} --defines | grep -q 'MOZ_X11=1'; then
- LDFLAGS="${LDFLAGS_save} ${X_LIBS} ${X_PRE_LIBS}"
- AC_CHECK_LIB(Xt,XtStrings,
- [
- VLC_ADD_CPPFLAGS([mozilla],[${X_CFLAGS}])
- VLC_ADD_LIBS([mozilla],[${X_LIBS} ${X_PRE_LIBS} -lXt -lX11 -lSM -lICE -lXpm])
- ],
- [],
- [[${X_LIBS} ${X_PRE_LIBS} -lX11 -lSM -lICE -lXpm]
- ])
- AC_CHECK_HEADERS(X11/xpm.h,,AC_MSG_ERROR([Please install libXpm-devel library for required X11/xpm.h]))
- AS_IF([test "${have_xcb_keysyms}" != "yes"], [
- AC_MSG_ERROR([Please install xcb-keysyms from xcb-utils.])
- ])
- LDFLAGS="${LDFLAGS_save}"
- fi
-
- mozilla=:
- PLUGINS_BINDINGS="${PLUGINS_BINDINGS} mozilla"
- VLC_ADD_CPPFLAGS([mozilla],[[`${MOZILLA_CONFIG} --cflags plugin java`]])
- VLC_ADD_LIBS([mozilla],[`${MOZILLA_CONFIG} --libs plugin`])
- CPPFLAGS="${CPPFLAGS_save} ${CPPFLAGS_mozilla}"
- MOZILLA_REQUIRED_HEADERS=1
- AC_CHECK_HEADERS(mozilla-config.h,,MOZILLA_REQUIRED_HEADERS=0)
- AC_CHECK_HEADERS(npapi.h,,MOZILLA_REQUIRED_HEADERS=0)
- AC_CHECK_HEADERS(npruntime.h,,MOZILLA_REQUIRED_HEADERS=0,
- [#if HAVE_NPAPI_H
- # include <npapi.h>
- #endif
- ])
- if test "${MOZILLA_REQUIRED_HEADERS}" = "0"
- then
- AC_MSG_ERROR([Please install the Mozilla development tools, required headers were not found.])
- fi
- MOZILLA_REQUIRED_HEADERS=
- CPPFLAGS="${CPPFLAGS_save}"
- MOZILLA_SDK_PATH="`${MOZILLA_CONFIG} --prefix`"
- ])
- dnl End of moz_sdk = ""
- ],[
- dnl special case for mingw32
- if test "${SYS}" = "mingw32"
- then
- AC_CHECK_TOOL(CYGPATH, cygpath, "")
- dnl latest gecko sdk does not have an xpcom directory
- if test -d "${with_mozilla_sdk_path}/xpcom"; then
- mozilla_sdk_xpcom="/xpcom"
- fi
- fi
-
- real_mozilla_sdk="`cd ${with_mozilla_sdk_path} 2>/dev/null && pwd`"
- CPPFLAGS="${CPPFLAGS_save} -I${real_mozilla_sdk}/include"
- MOZILLA_REQUIRED_HEADERS=1
- AC_CHECK_HEADERS(npapi.h,,MOZILLA_REQUIRED_HEADERS=0)
- AC_CHECK_HEADERS(npruntime.h,,MOZILLA_REQUIRED_HEADERS=0,
- [#if HAVE_NPAPI_H
- #include <npapi.h>
- #endif
- ])
- if test "${MOZILLA_REQUIRED_HEADERS}" = "0"
- then
- AC_MSG_ERROR([Please install the Mozilla development tools, required headers were not found.])
- fi
- MOZILLA_REQUIRED_HEADERS=
- mozilla=:
- PLUGINS_BINDINGS="${PLUGINS_BINDINGS} mozilla"
- VLC_ADD_CPPFLAGS([mozilla],[-DXPCOM_GLUE -DHAVE_CPP_MODERN_SPECIALIZE_TEMPLATE_SYNTAX -I${real_mozilla_sdk}/include])
- MOZILLA_SDK_PATH="${real_mozilla_sdk}"
-
- if test -n "${CYGPATH}"; then
- real_mozilla_sdk="`${CYGPATH} -w ${real_mozilla_sdk}`"
- fi
- CPPFLAGS="${CPPFLAGS_save}"
- ])
-fi
-AC_LANG_POP(C++)
-AM_CONDITIONAL(BUILD_MOZILLA,${mozilla})