GDAL_ROOT = /mnt/gmirror/ports/graphics/gdal/work/gdal-1.4.4 top_builddir = $(GDAL_ROOT) # # the library can be built by the native build or with the help of libtool # HAVE_LIBTOOL = yes LIBTOOL = $(SHELL) /usr/local/bin/libtool ifeq ($(HAVE_LIBTOOL),yes) LIBTOOL_COMPILE = $(LIBTOOL) --mode=compile LIBTOOL_LINK = $(LIBTOOL) --mode=link LIBTOOL_INSTALL = $(LIBTOOL) --mode=install LIBTOOL_FINISH = $(LIBTOOL) --mode=finish --silent LIBTOOL_CLEAN = $(LIBTOOL) --mode=clean else LIBTOOL_FINISH = /usr/bin/true endif CC = $(LIBTOOL_COMPILE) cc CXX = $(LIBTOOL_COMPILE) c++ LD = $(LIBTOOL_LINK) c++ RM = $(LIBTOOL_CLEAN) /bin/rm -f *.lo INSTALL = $(LIBTOOL_INSTALL) $(GDAL_ROOT)/install-sh -c INSTALL_LIB = $(LIBTOOL_INSTALL) $(GDAL_ROOT)/install-sh -c INSTALL_DATA = $(GDAL_ROOT)/install-sh -c -m 0644 INSTALL_DIR = $(GDAL_ROOT)/install-sh -d #Flags to build optimized relese version CXX_OPTFLAGS = -fno-common C_OPTFLAGS = -fno-common # Flags to build debug version CXX_DBGFLAGS = -g -DDEBUG C_DBGFLAGS = -g -DDEBUG # Flags to build profiling version CXX_PROFFLAGS = -g3 -pg -DDEBUG C_PROFFLAGS = -g3 -pg -DDEBUG LIBS = -ljasper -lhdf5 -lungif -ljpeg -ltiff -lpng -lnetcdf -lgrass5 -lz -lm -ldl $(KAK_LIBS) $(DWG_LIBS) $(SDE_LIB) $(CURL_LIB) $(IDB_LIB) PYTHON_INCLUDES = -I/usr/local/include/python2.3 -I/usr/local/include/python2.3 PYTHON_LIBS = -XCClinker -framework -XCClinker Python $(LIBS) PYTHON_CFLAGS = $(OPT) -UHAVE_NUMPY PYTHON = /usr/local/bin/python2.3 PYTHON_DEV = yes PY_LD_SHARED = $(LD_SHARED) PY_SO_EXT = $(SO_EXT) # Next Generation SWIG bindings BINDINGS = HAVE_OGDI = no OGR_ENABLED = yes OSX_FRAMEWORK_PREFIX = /Library/Frameworks/GDAL.framework OSX_VERSION_FRAMEWORK_PREFIX = ${OSX_FRAMEWORK_PREFIX}/Versions/1.4 prefix = exec_prefix = ${prefix} INST_PREFIX = ${prefix} INST_INCLUDE = ${prefix}/include INST_DATA = ${prefix}/share/gdal INST_LIB = ${exec_prefix}/lib INST_BIN = ${exec_prefix}/bin INST_PYMOD = /usr/local/lib/python2.3/site-packages INST_DOCS = ${prefix}/doc INST_MAN = ${prefix}/man # # Whether we use debug flags, or optimization is determined by # the CFG environment variable. Set to debug for debug builds. # This is similar to the OGDI builds. # ifneq (,$(findstring debug,$(CFG))) C_ODFLAGS = $(C_DBGFLAGS) CXX_ODFLAGS = $(CXX_DBGFLAGS) endif ifneq (,$(findstring gprof,$(CFG))) C_ODFLAGS = $(CXX_PROFFLAGS) CXX_ODFLAGS = $(C_PROFFLAGS) LNK_FLAGS = -pg endif ifeq ($(CFG),) C_ODFLAGS = $(C_OPTFLAGS) CXX_ODFLAGS = $(CXX_OPTFLAGS) endif CPPFLAGS = -I$(GDAL_ROOT)/port CFLAGS = $(C_ODFLAGS) $(USER_DEFS) CXXFLAGS = $(CXX_ODFLAGS) $(USER_DEFS) RANLIB = ranlib SO_EXT = LD_SHARED = EXE = ifeq ($(notdir $(LD_SHARED)),true) HAVE_LD_SHARED = no else HAVE_LD_SHARED = yes endif GDAL_INCLUDE = -I$(GDAL_ROOT)/port -I$(GDAL_ROOT)/gcore \ -I$(GDAL_ROOT)/alg \ -I$(GDAL_ROOT)/ogr -I$(GDAL_ROOT)/ogr/ogrsf_frmts # libtool targets and help variables LIBGDAL := libgdal.la LIBGDAL_CURRENT := 12 LIBGDAL_REVISION := 4 LIBGDAL_AGE := 11 # native build targets and variables GDAL_VER = 1.4.4 # version info GDAL_VERSION_MAJOR = 1 GDAL_VERSION_MINOR = 4 GDAL_VERSION_REV = 4 GDAL_LIB = $(GDAL_ROOT)/libgdal.a GDAL_SLIB = $(GDAL_ROOT)/libgdal.$(SO_EXT) GDAL_SLIB_LINK = -L$(GDAL_ROOT) -lgdal # Mac OS X Framework definition MACOSX_FRAMEWORK = no # # OGR/PostgreSQL support. # HAVE_OGR_PG = no PG_INC = # # MySQL support. # HAVE_MYSQL = no MYSQL_LIB = MYSQL_INC = LIBS += $(MYSQL_LIB) # # HDF4 Support. # HDF4_INCLUDE = -I$(GDAL_ROOT)/ogr # # HDF5 Support. # HAVE_HDF5 = yes HDF5_INCLUDE = # # DODS Include file location # DODS_INC = ifeq ($(DODS_INC),) HAVE_DODS = no else HAVE_DODS = yes endif # # SQLite # SQLITE_INC = HAVE_SQLITE = no # # JPEG2000 via Kakadu Support. # KAKDIR = ifneq ($(KAKDIR),) ifeq ($(HAVE_LIBTOOL),yes) include $(GDAL_ROOT)/frmts/jp2kak/jp2kak.lst KAK_LIBS = $(KAK_OBJ) endif endif # # JPEG-2000 Support via JasPer library. # HAVE_JASPER = yes JASPER_INCLUDE = -I../libjasper/include JASPER_FLAGS = # # MrSID support via LizardTech's DSDK # MRSID_FLAGS = MRSID_INCLUDE = # # Xerces C++ XML Parser for GML. # HAVE_XERCES = no XERCES_INCLUDE = # # Oracle Spatial Support # HAVE_OCI = no OCI_INCLUDE = # GEOS Support HAVE_GEOS = GEOS_CFLAGS = # GRASS Support GRASS_SETTING = libgrass GRASS_INCLUDE = GRASS_GISBASE = HAVE_GRASS = no # # SDE # HAVE_SDE = no SDE_LIB = SDE_INC = # # Curl # CURL_SETTING = yes CURL_LIB = -L/usr/local/lib -lcurl -rpath=/usr/lib:/usr/local/lib -L/usr/local/lib -lssl -lcrypto -lssl -lcrypto -lz CURL_INC = -I/usr/local/include # # DWGdirect Library # DWGDIRECT = DWG_PLT = ifneq ($(DWGDIRECT),) DWG_LIBDIR = $(DWGDIRECT)/lib/$(DWG_PLT) DWG_LIBS = $(DWG_LIBDIR)/DD_$(DWG_PLT)_ModelerGeometry.a \ $(DWG_LIBDIR)/DD_$(DWG_PLT)_AcisRenderer.a \ $(DWG_LIBDIR)/DD_$(DWG_PLT)_Br.a \ $(DWG_LIBDIR)/DD_$(DWG_PLT)_AcisBuilder.a \ $(DWG_LIBDIR)/DD_$(DWG_PLT)_Db.a \ $(DWG_LIBDIR)/DD_$(DWG_PLT)_Gs.a \ $(DWG_LIBDIR)/DD_$(DWG_PLT)_SpatialIndex.a \ $(DWG_LIBDIR)/DD_$(DWG_PLT)_Gi.a \ $(DWG_LIBDIR)/DD_$(DWG_PLT)_Ge.a \ $(DWG_LIBDIR)/DD_$(DWG_PLT)_Root.a \ $(DWG_LIBDIR)/DD_$(DWG_PLT)_FT.a \ $(DWG_LIBDIR)/DD_$(DWG_PLT)_Alloc.a HAVE_DWGDIRECT = yes else DWG_LIBS = HAVE_DWGDIRECT = no endif # # "Panorama" GIS support. # HAVE_PANORAMA = no PANORAMA_INC = # # Informix DataBlade support # HAVE_IDB = no IDB_INC = IDB_LIB = # # FMEObjects # ifeq (,) HAVE_FME = no FME_INCLUDE = else HAVE_FME = yes FME_INCLUDE = -I/fmeobjects/cpp endif # PCRaster support PCRASTER_SETTING = internal OGDI_INCLUDE = PNG_SETTING = external JPEG_SETTING = external TIFF_SETTING = external GEOTIFF_SETTING = internal GIF_SETTING = external FITS_SETTING = no OGDI_SETTING = no ODBC_SETTING = no # PGeo driver is built-in when ODBC is available PGEO_SETTING = no NETCDF_SETTING = yes LIBZ_SETTING = external # # PROJ.4 stuff # PROJ_STATIC = no ifeq ($(PROJ_STATIC),yes) PROJ_FLAGS = -DPROJ_STATIC endif PROJ_INCLUDE = GDAL_LIBS = $(GDAL_LIB) ifeq ($(OGR_ENABLED),yes) GDAL_LIBS := $(GDAL_LIB) $(OCI_LIB) $(GDAL_LIBS) CPPFLAGS := -DOGR_ENABLED $(CPPFLAGS) endif # # Note these codes have to exactly match the format directory names, # and their uppercase form should be the format portion of the # format registration entry point. eg. gdb -> GDALRegister_GDB(). # GDAL_FORMATS = gxf gtiff hfa aigrid aaigrid ceos ceos2 iso8211 xpm \ sdts raw dted mem jdem envisat elas fit vrt usgsdem l1b \ nitf bmp pcidsk airsar rs2 ilwis rmf rik leveller sgi \ idrisi \ wcs bsb jpeg2000 hdf5 gif jpeg png netcdf pcraster grass # # CONFIG_LIBS is what local program should link against, and CONFIG_LIBS_INS # is what will be emitted into the gdal-config script that is installed # globally. # ifeq ($(HAVE_LIBTOOL), yes) CONFIG_LIBS = $(GDAL_ROOT)/$(LIBGDAL) CONFIG_LIBS_INS = -L$(INST_LIB) -lgdal EXE_DEP_LIBS = $(GDAL_ROOT)/$(LIBGDAL) SO_EXT = la else ifeq ($(HAVE_LD_SHARED),yes) CONFIG_LIBS = $(GDAL_SLIB_LINK) $(LIBS) CONFIG_LIBS_INS = -L$(INST_LIB) -lgdal EXE_DEP_LIBS = $(GDAL_SLIB) else CONFIG_LIBS = $(GDAL_LIBS) $(LIBS) CONFIG_LIBS_INS = $(foreach LF,$(GDAL_LIBS),$(INST_LIB)/$(notdir $(LF)))\ $(LIBS) EXE_DEP_LIBS = $(GDAL_LIB) endif endif # HAVE_LIBTOOL # # generic library rules # # # gdal and ogr low level drivers use the following default rules in order to # populate the ../o/ directory with all object and library object files # O_OBJ = $(foreach file,$(OBJ),../o/$(file)) ../o/%.o: %.c $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $< ../o/%.o: %.cpp $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c -o $@ $< %.o: %.c $(CC) $(CFLAGS) $(CPPFLAGS) -c -o $@ $< %.o: %.cpp $(CXX) $(CXXFLAGS) $(CPPFLAGS) -c -o $@ $< # # default rules for handling subdirectories # %-target: $(MAKE) -C $* %-clean: $(MAKE) -C $* clean