1 2include ../../GDALmake.opt 3include csharp.opt 4 5all: build 6 7BINDING = csharp 8include ../SWIGmake.base 9 10SWIGARGS = -DSWIG2_CSHARP -Wall -I../include -I../include/$(BINDING) 11 12LINK = $(LD_SHARED) 13LINK_EXTRAFLAGS = 14OBJ_EXT = o 15ifeq ($(HAVE_LIBTOOL),yes) 16LINK = $(LD) 17LINK_EXTRAFLAGS = -rpath $(INST_LIB) -no-undefined -version-info $(LIBGDAL_CURRENT):$(LIBGDAL_REVISION):$(LIBGDAL_AGE) 18OBJ_EXT = lo 19endif 20 21SUPPRESSW = -Wno-missing-prototypes -Wno-missing-declarations -Wno-deprecated-declarations -Wno-unused-parameter -Wno-unused-function 22 23CSHARP_MODULES = libgdalcsharp.$(SO_EXT) libogrcsharp.$(SO_EXT) libgdalconstcsharp.$(SO_EXT) libosrcsharp.$(SO_EXT) 24CSHARP_OBJECTS = gdalconst_wrap.$(OBJ_EXT) gdal_wrap.$(OBJ_EXT) osr_wrap.$(OBJ_EXT) ogr_wrap.$(OBJ_EXT) 25 26CSC = mcs 27 28SWIG_GDAL_WRAP = -namespace OSGeo.GDAL -dllimport gdal_wrap -outdir gdal 29SWIG_GDALCONST_WRAP = -namespace OSGeo.GDAL -dllimport gdalconst_wrap -outdir const 30SWIG_OGR_WRAP = -namespace OSGeo.OGR -dllimport ogr_wrap -outdir ogr 31SWIG_OSR_WRAP = -namespace OSGeo.OSR -dllimport osr_wrap -outdir osr 32 33clean: 34 -rm -f ${CSHARP_MODULES} *.$(OBJ_EXT) *.config *.dll *.mdb *.exe *.config 35 36veryclean: clean 37 -rm -f -R const/*.cs gdal/*.cs osr/*.cs ogr/*.cs *.c *.cpp Data 38 39build: ${CSHARP_OBJECTS} samples 40 41sign: 42 sn -k gdal.snk 43 44install: 45 @echo "No installation to be done" 46 47generate: ${WRAPPERS} 48 49$(CSHARP_MODULES): lib%csharp.$(SO_EXT): %_wrap.$(OBJ_EXT) 50 $(LINK) $(LDFLAGS) $(CONFIG_LIBS) $< -o $@ $(GDAL_SLIB_LINK) $(LINK_EXTRAFLAGS) 51 rm -rf $*_csharp.dll.config 52 echo "<configuration>" >> $*_csharp.dll.config 53 echo "<dllmap dll=\""$*"_wrap\" target=\""$*csharp"\" />" >> $*_csharp.dll.config 54 echo "</configuration>" >> $*_csharp.dll.config 55 56%.$(OBJ_EXT): %.cpp 57 $(CXX) $(CFLAGS) $(SUPPRESSW) $(GDAL_INCLUDE) -c $< 58 59%.$(OBJ_EXT): %.c 60 $(CC) $(CFLAGS) $(SUPPRESSW) $(GDAL_INCLUDE) -c $< 61 62osr_csharp.dll: libosrcsharp.$(SO_EXT) 63 $(CSC) /unsafe /debug:full /target:library /out:osr_csharp.dll osr/*.cs AssemblyInfo.cs 64 65ogr_csharp.dll: libogrcsharp.$(SO_EXT) osr_csharp.dll 66 $(CSC) /unsafe /debug:full /target:library /out:ogr_csharp.dll /r:osr_csharp.dll ogr/*.cs AssemblyInfo.cs 67 68gdal_csharp.dll: libgdalcsharp.$(SO_EXT) ogr_csharp.dll 69 $(CSC) /unsafe /debug:full /target:library /out:gdal_csharp.dll /r:ogr_csharp.dll /r:osr_csharp.dll gdal/*.cs AssemblyInfo.cs 70 71gdalconst_csharp.dll: libgdalconstcsharp.$(SO_EXT) 72 $(CSC) /unsafe /debug:full /target:library /out:gdalconst_csharp.dll const/*.cs AssemblyInfo.cs 73 74samples: gdalconst_csharp.dll gdal_csharp.dll ogr_csharp.dll osr_csharp.dll 75 $(CSC) /r:ogr_csharp.dll /r:osr_csharp.dll /out:ogrinfo.exe apps/ogrinfo.cs 76 $(CSC) /r:ogr_csharp.dll /r:osr_csharp.dll /out:createdata.exe apps/createdata.cs 77 $(CSC) /r:osr_csharp.dll /out:OSRTransform.exe apps/OSRTransform.cs 78 $(CSC) /r:gdal_csharp.dll /r:System.Drawing.dll /out:GDALRead.exe apps/GDALRead.cs 79 $(CSC) /r:gdal_csharp.dll /r:System.Drawing.dll /out:GDALReadDirect.exe apps/GDALReadDirect.cs 80 $(CSC) /r:gdal_csharp.dll /r:System.Drawing.dll /out:GDALAdjustContrast.exe apps/GDALAdjustContrast.cs 81 $(CSC) /r:gdal_csharp.dll /r:System.Drawing.dll /out:GDALDatasetRasterIO.exe apps/GDALDatasetRasterIO.cs 82 $(CSC) /r:gdal_csharp.dll /out:GDALWrite.exe apps/GDALWrite.cs 83 $(CSC) /r:gdal_csharp.dll /out:GDALDatasetWrite.exe apps/GDALDatasetWrite.cs 84 $(CSC) /r:gdal_csharp.dll /out:GDALColorTable.exe apps/GDALColorTable.cs 85 $(CSC) /r:ogr_csharp.dll /out:WKT2WKB.exe apps/WKT2WKB.cs 86 $(CSC) /r:ogr_csharp.dll /out:OGRGEOS.exe apps/OGRGEOS.cs 87 $(CSC) /r:gdal_csharp.dll /out:ReadXML.exe apps/ReadXML.cs 88 $(CSC) /r:gdal_csharp.dll /r:osr_csharp.dll /out:GDALInfo.exe apps/GDALInfo.cs 89 $(CSC) /r:gdal_csharp.dll /out:GDALOverviews.exe apps/GDALOverviews.cs 90 $(CSC) /r:gdal_csharp.dll /out:GDALCreateCopy.exe apps/GDALCreateCopy.cs 91 $(CSC) /r:gdal_csharp.dll /out:GDALGetHistogram.exe apps/GDALGetHistogram.cs 92 93vagrant_safe_test: 94 LC_ALL=C mono createdata.exe Data pointlayer 95 LC_ALL=C mono ogrinfo.exe Data/pointlayer.shp 96 LC_ALL=C mono GDALWrite.exe Data/sample.tif 97 LC_ALL=C mono GDALDatasetWrite.exe Data/sample1.tif 98 LC_ALL=C mono GDALCreateCopy.exe Data/sample.tif Data/sample2.tif 99 LC_ALL=C mono GDALOverviews.exe Data/sample.tif NEAREST 2 4 100 LC_ALL=C mono GDALInfo.exe Data/sample.tif 101 102test: vagrant_safe_test 103 LC_ALL=C mono OSRTransform.exe 104 105.PHONY: all clean veryclean generate interface build sign install gdal_csharp samples vagrant_safe_test test 106