82 lines
2.8 KiB
Diff
Executable File
82 lines
2.8 KiB
Diff
Executable File
From 4969dd6e7b656e92bf1bc921f0cd1af00707e17f Mon Sep 17 00:00:00 2001
|
||
From: Hiroshi Miura <miurahr@linux.com>
|
||
Date: Wed, 7 Feb 2018 10:47:53 +0900
|
||
Subject: [PATCH 2/2] Add CFLAGS for CRT selection and warning supression
|
||
|
||
Signed-off-by: Hiroshi Miura <miurahr@linux.com>
|
||
---
|
||
makefile.vc | 2 +-
|
||
nmake.opt | 42 +++++++++++++++++++++++++++++++++++++++---
|
||
2 files changed, 40 insertions(+), 4 deletions(-)
|
||
|
||
diff --git a/makefile.vc b/makefile.vc
|
||
index 33f1f34..64fb9f3 100644
|
||
--- a/makefile.vc
|
||
+++ b/makefile.vc
|
||
@@ -20,7 +20,7 @@ EPSILON_EXE = epsilon.exe
|
||
|
||
-CFLAGS = /nologo -IC:\OSGeo4W\include -I.\lib -I.\lib\msvc \
|
||
+CFLAGS = /nologo -I$(INSTALLED_ROOT)\include -I.\lib -I.\lib\msvc \
|
||
-I.\src -I..\popt\include \
|
||
- $(OPTFLAGS)
|
||
+ $(OPTFLAGS) $(WARNFLAGS)
|
||
|
||
default: all
|
||
|
||
diff --git a/nmake.opt b/nmake.opt
|
||
index d5a51e2..d8088df 100644
|
||
--- a/nmake.opt
|
||
+++ b/nmake.opt
|
||
@@ -1,9 +1,45 @@
|
||
# Directory tree where EPSILON will be installed.
|
||
+!IFNDEF INSTDIR
|
||
INSTDIR=C:\OSGeo4W
|
||
+!ENDIF
|
||
+
|
||
+# Flags to choose CRT variant to link against (e.g. static: /MT, /MTd, dynamic: /MD, /MDd)
|
||
+!IFNDEF CRT_FLAGS
|
||
+!IFNDEF DEBUG
|
||
+CRT_FLAGS=/MD
|
||
+!ELSE
|
||
+CRT_FLAGS=/MDd
|
||
+!ENDIF
|
||
+!ENDIF
|
||
+
|
||
+# Flags for enforcing PDB use
|
||
+!IFNDEF PDB_FLAGS
|
||
+PDB_FLAGS=/Fdepsilon.pdb
|
||
+!ENDIF
|
||
+
|
||
+# Set flags controlling warnings level, and suppression of some warnings.
|
||
+!IFNDEF WARNFLAGS
|
||
+# 4127: conditional expression is constant
|
||
+# 4251: 'identifier' : class 'type' needs to have dll-interface to be used by clients of class 'type2'
|
||
+# 4275: non – DLL-interface classkey 'identifier' used as base for DLL-interface classkey 'identifier'
|
||
+# 4786: ??????????
|
||
+# 4100: 'identifier' : unreferenced formal parameter
|
||
+# 4245: 'conversion' : conversion from 'type1' to 'type2', signed/unsigned mismatch
|
||
+# 4206: nonstandard extension used : translation unit is empty (only applies to C source code)
|
||
+# 4351: new behavior: elements of array 'array' will be default initialized (needed for https://trac.osgeo.org/gdal/changeset/35593)
|
||
+# 4611: interaction between '_setjmp' and C++ object destruction is non-portable
|
||
+#
|
||
+WARNFLAGS = /W3 /wd4127 /wd4251 /wd4275 /wd4786 /wd4100 /wd4245 /wd4206 /wd4351 /wd4611
|
||
+!ENDIF
|
||
+
|
||
+!IFNDEF OPTFLAGS
|
||
+!IFNDEF DEBUG
|
||
+OPTFLAGS= $(PDB_FLAGS) /nologo $(CRT_FLAGS) /D_CRT_SECURE_NO_WARNINGS /D_CRT_SECURE_NO_DEPRECATE /D_CRT_NONSTDC_NO_DEPRECATE /DNDEBUG
|
||
+!ELSE
|
||
+OPTFLAGS= $(PDB_FLAGS) /nologo $(CRT_FLAGS) /EHsc /D_CRT_SECURE_NO_DEPRECATE /D_CRT_NONSTDC_NO_DEPRECATE /DDEBUG
|
||
+!ENDIF
|
||
+!ENDIF
|
||
|
||
-# Uncomment the first for an optimized build, or the second for debug.
|
||
-OPTFLAGS= /nologo /Ox /fp:precise /W3 /MD /D_CRT_SECURE_NO_WARNINGS
|
||
-#OPTFLAGS= /nologo /Zi /MD /Fdepsilon.pdb
|
||
|
||
# Set the version number for the DLL. Normally we leave this blank since
|
||
# we want software that is dynamically loading the DLL to have no problem
|
||
--
|
||
2.16.1
|
||
|