diff options
-rw-r--r-- | MSVC_NMake/README.txt | 5 | ||||
-rw-r--r-- | MSVC_NMake/config-msvc.mak | 6 | ||||
-rw-r--r-- | MSVC_NMake/detectenv-msvc.mak | 43 |
3 files changed, 36 insertions, 18 deletions
diff --git a/MSVC_NMake/README.txt b/MSVC_NMake/README.txt index d39fd59..63c021e 100644 --- a/MSVC_NMake/README.txt +++ b/MSVC_NMake/README.txt @@ -46,6 +46,11 @@ PREFIX: Optional. Base directory of where the third-party headers, libraries $(X) is the short version of the Visual Studio used, as follows:
2017: 15
+USE_COMPAT_LIBS: Build the sigc++ DLL and .lib with the filename
+ 'sigc-vc150(d)-3_0' for all builds. This is for
+ compatibility reasons, if re-building dependent code is not
+ convenient, for instance
+
Explanation of options, set by <option>=1:
------------------------------------------
BOOST_DLL: When building the benchmark, link to a DLL build of the Boost
diff --git a/MSVC_NMake/config-msvc.mak b/MSVC_NMake/config-msvc.mak index e00524f..2985437 100644 --- a/MSVC_NMake/config-msvc.mak +++ b/MSVC_NMake/config-msvc.mak @@ -24,10 +24,10 @@ LIBSIGC_INT_HDRS = $(sigc_public_h:/=\) SIGCPP_CFLAGS = $(SIGCPP_BASE_CFLAGS) $(CFLAGS) LIBSIGCPP_CFLAGS = $(SIGCPP_CFLAGS) $(LIBSIGCPP_DEFINES) -# We build sigc-vc$(VSVER)0-$(LIBSIGC_MAJOR_VERSION)_$(LIBSIGC_MINOR_VERSION).dll or -# sigc-vc$(VSVER)0d-$(LIBSIGC_MAJOR_VERSION)_$(LIBSIGC_MINOR_VERSION).dll at least +# We build sigc-vc$(VSVER_LIB)-$(LIBSIGC_MAJOR_VERSION)_$(LIBSIGC_MINOR_VERSION).dll or +# sigc-vc$(VSVER_LIB)d-$(LIBSIGC_MAJOR_VERSION)_$(LIBSIGC_MINOR_VERSION).dll at least -LIBSIGC_LIBNAME = sigc-vc$(VSVER)0$(LIBSIGC_DEBUG_SUFFIX)-$(LIBSIGC_MAJOR_VERSION)_$(LIBSIGC_MINOR_VERSION) +LIBSIGC_LIBNAME = sigc-vc$(VSVER_LIB)$(LIBSIGC_DEBUG_SUFFIX)-$(LIBSIGC_MAJOR_VERSION)_$(LIBSIGC_MINOR_VERSION) LIBSIGC_DLL = vs$(VSVER)\$(CFG)\$(PLAT)\$(LIBSIGC_LIBNAME).dll LIBSIGC_LIB = vs$(VSVER)\$(CFG)\$(PLAT)\$(LIBSIGC_LIBNAME).lib diff --git a/MSVC_NMake/detectenv-msvc.mak b/MSVC_NMake/detectenv-msvc.mak index 29dd53d..dd9a87a 100644 --- a/MSVC_NMake/detectenv-msvc.mak +++ b/MSVC_NMake/detectenv-msvc.mak @@ -79,36 +79,49 @@ _HASH=^# !if ![del $(ERRNUL) /q/f vercl.x vercl.i vercl.vc] !endif +VSVER = 0 +PDBVER = 0 +VSVER_SUFFIX = 0 + !if $(VCVERSION) > 1499 && $(VCVERSION) < 1600 -VSVER = 9 +PDBVER = 9 !elseif $(VCVERSION) > 1599 && $(VCVERSION) < 1700 -VSVER = 10 +PDBVER = 10 !elseif $(VCVERSION) > 1699 && $(VCVERSION) < 1800 -VSVER = 11 +PDBVER = 11 !elseif $(VCVERSION) > 1799 && $(VCVERSION) < 1900 -VSVER = 12 -!elseif $(VCVERSION) > 1899 && $(VCVERSION) < 1910 -VSVER = 14 -!elseif $(VCVERSION) > 1909 && $(VCVERSION) < 1920 +PDBVER = 12 +!elseif $(VCVERSION) > 1899 && $(VCVERSION) < 2000 +PDBVER = 14 +!if $(VCVERSION) > 1909 && $(VCVERSION) < 1920 +VSVER_SUFFIX = 1 VSVER = 15 !elseif $(VCVERSION) > 1919 && $(VCVERSION) < 2000 +VSVER_SUFFIX = 2 VSVER = 16 !else -VSVER = 0 +VSVER = $(PDBVER) +!endif +!else +VSVER = $(PDBVER) +!endif + +!if "$(USE_COMPAT_LIBS)" != "" +!if $(VSVER) > 15 +VSVER_LIB = 150 +!else +VSVER_LIB = $(VSVER)0 +!endif +!else +VSVER_LIB = $(PDBVER)$(VSVER_SUFFIX) !endif !if "$(VSVER)" == "0" MSG = ^ This NMake Makefile set supports Visual Studio^ -9 (2008) through 15 (2017). Your Visual Studio^ +9 (2008) through 16 (2019). Your Visual Studio^ version is not supported. !error $(MSG) -!else -!if $(VSVER) < 15 -PDBVER = $(VSVER) -!else -PDBVER = 14 -!endif !endif VALID_CFGSET = FALSE |