The static CRT (libcmt.lib, as used by default or with -MT) doesn't
work when targeting these API subsets.
Only do this if no cflags for CRT selection have been specified,
to allow users to override this default if the user knows better.
---
configure | 23 +++++++++++++++++++++++
1 file changed, 23 insertions(+)
diff --git a/configure b/configure
index 77eb8f5..541d6ce 100755
--- a/configure
+++ b/configure
@@ -3460,6 +3460,29 @@ if [ "$cpu" != generic ]; then
add_asflags $cpuflags
fi
+# Set the right default MSVC CRT if necessary
+if enabled_any msvc icl && check_cpp_condition stdlib.h
"defined(WINAPI_FAMILY)"; then
+ if check_cpp <<EOF
+#include <winapifamily.h>
+#if WINAPI_FAMILY_PARTITION(WINAPI_PARTITION_DESKTOP)
+#error desktop
+#endif
+EOF
+ then
+ for flag in $CFLAGS; do
+ case $flag in
+ -M[TD]*)
+ crtflag=$flag
+ ;;
+ esac
+ done
+ # If targeting the app/phone subsets, add -MD by default if no -MD/-MT
flags have been specified
+ if [ -z "$crtflag" ]; then
+ add_cflags -MD
+ fi
+ fi
+fi
+
# compiler sanity check
check_exec <<EOF
int main(void){ return 0; }
--
1.8.1.2
_______________________________________________
libav-devel mailing list
[email protected]
https://lists.libav.org/mailman/listinfo/libav-devel