forked from AuroraMiddleware/gtk
2d3c0e9e7d
We now support up to Visual Studio 2019, not just 2015, so don't confuse people here...
81 lines
2.2 KiB
Makefile
81 lines
2.2 KiB
Makefile
# Common NMake Makefile module for checking the build environment
|
|
# This can be copied from $(glib_srcroot)\build\win32 for GNOME items
|
|
# that support MSVC builds and introspection under MSVC, and can be used
|
|
# for building test programs as well.
|
|
|
|
# Check to see we are configured to build with MSVC (MSDEVDIR, MSVCDIR or
|
|
# VCINSTALLDIR) or with the MS Platform SDK (MSSDK or WindowsSDKDir)
|
|
!if !defined(VCINSTALLDIR) && !defined(WINDOWSSDKDIR)
|
|
MSG = ^
|
|
This Makefile is only for Visual Studio 2008 and later.^
|
|
You need to ensure that the Visual Studio Environment is properly set up^
|
|
before running this Makefile.
|
|
!error $(MSG)
|
|
!endif
|
|
|
|
ERRNUL = 2>NUL
|
|
_HASH=^#
|
|
|
|
!if ![echo VCVERSION=_MSC_VER > vercl.x] \
|
|
&& ![echo $(_HASH)if defined(_M_IX86) >> vercl.x] \
|
|
&& ![echo PLAT=Win32 >> vercl.x] \
|
|
&& ![echo $(_HASH)elif defined(_M_AMD64) >> vercl.x] \
|
|
&& ![echo PLAT=x64 >> vercl.x] \
|
|
&& ![echo $(_HASH)endif >> vercl.x] \
|
|
&& ![cl -nologo -TC -P vercl.x $(ERRNUL)]
|
|
!include vercl.i
|
|
!if ![echo VCVER= ^\> vercl.vc] \
|
|
&& ![set /a $(VCVERSION) / 100 - 6 >> vercl.vc]
|
|
!include vercl.vc
|
|
!endif
|
|
!endif
|
|
!if ![del $(ERRNUL) /q/f vercl.x vercl.i vercl.vc]
|
|
!endif
|
|
|
|
!if $(VCVERSION) > 1499 && $(VCVERSION) < 1600
|
|
VSVER = 9
|
|
!elseif $(VCVERSION) > 1599 && $(VCVERSION) < 1700
|
|
VSVER = 10
|
|
!elseif $(VCVERSION) > 1699 && $(VCVERSION) < 1800
|
|
VSVER = 11
|
|
!elseif $(VCVERSION) > 1799 && $(VCVERSION) < 1900
|
|
VSVER = 12
|
|
!elseif $(VCVERSION) > 1899 && $(VCVERSION) < 1910
|
|
VSVER = 14
|
|
!elseif $(VCVERSION) > 1909 && $(VCVERSION) < 1920
|
|
VSVER = 15
|
|
!elseif $(VCVERSION) > 1919 && $(VCVERSION) < 2000
|
|
VSVER = 16
|
|
!else
|
|
VSVER = 0
|
|
!endif
|
|
|
|
!if "$(VSVER)" == "0"
|
|
MSG = ^
|
|
This NMake Makefile set supports Visual Studio^
|
|
9 (2008) through 16 (2019). Your Visual Studio^
|
|
version is not supported.
|
|
!error $(MSG)
|
|
!endif
|
|
|
|
VALID_CFGSET = FALSE
|
|
!if "$(CFG)" == "release" || "$(CFG)" == "debug" || "$(CFG)" == "Release" || "$(CFG)" == "Debug"
|
|
VALID_CFGSET = TRUE
|
|
!endif
|
|
|
|
# We want debugging symbols logged for all builds,
|
|
# using .pdb files for release builds
|
|
CFLAGS_BASE = /Zi
|
|
|
|
!if "$(CFG)" == "release" || "$(CFG)" == "Release"
|
|
CFLAGS_ADD = /MD /O2 $(CFLAGS_BASE)
|
|
!else
|
|
CFLAGS_ADD = /MDd /Od $(CFLAGS_BASE)
|
|
!endif
|
|
|
|
!if "$(PLAT)" == "x64"
|
|
LDFLAGS_ARCH = /machine:x64
|
|
!else
|
|
LDFLAGS_ARCH = /machine:x86
|
|
!endif
|