X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=configure;h=0d40a927f071091623ff2ebb48abb0a0aec05b57;hb=c01bf42117b811a0469f9f6c374f4a0daa98716d;hp=741f6d69e87dcb787bd4caa7ba0279d2917fc7d7;hpb=3d972062c8a37d1a19586e2351e889b0a70beb40;p=x264 diff --git a/configure b/configure index 741f6d69..0d40a927 100755 --- a/configure +++ b/configure @@ -373,7 +373,7 @@ NL=" # list of all preprocessor HAVE values we can define CONFIG_HAVE="MALLOC_H ALTIVEC ALTIVEC_H MMX ARMV6 ARMV6T2 NEON BEOSTHREAD POSIXTHREAD WIN32THREAD THREAD LOG2F SWSCALE \ LAVF FFMS GPAC AVS GPL VECTOREXT INTERLACED CPU_COUNT OPENCL THP LSMASH X86_INLINE_ASM AS_FUNC INTEL_DISPATCHER \ - MSA MMAP" + MSA MMAP WINRT" # parse options @@ -693,10 +693,15 @@ case $host_cpu in fi elif [ "$SYS" = WINDOWS -o "$SYS" = CYGWIN ]; then ASFLAGS="$ASFLAGS -f win64" - # only the GNU toolchain is inconsistent in prefixing function names with _ - [ $compiler = GNU ] && cc_check "" "-S" && grep -q "_main:" conftest && ASFLAGS="$ASFLAGS -DPREFIX" - [ $compiler = GNU ] && LDFLAGS="$LDFLAGS -Wl,--dynamicbase,--nxcompat,--tsaware" - [ $compiler = GNU ] && RCFLAGS="--target=pe-x86-64 $RCFLAGS" + if [ $compiler = GNU ]; then + # only the GNU toolchain is inconsistent in prefixing function names with _ + cc_check "" "-S" && grep -q "_main:" conftest && ASFLAGS="$ASFLAGS -DPREFIX" + cc_check "" "-Wl,--high-entropy-va" && LDFLAGS="$LDFLAGS -Wl,--high-entropy-va" + LDFLAGS="$LDFLAGS -Wl,--dynamicbase,--nxcompat,--tsaware" + LDFLAGSCLI="$LDFLAGSCLI -Wl,--image-base,0x140000000" + SOFLAGS="$SOFLAGS -Wl,--image-base,0x180000000" + RCFLAGS="--target=pe-x86-64 $RCFLAGS" + fi else ASFLAGS="$ASFLAGS -f elf64" fi @@ -768,6 +773,21 @@ if [ $SYS = WINDOWS ]; then if ! rc_check "0 RCDATA {0}" ; then RC="" fi + + if cpp_check "winapifamily.h" "" "!WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)" ; then + [ $compiler = CL ] || die "WinRT requires MSVC" + define HAVE_WINRT + CFLAGS="$CFLAGS -MD" + LDFLAGS="$LDFLAGS -appcontainer" + if ! cpp_check "" "" "defined(_WIN32_WINNT) && _WIN32_WINNT >= 0x0603" ; then + die "_WIN32_WINNT must be defined to at least 0x0603 (Windows 8.1) for WinRT" + elif cpp_check "" "" "_WIN32_WINNT >= 0x0A00" ; then + # Universal Windows Platform (Windows 10) + LDFLAGS="$LDFLAGS -lWindowsApp" + fi + cli="no" + opencl="no" + fi fi log_msg "x264 configure script" @@ -976,6 +996,16 @@ if [ "$SYS" = "LINUX" -a \( "$ARCH" = "X86" -o "$ARCH" = "X86_64" \) ] && cc_che define HAVE_THP fi +if [ "$cli" = "no" ] ; then + avs="no" + lavf="no" + ffms="no" + gpac="no" + lsmash="no" + mp4="no" + swscale="no" +fi + if [ "$swscale" = "auto" ] ; then swscale="no" if ${cross_prefix}pkg-config --exists libswscale 2>/dev/null; then @@ -1364,7 +1394,7 @@ if [ "$shared" = "yes" ]; then grep "extern.*x264" ${SRCPATH}/x264.h | sed -e "s/.*\(x264\w*\)\W.*/\1 DATA/;" >> x264.def else echo 'IMPLIBNAME=libx264.dll.a' >> config.mak - echo "SOFLAGS=-shared -Wl,--out-implib,\$(IMPLIBNAME) -Wl,--enable-auto-image-base $SOFLAGS" >> config.mak + echo "SOFLAGS=-shared -Wl,--out-implib,\$(IMPLIBNAME) $SOFLAGS" >> config.mak fi elif [ "$SYS" = "MACOSX" ]; then echo "SOSUFFIX=dylib" >> config.mak