[vlc-devel] [PATCH] package/win32: use VLC_DEPLOYMENT_TARGET_CFLAGS environment variable to pass CFLAGS
Steve Lhomme
robux4 at ycbcr.xyz
Wed Dec 11 15:24:49 CET 2019
So that Meson doesn't try to pick them.
Similar to 5c76f3478cb038a550de21f6267d57c55c963391 on macos.
---
extras/package/win32/build.sh | 37 ++++++++++++++++++++++++++++++++++-
1 file changed, 36 insertions(+), 1 deletion(-)
diff --git a/extras/package/win32/build.sh b/extras/package/win32/build.sh
index 9607fcfe058..96c567743f9 100755
--- a/extras/package/win32/build.sh
+++ b/extras/package/win32/build.sh
@@ -106,6 +106,34 @@ else
COMPILING_WITH_CLANG=0
fi
+# Write config.mak for contribs
+# Globals:
+# VLC_DEPLOYMENT_TARGET_CFLAGS
+# VLC_DEPLOYMENT_TARGET_CXXFLAGS
+# VLC_DEPLOYMENT_TARGET_LDFLAGS
+write_config_mak()
+{
+ # Flags to be used for C-like compilers (C, C++, Obj-C)
+ local clike_flags="$VLC_DEPLOYMENT_TARGET_CFLAGS"
+
+ # local vlc_cppflags="-arch $ARCH"
+ local vlc_cflags="$clike_flags"
+ local vlc_cxxflags="$VLC_DEPLOYMENT_TARGET_CXXFLAGS $clike_flags"
+ local vlc_objcflags="$clike_flags"
+
+ local vlc_ldflags="$VLC_DEPLOYMENT_TARGET_LDFLAGS"
+
+ echo "Creating makefile..."
+ test -e config.mak && unlink config.mak
+ exec 3>config.mak || return $?
+
+ printf '# This file was automatically generated!\n\n' >&3
+ printf '%s := %s\n' "CFLAGS" "${vlc_cflags}" >&3
+ printf '%s := %s\n' "CXXFLAGS" "${vlc_cxxflags}" >&3
+ printf '%s := %s\n' "OBJCFLAGS" "${vlc_objcflags}" >&3
+ printf '%s := %s\n' "LDFLAGS" "${vlc_ldflags}" >&3
+}
+
info "Building extra tools"
mkdir -p extras/tools
cd extras/tools
@@ -147,6 +175,11 @@ fi
if [ "$RELEASE" != "yes" ]; then
CONTRIBFLAGS="$CONTRIBFLAGS --disable-optim"
fi
+
+# Write config.mak with flags for the build and compiler overrides
+# Set flag to error on partial availability
+write_config_mak
+
${SCRIPT_PATH}/../../../contrib/bootstrap --host=$TRIPLET $CONTRIBFLAGS
# Rebuild the contribs or use the prebuilt ones
@@ -190,7 +223,9 @@ if [ ! -z "$WITH_PDB" ]; then
CONFIGFLAGS="$CONFIGFLAGS --enable-pdb"
fi
-${SCRIPT_PATH}/configure.sh --host=$TRIPLET --with-contrib=../contrib/$TRIPLET $CONFIGFLAGS
+${SCRIPT_PATH}/configure.sh --host=$TRIPLET --with-contrib=../contrib/$TRIPLET $CONFIGFLAGS \
+ CFLAGS="$VLC_DEPLOYMENT_TARGET_CFLAGS -Werror=missing-field-initializers" \
+ CXXFLAGS="$VLC_DEPLOYMENT_TARGET_CXXFLAGS -Werror=missing-field-initializers"
info "Compiling"
make -j$JOBS
--
2.17.1
More information about the vlc-devel
mailing list