mirror of https://gitee.com/openkylin/gdal.git
1004 lines
35 KiB
Plaintext
1004 lines
35 KiB
Plaintext
# $Id$
|
|
#
|
|
# nmake.opt - main configuration file for NMAKE makefiles.
|
|
#
|
|
# Usage examples (see details below):
|
|
# nmake -f makefile.vc
|
|
# nmake -f makefile.vc MSVC_VER=1900
|
|
# nmake -f makefile.vc MSVC_VER=1900 DEBUG=1
|
|
# nmake -f makefile.vc MSVC_VER=1900 DEBUG=1 ANALYZE=1
|
|
# nmake -f makefile.vc MSVC_VER=1900 DEBUG=1 ANALYZE=1 WITH_PDB=1
|
|
# nmake -f makefile.vc MSVC_VER=1900 WIN64=1
|
|
#
|
|
# Options:
|
|
# DEBUG - set to disable optimizations and link with debug runtimes; also implies WITH_PDB.
|
|
# ANALYZE - set to enable code analysis output.
|
|
# WITH_PDB - set to enable output of PDB files, supported for both debug and release modes.
|
|
# WIN64 - set to target 64-bit architecture.
|
|
#
|
|
###############################################################################
|
|
# For convenience, user may put custom settings in a local settings file
|
|
# named nmake.local, or a name defined by the EXT_NMAKE_OPT option.
|
|
|
|
!IF EXIST("$(GDAL_ROOT)\nmake.local")
|
|
!INCLUDE $(GDAL_ROOT)\nmake.local
|
|
!ENDIF
|
|
|
|
# nmake -f makefile.vc EXT_NMAKE_OPT=mynmake.opt
|
|
!IFDEF EXT_NMAKE_OPT
|
|
!INCLUDE $(EXT_NMAKE_OPT)
|
|
!ENDIF
|
|
|
|
###############################################################################
|
|
# Check version of Visual C++ compiler:
|
|
# nmake -f makefile.vc MSVC_VER=xxxx
|
|
# where xxxx is one of following (older versions no longer supported):
|
|
# 1910 = 15.0(2017)
|
|
# 1900 = 14.0(2015)
|
|
#
|
|
!IFNDEF MSVC_VER
|
|
#assume msvc VS2015.
|
|
MSVC_VER=1900
|
|
!ENDIF
|
|
|
|
###############################################################################
|
|
# Optional use of Visual Leak Detector (VLD) by Dan Moulding, available at
|
|
# http://vld.codeplex.com/
|
|
# Uncomment this line to use VLD in debug configuration only:
|
|
#MSVC_VLD_DIR="C:\Program Files\Visual Leak Detector"
|
|
|
|
###############################################################################
|
|
# Location to install .exe, .dll and python stuff
|
|
# Edit as required. GDAL_HOME is used for convenience here,
|
|
# but this particular relative organization is not mandatory.
|
|
# But the paths *should* be absolute (relative paths mess up in submakefiles).
|
|
|
|
!IFNDEF GDAL_HOME
|
|
GDAL_HOME = "C:\warmerda\bld"
|
|
!ENDIF
|
|
!IFNDEF BINDIR
|
|
BINDIR = "$(GDAL_HOME)\bin"
|
|
!ENDIF
|
|
!IFNDEF PLUGINDIR
|
|
PLUGINDIR = "$(BINDIR)\gdalplugins"
|
|
!ENDIF
|
|
!IFNDEF LIBDIR
|
|
LIBDIR = "$(GDAL_HOME)\lib"
|
|
!ENDIF
|
|
!IFNDEF INCDIR
|
|
INCDIR = "$(GDAL_HOME)\include"
|
|
!ENDIF
|
|
!IFNDEF DATADIR
|
|
DATADIR = "$(GDAL_HOME)\data"
|
|
!ENDIF
|
|
!IFNDEF HTMLDIR
|
|
HTMLDIR = "$(GDAL_HOME)\html"
|
|
!ENDIF
|
|
|
|
# Set this to the installed directory containing python. If you don't
|
|
# have python just let it point to a directory that does not exist (as now).
|
|
!IFNDEF PYDIR
|
|
PYDIR = "C:\Software\Python24"
|
|
!ENDIF
|
|
|
|
# Set the location of your SWIG installation
|
|
!IFNDEF SWIG
|
|
SWIG = swig.exe
|
|
!ENDIF
|
|
|
|
# SWIG Java settings
|
|
!IFNDEF JAVA_HOME
|
|
JAVA_HOME = c:\j2sdk1.4.2_12
|
|
!ENDIF
|
|
!IFNDEF ANT_HOME
|
|
ANT_HOME=c:\programmi\apache-ant-1.7.0
|
|
!ENDIF
|
|
JAVADOC=$(JAVA_HOME)\bin\javadoc
|
|
JAVAC=$(JAVA_HOME)\bin\javac
|
|
JAVA=$(JAVA_HOME)\bin\java
|
|
JAR=$(JAVA_HOME)\bin\jar
|
|
JAVA_INCLUDE=-I$(JAVA_HOME)\include -I$(JAVA_HOME)\include\win32
|
|
|
|
# Compilation flags
|
|
|
|
# Enable code analysis on request
|
|
# http://msdn.microsoft.com/en-us/library/ms173498.aspx
|
|
!IFDEF ANALYZE
|
|
CXX_ANALYZE_FLAGS=/analyze
|
|
!ELSE
|
|
CXX_ANALYZE_FLAGS=
|
|
!ENDIF
|
|
|
|
# Set DEBUG=1 to create a debug build
|
|
!IFNDEF DEBUG
|
|
DEBUG=0
|
|
!ENDIF
|
|
|
|
# Force PDB output for DEBUG mode
|
|
!IF "$(DEBUG)" == "1"
|
|
WITH_PDB=1
|
|
!ELSE IF "$(DEBUG)" != "0"
|
|
!ERROR DEBUG should be set to 0 or 1
|
|
!ENDIF
|
|
|
|
!IFNDEF GDAL_PDB
|
|
GDAL_PDB = $(GDAL_ROOT)\gdal$(VERSION).pdb
|
|
!ENDIF
|
|
|
|
!IFDEF WITH_PDB
|
|
CXX_PDB_FLAGS=/Zi /Fd$(GDAL_PDB)
|
|
!ELSE
|
|
CXX_PDB_FLAGS=
|
|
!ENDIF
|
|
|
|
!IFNDEF OPTFLAGS
|
|
!IF "$(DEBUG)" == "0"
|
|
OPTFLAGS= $(CXX_ANALYZE_FLAGS) $(CXX_PDB_FLAGS) /nologo /MP /MD /EHsc /Ox /FC /D_CRT_SECURE_NO_DEPRECATE /D_CRT_NONSTDC_NO_DEPRECATE /DNDEBUG
|
|
!ELSE
|
|
OPTFLAGS= $(CXX_ANALYZE_FLAGS) $(CXX_PDB_FLAGS) /nologo /MP /MDd /EHsc /FC /D_CRT_SECURE_NO_DEPRECATE /D_CRT_NONSTDC_NO_DEPRECATE /DDEBUG
|
|
!ENDIF
|
|
!ENDIF # OPTFLAGS
|
|
|
|
#
|
|
# 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 = /W4 /wd4127 /wd4251 /wd4275 /wd4786 /wd4100 /wd4245 /wd4206 /wd4351 /wd4611
|
|
|
|
!ENDIF
|
|
|
|
#
|
|
# Set flags controlling availability of SSE
|
|
#
|
|
!IFNDEF SSEFLAGS
|
|
SSEFLAGS = /DHAVE_SSE_AT_COMPILE_TIME
|
|
SSSE3FLAGS = /DHAVE_SSSE3_AT_COMPILE_TIME
|
|
#SSE_ARCH_FLAGS = /arch:SSE
|
|
!ENDIF
|
|
|
|
!IFNDEF AVXFLAGS
|
|
AVXFLAGS = /DHAVE_AVX_AT_COMPILE_TIME
|
|
AVX_ARCH_FLAGS = /arch:AVX
|
|
!ENDIF
|
|
|
|
# The following are extra disables that can be applied to external source
|
|
# not under our control that we wish to use less stringent warnings with.
|
|
!IFNDEF SOFTWARNFLAGS
|
|
SOFTWARNFLAGS= /wd4244 /wd4702 /wd4701 /wd4013 /wd4706 /wd4057 /wd4210 /wd4305
|
|
!ENDIF
|
|
|
|
# Linker debug options
|
|
!IF "$(DEBUG)" == "1"
|
|
LDEBUG= /debug
|
|
!ELSEIFDEF WITH_PDB
|
|
# Ensures that PDB is included in release DLL if so requested
|
|
LDEBUG= /debug /opt:ref /opt:icf
|
|
!ENDIF
|
|
|
|
# Uncomment the following if you are building for 64-bit windows
|
|
# (x64). You'll need to have PATH, INCLUDE and LIB set up for 64-bit
|
|
# compiles.
|
|
#WIN64=YES
|
|
# Capture WIN64=1 if specified in NMAKE command line
|
|
!IFDEF WIN64
|
|
WIN64=YES
|
|
!ENDIF
|
|
|
|
# If you don't want some entry points to have STDCALL conventions,
|
|
# comment out the following and add -DCPL_DISABLE_STDCALL in OPTFLAGS.
|
|
# This option has no effect on 64-bit windows.
|
|
!IFNDEF STDCALL
|
|
STDCALL=YES
|
|
!ENDIF
|
|
|
|
# Version number embedded in DLL name.
|
|
# If GDAL version is X.Y.Z, VERSION = X * 100 + Y
|
|
!IFNDEF VERSION
|
|
VERSION = 300
|
|
!ENDIF
|
|
|
|
# Comment the following out if you want PAM supported disabled
|
|
# by default.
|
|
!IFNDEF PAM_SETTING
|
|
PAM_SETTING=-DPAM_ENABLED
|
|
!ENDIF
|
|
|
|
# Set DLLBUILD=0 to create a static lib instead of a shared lib (.DLL)
|
|
!IFNDEF DLLBUILD
|
|
DLLBUILD=1
|
|
!ENDIF
|
|
|
|
# Enable all OGR formats, or only raster formats? Comment out to disable
|
|
# vector formats.
|
|
!IFNDEF INCLUDE_OGR_FRMTS
|
|
INCLUDE_OGR_FRMTS = YES
|
|
!ENDIF
|
|
|
|
# Enable all GNM formats? Comment out to disable
|
|
# gnm formats.
|
|
!IFNDEF INCLUDE_GNM_FRMTS
|
|
INCLUDE_GNM_FRMTS = YES
|
|
!ENDIF
|
|
|
|
# To be enabled defined to point to setargv.obj from the Visual C++ directory,
|
|
# when you want the utility programs to be able to expand wildcards.
|
|
#SETARGV = "D:\Software\VStudio\VC98\lib\setargv.obj"
|
|
|
|
# PROJ stuff (required dependency: PROJ >= 6)
|
|
#PROJ_INCLUDE = -Id:\install-proj\local\include
|
|
#PROJ_LIBRARY = d:\install-proj\local\lib\proj_6_0.lib
|
|
|
|
# Uncomment to build with libiconv library to support extended character
|
|
# recoding capabilities. GDAL's internal stub implementation supports
|
|
# latin1<->utf-8 translations only.
|
|
# Depending on your libiconv build you may need to set ICONV_CONST macro to
|
|
# const or leave it empty. Take a look on your iconv() declaration in iconv.h.
|
|
# If the second parameter declared as const char** then you need to define
|
|
# ICONV_CONST=const otherwise leave it empty.
|
|
#LIBICONV_DIR = "C:\Program Files\GnuWin32"
|
|
#LIBICONV_INCLUDE = -I$(LIBICONV_DIR)\include
|
|
#LIBICONV_LIBRARY = $(LIBICONV_DIR)\lib\libiconv.lib
|
|
#LIBICONV_CFLAGS = -DICONV_CONST=const
|
|
|
|
# Comment out the following to disable BSB support.
|
|
!IFNDEF BSB_SUPPORTED
|
|
BSB_SUPPORTED = 1
|
|
!ENDIF
|
|
|
|
# Comment out the following to disable ODBC support.
|
|
|
|
!IFNDEF ODBC_SUPPORTED
|
|
ODBC_SUPPORTED = 1
|
|
!ENDIF
|
|
|
|
# Uncomment out the following to enable plugin with SQL Native Client support for MSSQL Bulk Copy.
|
|
#SQLNCLI_VERSION = 11
|
|
#SQLNCLI_DIR = C:\Program Files (x86)\Microsoft SQL Server\$(SQLNCLI_VERSION)0\SDK
|
|
#SQLNCLI_LIB = "$(SQLNCLI_DIR)\Lib\x86\sqlncli$(SQLNCLI_VERSION).lib"
|
|
#SQLNCLI_INCLUDE = "-I$(SQLNCLI_DIR)\Include" -DSQLNCLI_VERSION=$(SQLNCLI_VERSION) -DMSSQL_BCP_SUPPORTED=1
|
|
|
|
# Uncomment out the following to enable plugin with Microsoft ODBC Driver 17 for SQL Server support for MSSQL Bulk Copy.
|
|
#MSODBCSQL_VERSION = 17
|
|
#MSODBCSQL_DIR = C:\Program Files\Microsoft SQL Server\Client SDK\ODBC\$(MSODBCSQL_VERSION)0\SDK
|
|
#MSODBCSQL_LIB = "$(MSODBCSQL_DIR)\Lib\x86\msodbcsql$(SQLNCLI_VERSION).lib"
|
|
#MSODBCSQL_INCLUDE = "-I$(MSODBCSQL_DIR)\Include" -DMSODBCSQL_VERSION=$(MSODBCSQL_VERSION) -DMSSQL_BCP_SUPPORTED=1
|
|
|
|
# Comment out the following to disable JPEG support.
|
|
|
|
!IFNDEF JPEG_SUPPORTED
|
|
JPEG_SUPPORTED = 1
|
|
!ENDIF
|
|
|
|
# This will enable 12bit libjpeg - use only with internal jpeg builds.
|
|
!IFNDEF JPEG12_SUPPORTED
|
|
JPEG12_SUPPORTED = 1
|
|
!ENDIF
|
|
|
|
#if using an external jpeg library uncomment the following lines
|
|
#JPEG_EXTERNAL_LIB = 1
|
|
#JPEGDIR = c:/projects/jpeg-6b
|
|
#JPEG_LIB = $(JPEGDIR)/libjpeg.lib
|
|
|
|
#if using an external png library uncomment the following lines
|
|
#PNG_EXTERNAL_LIB = 1
|
|
#PNGDIR = c:/projects/libpng-1.0.8
|
|
#PNG_LIB = $(PNGDIR)/libpng.lib
|
|
|
|
# if using an external libtiff library
|
|
#TIFF_INC = -Ic:/warmerda/libtiff/libtiff
|
|
#TIFF_LIB = c:/warmerda/libtiff/libtiff/libtiff_i.lib
|
|
# uncomment following line, if you have libtiff version >= 4.0 to
|
|
# enable BigTIFF support
|
|
#TIFF_OPTS= -DBIGTIFF_SUPPORT
|
|
|
|
# if using an external libgeotiff library
|
|
#GEOTIFF_INC = -Ic:/warmerda/libgeotiff -Ic:/warmerda/libgeotiff/libxtiff
|
|
#GEOTIFF_LIB = C:/warmerda/libgeotiff/geotiff_i.lib
|
|
|
|
# Uncomment out the following lines to enable LibKML support.
|
|
#LIBKML_DIR = C:/Dev/libkml
|
|
#LIBKML_INCLUDE = -I$(LIBKML_DIR)/src -I$(LIBKML_DIR)/third_party/boost_1_34_1
|
|
#LIBKML_LIBRARY = $(LIBKML_DIR)/msvc/Release
|
|
#LIBKML_LIBS = $(LIBKML_LIBRARY)/libkmlbase.lib \
|
|
# $(LIBKML_LIBRARY)/libkmlconvenience.lib \
|
|
# $(LIBKML_LIBRARY)/libkmldom.lib \
|
|
# $(LIBKML_LIBRARY)/libkmlengine.lib \
|
|
# $(LIBKML_LIBRARY)/libkmlregionator.lib \
|
|
# $(LIBKML_LIBRARY)/libkmlxsd.lib \
|
|
# $(LIBKML_LIBRARY)/minizip_static.lib \
|
|
# $(LIBKML_DIR)/third_party\expat.win32/libexpat.lib \
|
|
# $(LIBKML_DIR)/third_party\uriparser-0.7.5.win32/release/uriparser.lib \
|
|
# $(LIBKML_DIR)/third_party\zlib-1.2.3.win32/lib/minizip.lib \
|
|
# $(LIBKML_DIR)/third_party\zlib-1.2.3.win32/lib/zlib.lib
|
|
|
|
# Uncomment the following and update to enable ECW read support with the
|
|
# 4.1+ readonly SDK
|
|
#ECWDIR = "c:/Program Files/ERDAS/ERDAS ECW JPEG2000 Read SDK"
|
|
#ECWFLAGS = -DECWSDK_VERSION=41 \
|
|
# -I$(ECWDIR)\include \
|
|
# -I$(ECWDIR)\include/NCSECW/api -I$(ECWDIR)\include/NCSECW/jp2 \
|
|
# -I$(ECWDIR)\include/NCSECW/ecw
|
|
#ECWLIB = $(ECWDIR)\lib\vc90\win32\NCSEcw4_RO.lib \
|
|
# $(ECWDIR)\lib\vc90\win32\NCSUtil4.lib \
|
|
# $(ECWDIR)\lib\vc90\win32\NCScnet4.lib
|
|
|
|
# To add Write support, use the write SDK, change NCSEcw4_RO.lib to
|
|
# NCSEcw4.lib, and add -DHAVE_COMPRESS to ECWFLAGS. The ECWDIR setting will
|
|
# also need some adjustment.
|
|
|
|
# Uncomment the following and update to enable ECW read support with the 5.0 SDK
|
|
#ECWDIR = "c:\Intergraph\ecwsdk5"
|
|
#ECWFLAGS = -DECWSDK_VERSION=50 \
|
|
# -I$(ECWDIR)\include \
|
|
# -I$(ECWDIR)\include/NCSECW/api -I$(ECWDIR)\include/NCSECW/jp2 \
|
|
# -I$(ECWDIR)\include/NCSECW/ecw
|
|
#ECWLIB = $(ECWDIR)\lib\vc90\win32\NCSEcw.lib
|
|
|
|
# To build ECW support as a plugin uncomment the following, and make sure
|
|
# to do "nmake /f makefile.vc plugin" in gdal/frmts/ecw and copy the two
|
|
# resulting DLLs to an appropriate place.
|
|
#ECW_PLUGIN = YES
|
|
|
|
|
|
# Uncomment the following and update to enable JP2Lura driver
|
|
#LURATECH_CFLAGS = -Ic:\jp2_csdk_2.16_win64\include
|
|
#LURATECH_LIB = c:\jp2_csdk_2.16_win64\library\lwf_jp2.lib
|
|
|
|
# To build JP2Lura support as a plugin uncomment the following, and make sure
|
|
# to do "nmake /f makefile.vc plugin" in gdal/frmts/jp2lura and copy the two
|
|
# resulting DLLs to an appropriate place.
|
|
#JP2LURA_PLUGIN = YES
|
|
|
|
|
|
|
|
# Uncomment the following and update to enable ECW support with the 3.3 SDK.
|
|
# Significant adaption may be needed.
|
|
#ECWDIR = C:\warmerda\libecwj2-3.3
|
|
#ECWLIB = $(ECWDIR)\Source\NCSBuildQmake\Debug\libecwj2.lib
|
|
#ECWFLAGS = -DECWSDK_VERSION=33 \
|
|
# -I$(ECWDIR)\include -I$(ECWDIR)/Source/include \
|
|
# /D_MBCS /D_UNICODE /DUNICODE /D_WINDOWS \
|
|
# /DLIBECWJ2 /DWIN32 /D_WINDLL -DNO_X86_MMI
|
|
|
|
# DWG support using the Open Design Alliance Teigha Libraries
|
|
|
|
#TD_BASE = C:\warmerda\pkg\td_vc9
|
|
#TD_FLAGS = -D_TOOLKIT_IN_DLL_
|
|
#TD_INCLUDE = -I$(TD_BASE)\TD\Include -I$(TD_BASE)\TD\Extensions\ExServices
|
|
# The following works for Teigha 4.2.2
|
|
# In TD_INCLUDE, add /D_TOOLKIT_IN_DLL_ if linking against the .dll
|
|
#TD_INCLUDE = -I$(TD_BASE)\Core\Include -I$(TD_BASE)\Core\Extensions\ExServices -I$(TD_BASE)\Dgn\include -I$(TD_BASE)\Dgn\Extensions\ExServices
|
|
#TD_LIBDIR = $(TD_BASE)\lib\vc14dll
|
|
#TD_LIBS = \
|
|
# $(TD_LIBDIR)/TD_Key.lib \
|
|
# $(TD_LIBDIR)/TD_ExamplesCommon.lib \
|
|
# $(TD_LIBDIR)/TD_Db.lib \
|
|
# $(TD_LIBDIR)/TD_DbRoot.lib \
|
|
# $(TD_LIBDIR)/TD_Root.lib \
|
|
# $(TD_LIBDIR)/TD_Ge.lib \
|
|
# $(TD_LIBDIR)/TD_Alloc.lib \
|
|
# $(TD_LIBDIR)/TG_Db.lib \
|
|
# $(TD_LIBDIR)/TG_ExamplesCommon.lib \
|
|
# advapi32.lib
|
|
|
|
# Uncomment to build as a plugin
|
|
#TD_PLUGIN = YES
|
|
|
|
|
|
# Uncomment the following and update to enable OGDI support.
|
|
#OGDIDIR = D:\warmerda\iii\devdir
|
|
#OGDI_INCLUDE = $(OGDIDIR)\include\ogdi
|
|
#OGDIVER = 31
|
|
#OGDILIB = $(OGDIDIR)\lib\$(TARGET)\ogdi$(OGDIVER).lib \
|
|
# $(OGDIDIR)\lib\$(TARGET)\zlib_ogdi$(OGDIVER).lib
|
|
|
|
# Uncomment for Expat support (required for KML, GPX and GeoRSS read support).
|
|
#EXPAT_DIR = "C:\Program Files\Expat 2.0.1"
|
|
#EXPAT_INCLUDE = -I$(EXPAT_DIR)/source/lib
|
|
#EXPAT_LIB = $(EXPAT_DIR)/bin/libexpat.lib
|
|
|
|
# Uncomment for Xerces based GML and ILI support.
|
|
#XERCES_DIR = c:\warmerda\supportlibs\xerces-c_3_1_3
|
|
#XERCES_INCLUDE = -I$(XERCES_DIR)/include -I$(XERCES_DIR)/include/xercesc
|
|
#XERCES_LIB = $(XERCES_DIR)/lib/xerces-c_3.lib
|
|
|
|
# Uncomment the following for Interlis support. Note that a Xercex 3.x
|
|
# is also required (see above). Also, Interlis support only works with
|
|
# Visual Studio.NET or newer, not VC6.
|
|
#ILI_ENABLED = YES
|
|
|
|
# Uncomment for JasPer based JPEG2000 support
|
|
#JASPER_DIR = d:\projects\jasper-1.700.2.uuid
|
|
#JASPER_INCLUDE = -I$(JASPER_DIR)\src\libjasper\include -DJAS_WIN_MSVC_BUILD
|
|
#JASPER_LIB = $(JASPER_DIR)\src\msvc\Win32_Release\libjasper.lib
|
|
# Uncomment the following line if you have patched UUID-enabled version
|
|
# of JasPer from ftp://ftp.remotesensing.org/gdal/
|
|
#JASPER_INCLUDE = $(JASPER_INCLUDE) -DHAVE_JASPER_UUID
|
|
|
|
# Uncomment and adjust paths if you have Kakadu 6.0 or newer
|
|
#
|
|
# Starting with KKDU V7.9.1 (at least), it is possible to generate
|
|
# jp2ak and jpipkak with the 2 Kakadu DLLs instead of object files
|
|
# In such case :
|
|
# o do NOT define KAKOBJDIR
|
|
# o define KAKLIB with BOTH Kakadu DLLs
|
|
#KAKFLAGS=-DKDU_MAJOR_VERSION=7 -DKDU_MINOR_VERSION=9 -DKDU_PATCH_VERSION=1
|
|
#KAKDIR = C:\0_PGH\SRC_CSD\CSD_INTEGRATION\cots\kakadu\download\dev
|
|
#KAKLIB = $(KAKDIR)\lib_x64\kdu_v79R.lib $(KAKDIR)\lib_x64\kdu_a79R.lib
|
|
#KAKSRC = $(KAKDIR)\v7_9_1-01156C
|
|
#KAKOBJDIR = $(KAKDIR)\v7_generated_x86
|
|
KAKADU_7_5_OR_LATER = YES
|
|
#JP2KAK_PLUGIN = YES
|
|
|
|
# Uncomment the following and update to enable NCSA HDF Release 4 support.
|
|
#HDF4_PLUGIN = NO
|
|
#HDF4_DIR = D:\warmerda\HDF41r5
|
|
#HDF4_LIB = /LIBPATH:$(HDF4_DIR)\lib Ws2_32.lib
|
|
#HDF4_INCLUDE = $(HDF4_DIR)\include
|
|
# HDF4 library newer than 4.2.5 has a SDreset_maxopenfiles/SDget_maxopenfiles
|
|
# interface which allows opening many HDF files simultaneously (the max
|
|
# number of files was previously hardcoded and too low, smth. like 32).
|
|
# Uncomment following if your library is newer than 4.2.5.
|
|
#HDF4_HAS_MAXOPENFILES = YES
|
|
|
|
# Uncomment the following and update to enable NCSA HDF Release 5 support.
|
|
#HDF5_PLUGIN = NO
|
|
#HDF5_DIR = c:\warmerda\supportlibs\hdf5\5-164-win
|
|
#HDF5_LIB = $(HDF5_DIR)\dll\hdf5dll.lib
|
|
|
|
# Needed to define H5_BUILT_AS_DYNAMIC_LIB for windows compilation
|
|
# scenarios where it is not exported on the target (non-CMake builds)
|
|
#HDF5_H5_IS_DLL = YES
|
|
|
|
# Uncomment the following and update to enable KEA support.
|
|
#KEA_PLUGIN = NO
|
|
#KEA_CFLAGS = -Ic:\kea\include
|
|
#KEA_LIB = c:\kea\libkea.lib
|
|
|
|
# Uncomment the following for MrSID support. Only MRSID_DIR is required,
|
|
# which may point to a MrSID Raster SDK, Lidar SDK, or the combined SDK, and
|
|
# will auto-configure the mrsid and/or mrsid_lidar drivers as appropriate.
|
|
# Other configuration options can be specified to control specific features
|
|
# that may be available. See comments at the top of frmts/mrsid/nmake.opt
|
|
# for more details.
|
|
#MRSID_DIR = d:\projects\mrsid
|
|
#MRSID_JP2 = YES
|
|
|
|
!IF DEFINED(MRSID_DIR) || DEFINED(MRSID_RASTER_DIR) || DEFINED(MRSID_LIDAR_DIR)
|
|
!IF EXIST(frmts\mrsid\nmake.opt)
|
|
!INCLUDE frmts\mrsid\nmake.opt
|
|
!ENDIF
|
|
!ENDIF
|
|
|
|
# PCIDSK Libraries - default configuration uses internal implementation
|
|
PCIDSK_SETTING=INTERNAL
|
|
# Replace with these to use an external build.
|
|
#PCIDSK_SETTING=EXTERNAL
|
|
#PCIDSK_INCLUDE=-I\warmerda\pcidsk\src
|
|
#PCIDSK_LIB=\warmerda\pcidsk\src\pcidsk.lib
|
|
|
|
# PostGIS Libraries
|
|
#PG_INC_DIR = n:\pkg\libpq_win32\include
|
|
#PG_LIB = n:\pkg\libpq_win32\lib\libpqdll.lib wsock32.lib
|
|
|
|
# MySQL Libraries
|
|
# NOTE: Need /MT instead of /MD, also enable /EHsc switch.
|
|
#MYSQL_INC_DIR = D:\Software\MySQLServer4.1\include
|
|
#MYSQL_LIB = D:\Software\MySQLServer4.1\lib\opt\libmysql.lib advapi32.lib
|
|
|
|
# INGRES Libraries
|
|
# Uncomment the following to enable Ingres format.
|
|
# INGRES_HOME = $(II_SYSTEM)\ingres
|
|
# Uncomment the following if you prefer to build Ingres support as a plugin.
|
|
# INGRES_PLUGIN = YES
|
|
!IFDEF INGRES_HOME
|
|
INGRES_INC_DIR = "$(INGRES_HOME)\files"
|
|
INGRES_LIB = "$(INGRES_HOME)\lib\iilibapi.lib" \
|
|
"$(INGRES_HOME)\lib\iilibutil.lib" \
|
|
"$(INGRES_HOME)\lib\libingres.lib"
|
|
!ENDIF
|
|
|
|
|
|
# SQLite Libraries
|
|
#SQLITE_INC=-IN:\pkg\sqlite-win32
|
|
#SQLITE_LIB=N:\pkg\sqlite-win32\sqlite3_i.lib
|
|
# For spatialite support, try this instead (assuming you grab the libspatialite-amalgamation-2.3.1 and installed it in osgeo4w):
|
|
# The -DSPATIALITE_AMALGAMATION, which cause "spatialite/sqlite3.h" to be included instead of "sqlite3.h" might not be necessary
|
|
# depending on the layout of the include directories. In case of compilation errors, remove it.
|
|
# For RasterLite2 support, add something like -Ic:\install-rl2\include -DHAVE_RASTERLITE2
|
|
#SQLITE_INC=-IC:\osgeo4w\include -DHAVE_SPATIALITE -DSPATIALITE_AMALGAMATION
|
|
# For RasterLite2 support, add something like c:\install-rl2\lib\librasterlite2.lib
|
|
#SQLITE_LIB=C:\osgeo4w\lib\spatialite_i.lib
|
|
# Uncomment following line if libsqlite3 has been compiled with SQLITE_HAS_COLUMN_METADATA=yes
|
|
#SQLITE_HAS_COLUMN_METADATA=yes
|
|
# Uncomment following line if spatialite is 4.1.2 or later
|
|
#SPATIALITE_412_OR_LATER=yes
|
|
|
|
# PCRE Library (REGEXP support for SQLite) for example from http://sourceforge.net/projects/gnuwin32/files/pcre/7.0/pcre-7.0.exe/download
|
|
#PCRE_INC=-I"C:\Program Files\GNUWin32\include" -DHAVE_PCRE
|
|
#PCRE_LIB="C:\Program Files\GNUWin32\lib\pcre.lib"
|
|
|
|
# Informix Data Blade
|
|
#INFORMIXDIR="C:\Program Files\IBM\Informix\Client-SDK"
|
|
#IDB_INC=-I$(INFORMIXDIR)\incl\cpp -I$(INFORMIXDIR)\incl\dmi \
|
|
# -I$(INFORMIXDIR)\incl\esql
|
|
#IDB_LIB=$(INFORMIXDIR)\lib\cpp\libthc++.lib \
|
|
# $(INFORMIXDIR)\lib\dmi\libthdmi.lib $(INFORMIXDIR)\lib\isqlt09a.lib
|
|
|
|
# Uncomment the following and update to enable FME support.
|
|
#FME_DIR = d:\Software\fme
|
|
|
|
# Uncomment the following to enable FITS format support
|
|
#FITS_PLUGIN = NO
|
|
#FITS_INC_DIR = c:\dev32\usr\include\cfitsio
|
|
#FITS_LIB = c:\dev32\usr\lib\cfitsio.lib
|
|
|
|
# Comment out to disable GRIB support.
|
|
GRIB_SETTING=yes
|
|
|
|
# Uncomment the following to enable NetCDF format.
|
|
#NETCDF_PLUGIN = NO
|
|
#NETCDF_SETTING=yes
|
|
#NETCDF_LIB=C:\Software\netcdf\lib\netcdf.lib
|
|
#NETCDF_INC_DIR=C:\Software\netcdf\include
|
|
|
|
# Uncomment the following to add NC4 and HDF4 support
|
|
#NETCDF_HAS_NC4 = yes
|
|
#NETCDF_HAS_HDF4 = yes
|
|
|
|
# Add ORACLE support.
|
|
# Uncomment the following line to enable OCI Oracle Spatial support.
|
|
#ORACLE_HOME = C:/Software/Oracle/Product/10.1.0/db_1
|
|
# Uncomment the following if you prefer to build OCI support as a plugin.
|
|
#OCI_PLUGIN = YES
|
|
|
|
!IFDEF ORACLE_HOME
|
|
OCI_LIB = $(ORACLE_HOME)\oci\lib\msvc\ociw32.lib \
|
|
$(ORACLE_HOME)\oci\lib\msvc\oci.lib
|
|
OCI_INCLUDE = -I$(ORACLE_HOME)\oci\include
|
|
!ENDIF
|
|
|
|
#SDE_ENABLED = YES
|
|
#SDE_VERSION=91
|
|
#SDE_PLUGIN = NO
|
|
#SDE_SDK = C:\arcgis\arcsde
|
|
#SDE_INC = $(SDE_SDK)\include
|
|
#SDE_LIB = $(SDE_SDK)\lib\pe$(SDE_VERSION).lib \
|
|
# $(SDE_SDK)\lib\sde$(SDE_VERSION).lib $(SDE_SDK)\lib\sg$(SDE_VERSION).lib
|
|
|
|
|
|
#FGDB_ENABLED = YES
|
|
#FGDB_PLUGIN = YES
|
|
#FGDB_SDK = C:\Users\rburhum\Desktop\FileGDB_API_VS2008_1_0beta3
|
|
#FGDB_INC = $(FGDB_SDK)\include
|
|
#FGDB_LIB = $(FGDB_SDK)\lib\FileGDBAPI.lib
|
|
|
|
#uncomment to build AmigoCloud as a plugin instead
|
|
#AMIGOCLOUD_PLUGIN = YES
|
|
|
|
|
|
#uncomment to use ArcObjects
|
|
#ARCOBJECTS_ENABLED = YES
|
|
#ARCOBJECTS_PLUGIN = YES
|
|
#ARCOBJECTS_SDK = C:\PROGRA~2\ArcGIS\com
|
|
#ARCOBJECTS_INC = $(ARCOBJECTS_SDK)\..\include
|
|
#
|
|
#Interestingly, since this is a COM application, we don't link against external libraries,
|
|
#but we still need to link the app, so we put the generic user32.lib to force the linking process
|
|
#ARCOBJECTS_LIB = user32.lib
|
|
|
|
|
|
# Uncomment to use libcurl (DLL by default)
|
|
# The cURL library is used for WCS, WMS, GeoJSON, SRS call importFromUrl(), WFS, GFT, CouchDB, /vsicurl/ etc.
|
|
#CURL_DIR=C:\curl-7.15.0
|
|
#CURL_INC = -I$(CURL_DIR)/include
|
|
# Uncomment following line to use libcurl as dynamic library
|
|
#CURL_LIB = $(CURL_DIR)/libcurl_imp.lib wsock32.lib wldap32.lib winmm.lib
|
|
# Uncomment following two lines to use libcurl as static library
|
|
#CURL_LIB = $(CURL_DIR)/libcurl.lib wsock32.lib wldap32.lib winmm.lib
|
|
#CURL_CFLAGS = -DCURL_STATICLIB
|
|
|
|
# Uncomment for DODS / OPeNDAP support
|
|
#DODS_DIR = C:\libdap3.6.2
|
|
#DODS_LIB = $(DODSDIR)\lib\libdapMD.lib
|
|
# Uncomment for libdap >= 3.9
|
|
#DODS_FLAGS = -DLIBDAP_39
|
|
|
|
# Uncomment for GEOS support (GEOS >= 3.1.0 required)
|
|
#GEOS_DIR=C:/warmerda/geos
|
|
#GEOS_CFLAGS = -I$(GEOS_DIR)/capi -I$(GEOS_DIR)/source/headers -DHAVE_GEOS
|
|
#GEOS_LIB = $(GEOS_DIR)/source/geos_c_i.lib
|
|
|
|
# Uncomment for SOSI support
|
|
#SOSI_PLUGIN = YES
|
|
#SOSI_ENABLED = YES
|
|
#SOSI_INC_DIR = e:/sosi
|
|
#SOSI_LIBS = e:/sosi/FYBA.lib e:/sosi/GM.lib e:/sosi/UT.lib
|
|
|
|
# Uncomment for OpenJpeg (release v2.1 or later) support
|
|
#OPENJPEG_ENABLED = YES
|
|
# Note that, contrary to GDAL releases <= 2.2.X, this must point to the
|
|
# directory where openjpeg.h and opj_config.h are set
|
|
#OPENJPEG_CFLAGS = -IC:\openjpeg\include\openjpeg-2.X
|
|
#OPENJPEG_LIB = C:\openjpeg\lib\openjp2.lib
|
|
|
|
#if using an external zlib uncomment the following lines
|
|
#ZLIB_EXTERNAL_LIB = 1
|
|
#ZLIB_INC = -IC:\projects\zlib
|
|
#ZLIB_LIB = C:\projects\lib\Release\zlib.lib
|
|
|
|
# Uncomment for PDF support, and update version numbers (poppler 0.23 or later required)
|
|
#POPPLER_ENABLED = YES
|
|
#POPPLER_CFLAGS = -Ie:/kde/include -Ie:/kde/include/poppler
|
|
#POPPLER_MAJOR_VERSION = 0
|
|
#POPPLER_MINOR_VERSION = 69
|
|
#POPPLER_LIBS = e:/kde/lib/poppler.lib e:/kde/lib/freetype.lib e:/kde/lib/liblcms-1.lib advapi32.lib gdi32.lib
|
|
|
|
# Uncomment for PDF support
|
|
#PODOFO_ENABLED = YES
|
|
#PODOFO_CFLAGS = -Ie:/podofo-svn/install/include -Ie:/podofo-svn/install/include/podofo
|
|
#PODOFO_LIBS = e:/podofo-svn/install/lib/podofo.lib E:/release-1500-dev/release-1500/lib/freetype239.lib gdi32.lib
|
|
|
|
# Uncomment for PDF support with PDFium
|
|
#
|
|
# Copyright (C) 2015 Klokan Technologies GmbH (http://www.klokantech.com/)
|
|
# Author: Martin Mikita <martin.mikita@klokantech.com>, xmikit00 @ FIT VUT Brno
|
|
#
|
|
# Pdfium can be built from the win_gdal_build branch at https://github.com/rouault/pdfium that
|
|
# has the following patch to ensure /MD (MultiThreadedDLL) linking consistent with GDAL one.
|
|
# Build script from PDFium is available at https://github.com/rouault/pdfium/tree/build
|
|
#
|
|
#diff --git a/build/standalone.gypi b/build/standalone.gypi
|
|
#index ecf849b..0e567e4 100644
|
|
#--- a/build/standalone.gypi
|
|
#+++ b/build/standalone.gypi
|
|
#@@ -100,7 +100,8 @@
|
|
# ['component=="shared_library"', {
|
|
# 'RuntimeLibrary': '2', #/MD
|
|
# }, {
|
|
#- 'RuntimeLibrary': '0', #/MT
|
|
#+ #'RuntimeLibrary': '0', #/MT
|
|
#+ 'RuntimeLibrary': '2', #/MD
|
|
# }],
|
|
# ],
|
|
#
|
|
#PDFIUM_ENABLED = YES
|
|
#PDFIUM_CFLAGS = -Ie:/pdfium/ -Ie:/pdfium/public
|
|
#PDFIUM_LIB_DIR = e:/pdfium/build/Release/lib
|
|
#PDFIUM_LIBS = $(PDFIUM_LIB_DIR)/pdfium.lib $(PDFIUM_LIB_DIR)/bigint.lib $(PDFIUM_LIB_DIR)/fdrm.lib $(PDFIUM_LIB_DIR)/formfiller.lib $(PDFIUM_LIB_DIR)/fpdfapi.lib $(PDFIUM_LIB_DIR)/fpdfdoc.lib $(PDFIUM_LIB_DIR)/fpdftext.lib $(PDFIUM_LIB_DIR)/freetype.lib $(PDFIUM_LIB_DIR)/fxcodec.lib $(PDFIUM_LIB_DIR)/fxcrt.lib $(PDFIUM_LIB_DIR)/fxedit.lib $(PDFIUM_LIB_DIR)/fxge.lib $(PDFIUM_LIB_DIR)/pdfwindow.lib $(PDFIUM_LIB_DIR)/fx_agg.lib $(PDFIUM_LIB_DIR)/fx_lcms2.lib $(PDFIUM_LIB_DIR)/fx_libjpeg.lib $(PDFIUM_LIB_DIR)/fx_libopenjpeg.lib $(PDFIUM_LIB_DIR)/fx_zlib.lib gdi32.lib kernel32.lib advapi32.lib
|
|
|
|
# Build PDF driver as plugin
|
|
#PDF_PLUGIN = NO
|
|
|
|
# Uncomment for LZMA TIFF support
|
|
#LZMA_CFLAGS = -IC:/gdal_trunk/xz-5.0.0-windows/include
|
|
#LZMA_LIBS = C:/gdal_trunk/xz-5.0.0-windows/bin_i486/liblzma.lib
|
|
|
|
# Uncomment for ZSTD TIFF support
|
|
#ZSTD_CFLAGS = -IC:/install-zstd/include
|
|
#ZSTD_LIBS = C:/install-zstd/lib/libzstd.lib
|
|
|
|
# Uncomment for TileDB support
|
|
#TILEDB_ENABLED = YES
|
|
#TILEDB_CFLAGS = -IC:/install-tiledb/dist/include
|
|
#TILEDB_LIBS = C:/install-tiledb/dist/lib/libtiledb.lib
|
|
|
|
# Uncomment for WEBP support
|
|
#WEBP_ENABLED = YES
|
|
#WEBP_CFLAGS = -IE:/libwebp-0.1-windows/dev/Include
|
|
#WEBP_LIBS = e:/libwebp-0.1-windows/dev/lib/libwebp_a.lib
|
|
|
|
# Uncomment for libxml2 support (for cpl_xml_validate.cpp routines, used optionally by the GML driver)
|
|
#LIBXML2_INC = -Iz:\home\even\release-1500-dev\release-1500\include
|
|
#LIBXML2_LIB = z:\home\even\release-1500-dev\release-1500\lib\libxml2.lib
|
|
|
|
# Uncomment for freexl support
|
|
#
|
|
# Note: Currently there is no MSVC makefile to build freexl.
|
|
# Here's the procedure I've followed (from root of freexl source tree)
|
|
# cl /c src/freexl.c /Iheaders /IE:\release-1500-dev\release-1500\include /DDLL_EXPORT
|
|
# link /dll E:\release-1500-dev\release-1500\lib\iconv.lib freexl.obj /out:freexl.dll /implib:freexl_i.lib
|
|
#
|
|
#FREEXL_CFLAGS = -Ie:/freexl-1.0.0a/headers
|
|
#FREEXL_LIBS = e:/freexl-1.0.0a/freexl_i.lib
|
|
|
|
# Uncomment for libgta support
|
|
#
|
|
#GTA_CFLAGS = -IC:/gdal_trunk/libgta-1.0.0-w32/include -IC:/gdal_trunk/libgta-1.0.0-w32/include/gta
|
|
#GTA_LIBS = C:/gdal_trunk/libgta-1.0.0-w32/lib/libgta.dll.a
|
|
|
|
# Uncomment for MongoDB support
|
|
# This configuration is valid for a libmongoclient built as a DLL with: scons.bat --32 --dynamic-windows --sharedclient --prefix=c:\users\even\dev\mongo-client-install --cpppath=c:\users\even\dev\boost_1_55_0_32bit --libpath=c:\users\even\dev\boost_1_55_0_32bit\lib32-msvc-10.0 install
|
|
#MONGODB_PLUGIN = NO
|
|
#MONGODB_INC = c:/users/even/dev/mongo-client-install/include
|
|
# Boost library names must be edited to reflect the actual MSVC and Boost versions
|
|
#BOOST_INC = c:/users/even/dev/boost_1_55_0_32bit
|
|
#BOOST_LIB_PATH= c:\users\even\dev\boost_1_55_0_32bit\lib32-msvc-10.0
|
|
#MONGODB_LIBS = c:/users/even/dev/mongo-client-install/lib/mongoclient.lib $(BOOST_LIB_PATH)\libboost_thread-vc100-mt-1_55.lib $(BOOST_LIB_PATH)\libboost_system-vc100-mt-1_55.lib $(BOOST_LIB_PATH)\libboost_date_time-vc100-mt-1_55.lib $(BOOST_LIB_PATH)\libboost_chrono-vc100-mt-1_55.lib
|
|
|
|
# For a static build of mongoclient, only building the driver as a plugin succeeded
|
|
# The libmongoclient_s.lib file had to be renamed without the _s prefix to enable successful linking
|
|
# It was built with: c:\Python27\Scripts\scons.bat --32 --prefix=c:\users\even\dev\mongo-client-install --cpppath=c:\users\even\dev\boost_1_55_0_32bit --libpath=c:\users\even\dev\boost_1_55_0_32bit\lib32-msvc-10.0 install
|
|
# MONGODB_PLUGIN = YES
|
|
# MONGODB_INC = c:/users/even/dev/mongo-client-install/include
|
|
# MONGODB_CFLAGS = -DSTATIC_LIBMONGOCLIENT
|
|
# BOOST_INC = c:/users/even/dev/boost_1_55_0_32bit
|
|
# BOOST_LIB_PATH= c:\users\even\dev\boost_1_55_0_32bit\lib32-msvc-10.0
|
|
# MONGODB_LIBS = c:/users/even/dev/mongo-client-install/lib/libmongoclient.lib $(BOOST_LIB_PATH)\libboost_thread-vc100-mt-1_55.lib $(BOOST_LIB_PATH)\libboost_thread-vc100-mt-s-1_55.lib $(BOOST_LIB_PATH)\libboost_system-vc100-mt-1_55.lib $(BOOST_LIB_PATH)\libboost_system-vc100-mt-s-1_55.lib $(BOOST_LIB_PATH)\libboost_date_time-vc100-mt-1_55.lib $(BOOST_LIB_PATH)\libboost_date_time-vc100-mt-s-1_55.lib $(BOOST_LIB_PATH)\libboost_chrono-vc100-mt-1_55.lib $(BOOST_LIB_PATH)\libboost_chrono-vc100-mt-s-1_55.lib $(BOOST_LIB_PATH)\libboost_regex-vc100-mt-s-1_55.lib /nodefaultlib:msvcprt /nodefaultlib:libcmt
|
|
|
|
# Uncomment for MongoDBv3 support
|
|
# Uncomment following line if plugin is preferred
|
|
#MONGODBV3_PLUGIN = YES
|
|
#BOOST_INC=E:/boost_1_69_0
|
|
#MONGOCXXV3_CFLAGS = -IE:/dev/install-mongocxx-3.4.0/include/mongocxx/v_noabi -IE:/dev/install-mongocxx-3.4.0/include/bsoncxx/v_noabi
|
|
#MONGOCXXV3_LIBS = E:/dev/install-mongocxx-3.4.0/lib/mongocxx.lib E:/dev/install-mongocxx-3.4.0/lib/bsoncxx.lib
|
|
|
|
# QHull configuration. By default use internal libqhull.
|
|
# QHULL_SETTING can be set to INTERNAL, EXTERNAL or NO
|
|
# For external qhull, use qhull 2012
|
|
!IFNDEF QHULL_SETTING
|
|
QHULL_SETTING = INTERNAL
|
|
!ENDIF
|
|
# To be defined if QHULL_SETTING=EXTERNAL
|
|
# QHULL_INC = -I....
|
|
|
|
# Cryptopp stuff.
|
|
# Make sure cryptopp is compiled with /MD ( Properties | Configuration properties | C/C++ | Code Generation | Runtime Library: Multi-threaded DLL (/MD))
|
|
# The headers file must be in $(CRYPTOPP_INC)/cryptopp (the /cryptopp part must not be in the following variable then)
|
|
# CRYPTOPP_INC = -Ic:/install-cryptopp-x64/include
|
|
#
|
|
# Define USE_ONLY_CRYPTODLL_ALG is running against cryptopp.dll, but not if statically linking
|
|
# USE_ONLY_CRYPTODLL_ALG=YES
|
|
#
|
|
# When linking against the DLL:
|
|
# CRYPTOPP_LIB = c:/install-cryptopp-x64/lib/cryptopp.lib
|
|
#
|
|
# When linking against the static lib:
|
|
# CRYPTOPP_LIB = c:/install-cryptopp-x64/lib/cryptlib.lib
|
|
|
|
# OpenSSL stuff (needed if using curl in multithreaded way, with OpenSSL backend)
|
|
# OPENSSL_INC = -Ic:/install-openssl/include
|
|
# OPENSSL_LIB = c:/instal-openssl/lib/ssleay32.lib c:/instal-openssl/lib/libeay32.lib crypt32.lib
|
|
|
|
# Comment out to disable MRF support.
|
|
MRF_SETTING=yes
|
|
|
|
# Any extra libraries needed on this platform?
|
|
ADD_LIBS =
|
|
|
|
# Binding list. One or several in the following list
|
|
# csharp, java, python
|
|
#BINDINGS=java python
|
|
|
|
# Comment out the following if you want to build with Python support, but
|
|
# you don't have Numeric Python installed (with include files). Numeric
|
|
# integration may not work. This only appears to the old generation
|
|
# bindings.
|
|
#HAVE_NUMPY=1
|
|
|
|
# Set HAVE_LERC=0 to disable LERC support
|
|
!IFNDEF HAVE_LERC
|
|
HAVE_LERC=1
|
|
!ENDIF
|
|
|
|
# Comment out the following if you want to build JPEGLS with CHARLS support
|
|
#CHARLS_INC=-IE:\work\GIS\gdal\supportlibs\charls\include\
|
|
#CHARLS_LIB=e:\work\GIS\gdal\supportlibs\charls\bin\Release\x86\CharLS.lib
|
|
# Comment out for API 2.x:
|
|
#CHARLS_FLAGS = -DCHARLS_2
|
|
|
|
########### END OF STUFF THAT NORMALLY NEEDS TO BE UPDATED ##################
|
|
|
|
|
|
# Location of MS Data Access SDK (not really needed anymore I think)
|
|
#MSDASDK = D:\Software\MDAC_2.6
|
|
|
|
GDAL_DLL = gdal$(VERSION).dll
|
|
|
|
INC = -I$(GDAL_ROOT)\port -I$(GDAL_ROOT)\ogr -I$(GDAL_ROOT)\gcore \
|
|
-I$(GDAL_ROOT)\alg -I$(GDAL_ROOT)\ogr\ogrsf_frmts -I$(GDAL_ROOT)\gnm -I$(GDAL_ROOT)\gnm\gnm_frmts -I$(GDAL_ROOT)\apps
|
|
|
|
!IFDEF MSVC_VLD_DIR
|
|
MSVC_VLD_FLAGS=-DMSVC_USE_VLD=1 -I$(MSVC_VLD_DIR)\include
|
|
!IFDEF WIN64
|
|
MSVC_VLD_LIB=/LIBPATH:$(MSVC_VLD_DIR)/lib/Win64
|
|
!ELSE
|
|
MSVC_VLD_LIB=/LIBPATH:$(MSVC_VLD_DIR)/lib/Win32
|
|
!ENDIF
|
|
!ENDIF
|
|
|
|
!IFDEF INCLUDE_GNM_FRMTS
|
|
!IFNDEF GNM_FLAG
|
|
GNM_FLAG = -DGNM_ENABLED
|
|
!ENDIF
|
|
!ENDIF
|
|
|
|
#LINKER_FLAGS = /NODEFAULTLIB:LIBC
|
|
LINKER_FLAGS = $(EXTRA_LINKER_FLAGS) $(MSVC_VLD_LIB) $(LDEBUG)
|
|
|
|
|
|
CFLAGS = $(OPTFLAGS) $(WARNFLAGS) $(USER_DEFS) $(SSEFLAGS) $(SSSE3FLAGS) $(INC) $(AVXFLAGS) $(EXTRAFLAGS) $(OGR_FLAG) $(GNM_FLAG) $(MSVC_VLD_FLAGS) -DGDAL_COMPILATION
|
|
CPPFLAGS = $(CFLAGS) -DNOMINMAX
|
|
MAKE = nmake /nologo
|
|
|
|
!IFNDEF CC
|
|
CC = cl
|
|
!ENDIF
|
|
|
|
INSTALL = xcopy /y /r /d /f /I
|
|
|
|
CPLLIB = $(GDAL_ROOT)/port/cpl.lib
|
|
|
|
!IF "$(DLLBUILD)" == "1"
|
|
GDALLIB = $(GDAL_ROOT)/gdal_i.lib
|
|
!ELSE
|
|
GDALLIB = $(GDAL_ROOT)/gdal.lib
|
|
!ENDIF
|
|
|
|
!IFDEF ODBC_SUPPORTED
|
|
# legacy_stdio_definitions.lib : https://connect.microsoft.com/VisualStudio/feedback/details/1134693/vs-2015-ctp-5-c-vsnwprintf-s-and-other-functions-are-not-exported-in-appcrt140-dll-breaking-linkage-of-static-libraries
|
|
ODBCLIB = legacy_stdio_definitions.lib odbc32.lib odbccp32.lib user32.lib
|
|
!ENDIF
|
|
|
|
!IF DEFINED(MRSID_DIR) || DEFINED(MRSID_RASTER_DIR) || DEFINED(MRSID_LIDAR_DIR)
|
|
!IF "$(MRSID_PLUGIN)" != "YES"
|
|
MRSID_LIB_LINK = $(MRSID_LIB)
|
|
!ELSE
|
|
MRSID_LIB_LINK=
|
|
!ENDIF
|
|
!ENDIF
|
|
|
|
!IFDEF ECWDIR
|
|
!IF "$(ECW_PLUGIN)" != "YES"
|
|
ECW_LIB_LINK= $(ECWLIB)
|
|
!ELSE
|
|
ECW_LIB_LINK=
|
|
!ENDIF
|
|
!ENDIF
|
|
|
|
!IFDEF LURATECH_CFLAGS
|
|
!IF "$(JP2LURA_PLUGIN)" != "YES"
|
|
LURATECH_LIB_LINK= $(LURATECH_LIB)
|
|
!ELSE
|
|
LURATECH_LIB_LINK=
|
|
!ENDIF
|
|
!ENDIF
|
|
|
|
!IFDEF KAKDIR
|
|
!IF "$(JP2KAK_PLUGIN)" != "YES"
|
|
KAK_LIB_LINK= $(KAKLIB)
|
|
!ELSE
|
|
KAK_LIB_LINK=
|
|
!ENDIF
|
|
!ENDIF
|
|
|
|
!IFDEF FITS_LIB
|
|
!IF "$(FITS_PLUGIN)" != "YES"
|
|
FITS_LIB_LINK = $(FITS_LIB)
|
|
!ELSE
|
|
FITS_LIB_LINK =
|
|
!ENDIF
|
|
!ENDIF
|
|
|
|
!IFDEF POPPLER_LIBS
|
|
!IF "$(PDF_PLUGIN)" != "YES"
|
|
PDF_LIB_LINK = $(POPPLER_LIBS)
|
|
!ELSE
|
|
PDF_LIB_LINK =
|
|
!ENDIF
|
|
!ENDIF
|
|
|
|
!IFDEF PODOFO_LIBS
|
|
!IF "$(PDF_PLUGIN)" != "YES"
|
|
PDF_LIB_LINK = $(PODOFO_LIBS)
|
|
!ELSE
|
|
PDF_LIB_LINK =
|
|
!ENDIF
|
|
!ENDIF
|
|
|
|
!IFDEF PDFIUM_LIBS
|
|
!IF "$(PDF_PLUGIN)" != "YES"
|
|
PDF_LIB_LINK = $(PDFIUM_LIBS)
|
|
!ELSE
|
|
PDF_LIB_LINK =
|
|
!ENDIF
|
|
!ENDIF
|
|
|
|
!IFDEF NETCDF_LIB
|
|
!IF "$(NETCDF_PLUGIN)" != "YES"
|
|
NETCDF_LIB_LINK = $(NETCDF_LIB)
|
|
!ELSE
|
|
NETCDF_LIB_LINK =
|
|
!ENDIF
|
|
!ENDIF
|
|
|
|
!IFDEF HDF4_LIB
|
|
!IF "$(HDF4_PLUGIN)" != "YES"
|
|
HDF4_LIB_LINK = $(HDF4_LIB)
|
|
!ELSE
|
|
HDF4_LIB_LINK =
|
|
!ENDIF
|
|
!ENDIF
|
|
|
|
!IFDEF HDF5_LIB
|
|
!IF "$(HDF5_PLUGIN)" != "YES"
|
|
HDF5_LIB_LINK = $(HDF5_LIB)
|
|
!ELSE
|
|
HDF5_LIB_LINK =
|
|
!ENDIF
|
|
!ENDIF
|
|
|
|
!IFDEF KEA_LIB
|
|
!IF "$(KEA_PLUGIN)" != "YES"
|
|
KEA_LIB_LINK = $(KEA_LIB)
|
|
!ELSE
|
|
KEA_LIB_LINK =
|
|
!ENDIF
|
|
!ENDIF
|
|
|
|
!IFDEF FGDB_LIB
|
|
!IF "$(FGDB_PLUGIN)" != "YES"
|
|
FGDB_LIB_LINK = $(FGDB_LIB)
|
|
!ELSE
|
|
FGDB_LIB_LINK =
|
|
!ENDIF
|
|
!ENDIF
|
|
|
|
!IFDEF MONGODB_INC
|
|
!IF "$(MONGODB_PLUGIN)" != "YES"
|
|
MONGODB_LIB_LINK = $(MONGODB_LIBS)
|
|
!ELSE
|
|
MONGODB_LIB_LINK =
|
|
!ENDIF
|
|
!ENDIF
|
|
|
|
!IFDEF MONGOCXXV3_CFLAGS
|
|
!IF "$(MONGODBV3_PLUGIN)" != "YES"
|
|
MONGODBV3_LIB_LINK = $(MONGOCXXV3_LIBS)
|
|
!ELSE
|
|
MONGODBV3_LIB_LINK =
|
|
!ENDIF
|
|
!ENDIF
|
|
|
|
!IFDEF XERCES_DIR
|
|
NAS_ENABLED = YES
|
|
!ENDIF
|
|
|
|
!IFDEF TD_LIBS
|
|
!IF "$(TD_PLUGIN)" != "YES"
|
|
DWG_LIB_LINK = $(TD_LIBS)
|
|
!ELSE
|
|
DWG_LIB_LINK =
|
|
!ENDIF
|
|
!ENDIF
|
|
|
|
# Under win64, symbols for function names lack the underscore prefix
|
|
# present on win32. Also the STDCALL calling convention is not used.
|
|
!IFDEF WIN64
|
|
!UNDEF STDCALL
|
|
!ELSE
|
|
SYM_PREFIX=_
|
|
!ENDIF
|
|
|
|
EXTERNAL_LIBS = $(OGDILIB) $(XERCES_LIB) $(EXPAT_LIB) $(OCI_LIB) $(PG_LIB) \
|
|
$(KAK_LIB_LINK) $(ECW_LIB_LINK) $(LURATECH_LIB_LINK) $(HDF4_LIB_LINK) $(FME_LIB) $(MRSID_LIB_LINK) \
|
|
$(FITS_LIB_LINK) $(JPEG_LIB) $(NETCDF_LIB_LINK) $(PROJ4_LIB) \
|
|
$(GEOTIFF_LIB) $(TIFF_LIB) $(PROJ_LIBRARY) $(SQLITE_LIB) \
|
|
$(MYSQL_LIB) $(GEOS_LIB) $(HDF5_LIB_LINK) $(KEA_LIB_LINK) $(SDE_LIB) $(ARCOBJECTS_LIB) $(DWG_LIB_LINK) \
|
|
$(IDB_LIB) $(CURL_LIB) $(DODS_LIB) $(PCIDSK_LIB) \
|
|
$(ODBCLIB) $(JASPER_LIB) $(PNG_LIB) $(ZLIB_LIB) $(ADD_LIBS) $(OPENJPEG_LIB) \
|
|
$(MRSID_LIDAR_LIB) $(LIBKML_LIBS) $(SOSI_LIBS) $(PDF_LIB_LINK) $(LZMA_LIBS) $(ZSTD_LIBS) \
|
|
$(LIBICONV_LIBRARY) $(WEBP_LIBS) $(TILEDB_LIBS) $(FGDB_LIB_LINK) $(FREEXL_LIBS) $(GTA_LIBS) \
|
|
$(INGRES_LIB) $(LIBXML2_LIB) $(PCRE_LIB) $(MONGODB_LIB_LINK) $(MONGODBV3_LIB_LINK) $(CRYPTOPP_LIB) $(OPENSSL_LIB) $(CHARLS_LIB) ws2_32.lib \
|
|
kernel32.lib psapi.lib
|