# DEP, ASLR, NO SEH
LDFLAGS="${LDFLAGS} -Wl,--nxcompat -Wl,--no-seh -Wl,--dynamicbase"
- VLC_ADD_LIBS([libvlccore],[-lwinmm])
- VLC_ADD_LDFLAGS([vlc],[-mwindows])
- VLC_ADD_LIBS([win32text],[-lgdi32])
AC_CHECK_PROGS(U2D, [unix2dos todos], unix2dos)
ac_default_prefix="`pwd`/_win32"
DESTDIR="`pwd`/_win32/"
dnl
dnl checks for mingw
AS_IF([test "${SYS}" = "mingw32"], [
+
dnl Check for broken versions of mingw-runtime compatability library
AC_MSG_CHECKING(for broken mingw-runtime)
AC_PREPROC_IFELSE([AC_LANG_SOURCE([
AC_MSG_RESULT([present])
AC_MSG_ERROR([LibVLC requires mingw-runtime version 3.15 or higher, or mingw-w64 version 3.0 or higher!])
])
+
dnl force use of mingw provided c99 *printf over msvcrt
CPPFLAGS="${CPPFLAGS} -D__USE_MINGW_ANSI_STDIO=1"
-dnl Check for the need to include the mingwex lib for mingw32
+ dnl Add WinMainCRTStartup entry point to show it's a WinMain application
+ VLC_ADD_LDFLAGS([vlc],[-mwindows])
+
+ dnl Check for the need to include the mingwex lib for mingw32
VLC_SAVE_FLAGS
AC_CHECK_LIB(mingwex,opendir,
AC_CHECK_LIB(mingw32,opendir,,
)
VLC_RESTORE_FLAGS
-dnl Check for fnative-struct or mms-bitfields support for mingw32
+ dnl Check for fnative-struct or mms-bitfields support for mingw32
VLC_SAVE_FLAGS
CFLAGS="${CFLAGS} -mms-bitfields"
CXXFLAGS="${CXXFLAGS} -mms-bitfields"
[Build targetted for Windows Store apps (default disabled)]))
vlc_winstore_app=0
-AS_IF([test "${SYS}" = "mingw32" -a "${enable_winstore_app}" = "yes"], [
+AS_IF([test "${SYS}" = "mingw32"],[
+ AS_IF([test "${enable_winstore_app}" = "yes"], [
vlc_winstore_app=1
- VLC_ADD_LIBS([libvlccore], [-lole32 -lruntimeobject])
+ VLC_ADD_LIBS([libvlccore], [-lole32 -lruntimeobject])
+ ],[
+ VLC_ADD_LIBS([win32text],[-lgdi32])
+ VLC_ADD_LIBS([libvlccore],[-lwinmm])
])
+ ])
AC_DEFINE_UNQUOTED(VLC_WINSTORE_APP, ${vlc_winstore_app}, [Define to 1 if you want to build for Windows Store apps])
AM_CONDITIONAL([HAVE_WINSTORE], [test "$vlc_winstore_app" = "1"])
dnl Check for usual libc functions
AC_CHECK_DECLS([nanosleep],,,[#include <time.h>])
-AC_CHECK_FUNCS([daemon fcntl fstatvfs fork getenv getpwuid_r isatty lstat memalign mmap openat pread posix_fadvise posix_madvise setlocale stricmp strnicmp strptime uselocale pthread_cond_timedwait_monotonic_np pthread_condattr_setclock])
+AC_CHECK_FUNCS([daemon fcntl fstatvfs fork getenv getpwuid_r isatty lstat memalign mmap open_memstream openat pread posix_fadvise posix_madvise setlocale stricmp strnicmp strptime uselocale pthread_cond_timedwait_monotonic_np pthread_condattr_setclock])
AC_REPLACE_FUNCS([atof atoll dirfd fdopendir flockfile fsync getdelim getpid gmtime_r lldiv localtime_r nrand48 poll posix_memalign rewind setenv strcasecmp strcasestr strdup strlcpy strndup strnlen strsep strtof strtok_r strtoll swab tdestroy strverscmp])
AC_CHECK_FUNCS(fdatasync,,
[AC_DEFINE(fdatasync, fsync, [Alias fdatasync() to fsync() if missing.])
#if HAVE_POLL
# include <poll.h>
#elif defined (_WIN32)
+# define _WIN32_WINNT 0x502
# include <winsock2.h>
#endif
])
AC_SUBST(GNUGETOPT_LIBS)
AC_CHECK_LIB(m,cos,[
- VLC_ADD_LIBS([adjust wave ripple psychedelic gradient a52tofloat32 dtstofloat32 x264 goom noise grain scene chorus_flanger freetype swscale postproc equalizer spatializer param_eq samplerate freetype mpc qt4 compressor headphone_channel_mixer normvol audiobargraph_a audiobargraph_v mono colorthres extract ball hotkeys mosaic gaussianblur x262 x26410b hqdn3d anaglyph oldrc ncurses oldmovie glspectrum],[-lm])
+ VLC_ADD_LIBS([adjust wave ripple psychedelic gradient a52tofloat32 dtstofloat32 x264 goom noise grain scene chorus_flanger freetype swscale postproc equalizer spatializer param_eq samplerate freetype mpc qt4 compressor headphone_channel_mixer normvol audiobargraph_a audiobargraph_v mono colorthres extract ball hotkeys mosaic gaussianblur x262 x26410b hqdn3d anaglyph oldrc ncurses oldmovie glspectrum smooth],[-lm])
LIBM="-lm"
], [
LIBM=""
dnl Check for various optimization flags
AS_IF([test "${enable_optimizations}" != "no"], [
- dnl -O4 and -O3 only in production builds
+ dnl -O3 only in production builds
AS_IF([test "${enable_debug}" = "no"], [
VLC_SAVE_FLAGS
- CFLAGS="${CFLAGS} -O4"
- CXXFLAGS="${CXXFLAGS} -O4"
- OBJCFLAGS="${OBJCFLAGS} -O4"
- AC_CACHE_CHECK([if $CC accepts -O4], [ac_cv_c_o4], [
+ CFLAGS="${CFLAGS} -O3"
+ CXXFLAGS="${CXXFLAGS} -O3"
+ OBJCFLAGS="${OBJCFLAGS} -O3"
+ AC_CACHE_CHECK([if $CC accepts -O3], [ac_cv_c_o3], [
AC_COMPILE_IFELSE([AC_LANG_PROGRAM()], [
- ac_cv_c_o4=yes
+ ac_cv_c_o3=yes
], [
- ac_cv_c_o4=no
+ ac_cv_c_o3=no
])
])
- AS_IF([test "${ac_cv_c_o4}" = "no"], [
- VLC_RESTORE_FLAGS
- CFLAGS="${CFLAGS} -O3"
- CXXFLAGS="${CXXFLAGS} -O3"
- OBJCFLAGS="${OBJCFLAGS} -O3"
- AC_CACHE_CHECK([if $CC accepts -O3], [ac_cv_c_o3], [
- AC_COMPILE_IFELSE([AC_LANG_PROGRAM()], [
- ac_cv_c_o3=yes
- ], [
- ac_cv_c_o3=no
- ])
- ])
- AS_IF([test "${ac_cv_c_o3}" = "no"], [VLC_RESTORE_FLAGS])
- ])
+ AS_IF([test "${ac_cv_c_o3}" = "no"], [VLC_RESTORE_FLAGS])
])
dnl Check for -ffast-math
CPPFLAGS="${CPPFLAGS} ${SWSCALE_CFLAGS}"
CFLAGS="${CFLAGS} ${SWSCALE_CFLAGS}"
AC_CHECK_HEADERS(libswscale/swscale.h)
+ AC_CHECK_HEADERS(libavutil/avutil.h)
VLC_ADD_PLUGIN([swscale])
VLC_ADD_LIBS([swscale],[$SWSCALE_LIBS])
VLC_ADD_CFLAGS([swscale],[$SWSCALE_CFLAGS])
])
AM_CONDITIONAL([HAVE_ARIBB24], [test x"${have_aribb24}" = x"yes"])
+dnl
+dnl ARIB B25
+dnl
+PKG_ENABLE_MODULES_VLC([ARIBB25], [aribcam], [aribb25 >= 0.2.6], [ARIB STD-B25], [auto])
+
dnl
dnl kate decoder plugin
dnl
],[AC_MSG_WARN([library fontconfig not found. Styles will be disabled in freetype])])
fi
else
- VLC_ADD_LIBS([freetype],[-lgdi32])
+ AS_IF([test "$vlc_winstore_app" != "1"],[
+ VLC_ADD_LIBS([freetype],[-lgdi32])
+ ])
fi
dnl fribidi support
[ --enable-android-surface Android Surface video output module (default disabled)])
if test "${enable_android_surface}" = "yes"; then
VLC_ADD_PLUGIN([android_surface])
- VLC_ADD_PLUGIN([android_opaque])
+ VLC_ADD_PLUGIN([android_window])
fi
dnl
dnl
m4_pushdef([protobuf_lite_version], 2.5.0)
AC_ARG_VAR(PROTOC, [protobuf compiler])
-AC_PATH_PROGS(PROTOC, protoc, no )
+AC_PATH_PROGS(PROTOC, protoc, no)
PKG_WITH_MODULES([CHROMECAST],[protobuf-lite >= protobuf_lite_version], [
AS_IF([test "x${PROTOC}" != "xno"], [
VLC_ADD_PLUGIN([stream_out_chromecast])
])
QT_PATH="$(eval $PKG_CONFIG --variable=exec_prefix Qt5Core)"
QT_HOST_PATH="$(eval $PKG_CONFIG --variable=host_bins Qt5Core)"
- AC_PATH_PROGS(MOC, [moc-qt5 moc], moc, [${QT_HOST_PATH} ${QT_PATH}/bin ${CONTRIB_DIR}/bin])
- AC_PATH_PROGS(RCC, [rcc-qt5 rcc], rcc, [${QT_HOST_PATH} ${QT_PATH}/bin ${CONTRIB_DIR}/bin])
- AC_PATH_PROGS(UIC, [uic-qt5 uic], uic, [${QT_HOST_PATH} ${QT_PATH}/bin ${CONTRIB_DIR}/bin])
+ AC_PATH_PROGS(MOC, [moc-qt5 moc], moc, ["${QT_HOST_PATH}" "${QT_PATH}/bin" "${CONTRIB_DIR}/bin"])
+ AC_PATH_PROGS(RCC, [rcc-qt5 rcc], rcc, ["${QT_HOST_PATH}" "${QT_PATH}/bin" "${CONTRIB_DIR}/bin"])
+ AC_PATH_PROGS(UIC, [uic-qt5 uic], uic, ["${QT_HOST_PATH}" "${QT_PATH}/bin" "${CONTRIB_DIR}/bin"])
], [
PKG_CHECK_MODULES([QT], [QtCore QtGui >= 4.6.0],, [
AS_IF([test -n "${enable_qt}"],[
enable_qt="no"
])
QT_PATH="$(eval $PKG_CONFIG --variable=exec_prefix QtCore)"
- AC_PATH_PROGS(MOC, [moc-qt4 moc], moc, [${QT_PATH}/bin ${CONTRIB_DIR}/bin])
+ AC_PATH_PROGS(MOC, [moc-qt4 moc], moc, ["${QT_PATH}/bin" "${CONTRIB_DIR}/bin"])
AC_PATH_PROG(RCC, rcc, rcc, [${QT_PATH}/bin ${CONTRIB_DIR}/bin])
- AC_PATH_PROGS(UIC, [uic-qt4 uic], uic, [${QT_PATH}/bin ${CONTRIB_DIR}/bin])
+ AC_PATH_PROGS(UIC, [uic-qt4 uic], uic, ["${QT_PATH}/bin" "${CONTRIB_DIR}/bin"])
])
])
AS_IF([test "${enable_qt}" != "no"], [