summaryrefslogtreecommitdiff
path: root/configure
diff options
context:
space:
mode:
authorAaron Levinson <alevinsn@aracnet.com>2017-04-13 02:38:02 -0700
committerHendrik Leppkes <h.leppkes@gmail.com>2017-04-13 23:57:31 +0200
commitbceb3d0f8621dd4dcdab2148e29d1473165d9cb6 (patch)
tree13dc7e7cd220a65d88e20105254cac28ab8ca18b /configure
parente688ca102ed304e88d1441141e6e8a74e18aa227 (diff)
Support building C++ files with MSVC
Made appropriate changes to be able to successfully build C++ files using a Visual C++ build on Windows. Based on an earlier patch by Kyle Schwarz. Comments: -- compat/w32pthreads.h: Made appropriate changes to w32pthreads.h to get it to build when it is being included in a C++ file and built with Visual C++. This is mostly a copy of Kyle Schwarz's patch as described above. -- configure: a) Now calling set_ccvars CXX to cause the various CXX_ variables to be setup properly. For example, with MSVC (Microsoft Visual C++), this causes CXX_O to be set to -Fo$@ instead of using the default value. The default value does not work with Visual C++. This change will also have the impact of correcting CXX_O (and possibly CXX_C) for other compilers, although this is really only relevant for the Intel compiler, in addition to MSVC. b) Now using cl for the C++ compiler for the MSVC toolchain. This is currently only relevant for building the Blackmagic/Decklink-related files under avdevice. Signed-off-by: Hendrik Leppkes <h.leppkes@gmail.com>
Diffstat (limited to 'configure')
-rwxr-xr-xconfigure4
1 files changed, 4 insertions, 0 deletions
diff --git a/configure b/configure
index d01cb59d6d..98f7828489 100755
--- a/configure
+++ b/configure
@@ -3640,8 +3640,10 @@ case "$toolchain" in
cl_major_ver=$(cl 2>&1 | sed -n 's/.*Version \([[:digit:]]\{1,\}\)\..*/\1/p')
if [ -z "$cl_major_ver" ] || [ $cl_major_ver -ge 18 ]; then
cc_default="cl"
+ cxx_default="cl"
else
cc_default="c99wrap cl"
+ cxx_default="c99wrap cl"
fi
ld_default="$source_path/compat/windows/mslink"
nm_default="dumpbin -symbols"
@@ -3852,6 +3854,7 @@ msvc_common_flags(){
-lz) echo zlib.lib ;;
-lavicap32) echo vfw32.lib user32.lib ;;
-lx264) echo libx264.lib ;;
+ -lstdc++) ;;
-l*) echo ${flag#-l}.lib ;;
-LARGEADDRESSAWARE) echo $flag ;;
-L*) echo -libpath:${flag#-L} ;;
@@ -4197,6 +4200,7 @@ cflags_noopt=$_cflags_noopt
add_cflags $_flags $_cflags
cc_ldflags=$_ldflags
set_ccvars CC
+set_ccvars CXX
probe_cc hostcc "$host_cc"
host_cflags_filter=$_flags_filter