#### # $Id$ # # Typical build with .net compiler using nmake # cd to: "ossim/src/packages" # unzip and untar the file gdal.tgz # set the environment variable OSSIM_HOME # cd to the top of ossim # nmake /f makefile.vc # # Edit this file as required. # # NOTE: # # You should either set the environment variable "OSSIM_HOME" or uncomment and # set it in this file for include paths and linking. Since external packages # such as ossim_qt looks for the environment variable, it is preferable to set # the environment variable to setting it in this file. # # See: "Start->Control Panel->System->Advanced->Environment Variables" (XP) # to set the environment variables. ### # OSSIM_HOME = C:\drb\ossim CORE_DIR = $(OSSIM_HOME)\src\ossim_core BINDIR = $(OSSIM_HOME)\bin BIN_DIR = $(OSSIM_HOME)\bin ### # Library directories. ### LIBDIR = $(OSSIM_HOME)\lib LIB_DIR = $(OSSIM_HOME)\lib LIB_BASE_DIR = $(CORE_DIR)\base LIB_ELEVATION_DIR = $(CORE_DIR)\elevation LIB_FONT_DIR = $(CORE_DIR)\fonts LIB_IMAGING_DIR = $(CORE_DIR)\imaging LIB_INIT_DIR = $(CORE_DIR)\init LIB_POLYCLIP_DIR = $(CORE_DIR)\libpolyclip LIB_MATRIX_DIR = $(CORE_DIR)\matrix LIB_PARALLEL_DIR = $(CORE_DIR)\parallel LIB_PLUGIN_DIR = $(CORE_DIR)\plugin LIB_PROJECTION_DIR = $(CORE_DIR)\projections LIB_SUPPORT_DATA_DIR = $(CORE_DIR)\support_data LIB_VEC_DIR = $(CORE_DIR)\vec LIB_VPF_DIR = $(CORE_DIR)\vpf_util ### # OSSIM libraries ### BASE_LIB = ossim_base.lib ELEVATION_LIB = ossim_elevation.lib FONT_LIB = ossim_font.lib IMAGING_LIB = ossim_imaging.lib INIT_LIB = ossim_init.lib POLYCLIP_LIB = ossim_polyclip.lib MATRIX_LIB = ossim_matrix.lib PARALLEL_LIB = ossim_parallel.lib PLUGIN_LIB = ossim_plugin.lib PROJECTION_LIB = ossim_projection.lib SUPPORT_DATA_LIB = ossim_support_data.lib VEC_LIB = ossim_vec.lib VPF_LIB = ossim_vpf.lib OSSIM_LIB = ossim.lib ### # Convenience link lines in the correct link order. ### LINK_MATRIX = $(MATRIX_LIB) LINK_POLYCLIP = $(POLYCLIP_LIB) $(LINK_MATRIX) LINK_BASE = $(BASE_LIB) $(LINK_POLYCLIP) LINK_FONT = $(FONT_LIB) $(LINK_BASE) LINK_VPF = $(VPF_LIB) $(LINK_FONT) LINK_VEC = $(VEC_LIB) $(LINK_VPF) LINK_SUPPORT_DATA = $(SUPPORT_DATA_LIB) $(LINK_VEC) LINK_ELEVATION = $(ELEVATION_LIB) $(LINK_SUPPORT_DATA) LINK_PROJECTION = $(PROJECTION_LIB) $(LINK_ELEVATION) LINK_IMAGING = $(IMAGING_LIB) $(LINK_PROJECTION) LINK_PARALLEL = $(PARALLEL_LIB) $(LINK_IMAGING) LINK_PLUGIN = $(PLUGIN_LIB) $(LINK_PARALLEL) LINK_INIT = $(INIT_LIB) $(LINK_PLUGIN) LINK_OSSIM = $(LINK_INIT) ### # JPEG support. This can be from gdal or external but one or the other is # mandatory. ### JPEG_DIR = c:\drb\jpeg\jpeg-6b JPEG_INC = -I$(JPEG_DIR) JPEG_LIB = $(JPEG_DIR)\libjpeg.lib ### # TIFF support. ### TIFF_DIR = c:\drb\libtiff TIFF_INC = -I$(TIFF_DIR)\libtiff TIFF_LIB = $(TIFF_DIR)\libtiff\libtiff.lib ### # Optional geotiff support. ### GEOTIFF_DEFINE =/DGEOTIFF_ENABLED GEOTIFF_DIR = c:\drb\geotiff\libgeotiff GEOTIFF_INC = -I$(GEOTIFF_DIR) -I$(GEOTIFF_DIR)\libxtiff GEOTIFF_LIB = $(GEOTIFF_DIR)\geotiff.lib ### # Optional freetype support. ### FREETYPE_DEFINE =/DFREETYPE_SETTING=1 FREETYPE_DIR = c:\drb\freetype\freetype FREETYPE_INC = -I$(FREETYPE_DIR)\include FREETYPE_LIB = $(FREETYPE_DIR)\objs\.libs\libfreetype.a INC = -I$(OSSIM_ROOT)\src -I$(OSSIM_ROOT)\src\ossim_core $(GEOTIFF_INC) $(TIFF_INC) $(JPEG_INC) $(FREETYPE_INC) ### # Uncomment the first for an optimized build or the second for a debug build. ### OPTIONAL_DEFINES = /D_FILE_OFFSET_BITS=64 /D_LARGE_FILES /DMPI_SETTING=0 /DHAS_OPEN_THREADS=0 $(GEOTIFF_DEFINE) $(FREETYPE_DEFINE) /DHAVE_CONFIG_H CDEBUGFLAGS = OPTFLAGS = /nologo /MD /EHsc $(CDEBUGFLAGS) $(OPTIONAL_DEFINES) OBJ_OPT_FLAGS = $(OPTFLAGS) /DOSSIMMAKINGDLL SHARED_APP_OPT_FLAGS = $(OPTFLAGS) /DOSSIMUSINGDLL STATIC_APP_OPT_FLAGS = $(OPTFLAGS) MAKE = nmake CC = cl ### # External stuff ossim links with. ### LINK_EXTERNALS = $(GEOTIFF_LIB) $(TIFF_LIB) $(JPEG_LIB) $(FREETYPE_LIB) ### # Link line for making single ossim library. ### OSSIM_LIB_LINK = $(LINK_EXTERNALS) ### # Static link line for apps. ### STATIC_OSSIM_LINK = /link /LIBPATH:$(LIB_DIR) $(LINK_OSSIM) $(GEOTIFF_LIB) $(TIFF_LIB) $(JPEG_LIB) $(FREETYPE_LIB) ### # Shared link. ### SHARED_OSSIM_LINK = $(LIB_DIR)\ossim.lib ### # Use this to link apps static or shared. ### # OSSIM_LINK = $(STATIC_OSSIM_LINK) # APP_CFLAGS = $(STATIC_APP_OPT_FLAGS) $(INC) $(EXTRAFLAGS) OSSIM_LINK = $(SHARED_OSSIM_LINK) APP_CFLAGS = $(SHARED_APP_OPT_FLAGS) $(INC) $(EXTRAFLAGS) ### # CFLAGS usually left alone. ### CFLAGS = $(OBJ_OPT_FLAGS) $(INC) $(EXTRAFLAGS) #### # Some rules... These are what the ossim_core is built with by default. ### .c.obj: $(CC) $(CFLAGS) /c $*.c .cpp.obj: $(CC) $(CFLAGS) /c $*.cpp ### # Some commands: ### MKDIR = -mkdir RMDIR = rmdir /S /Q RM = del /F /Q CP = copy