svn-gvsig-desktop / tags / v1_1_2_Build_1045 / libraries / libjni-gdal-macosx / Makefile @ 35210
History | View | Annotate | Download (9.75 KB)
1 | 8219 | nacho | # |
---|---|---|---|
2 | #**************************************************************** |
||
3 | # |
||
4 | # MAKEFILE |
||
5 | # $Id: Makefile,v 1.0 2004/11/15 Nacho Brodin |
||
6 | # |
||
7 | # Project: Wrapper c-java para la libreria gdal |
||
8 | # Purpose: Integraci?n de la libreria gdal en c++ de Frank Warmerdam |
||
9 | # en el proyecto gvSIG |
||
10 | 13023 | mija | # Author: Nacho Brodin nachobrodin@gmail.es |
11 | 8219 | nacho | # |
12 | #***************************************************************** |
||
13 | 13023 | mija | # 0.5.0 - Lectura de tablas de color. |
14 | # Escritura para todos los tipos de datos |
||
15 | # 0.6.0 - Algunas funciones de ogrspatialreference |
||
16 | # 0.6.1 - Lanzamiento de SIGALRM cuando se produce un SIGSEGV |
||
17 | # |
||
18 | 8219 | nacho | #Compiladores y aplicaciones |
19 | |||
20 | JAVAC = javac |
||
21 | JAVAH = javah |
||
22 | JAR = jar -cvf |
||
23 | 13023 | mija | # en OS X, usar los compiladores por defecto (4.0 en OS X 10.4) |
24 | # CXX = g++-3.4 |
||
25 | 8219 | nacho | CXX = g++ |
26 | 13023 | mija | #GCC = gcc-3.4 |
27 | 8219 | nacho | GCC = gcc |
28 | RM = rm -f |
||
29 | RRM = rm -rf |
||
30 | #Librerias |
||
31 | |||
32 | NOM_LIB = jgdal |
||
33 | GDAL_LIB = gdal |
||
34 | 13023 | mija | VERS = 0.6.1 |
35 | 8219 | nacho | |
36 | #Directorios |
||
37 | |||
38 | INCLUDE = ./include |
||
39 | FUENTES = ./src |
||
40 | DEST_OBJS = ./bin |
||
41 | DISTRIBUCION = ./dist |
||
42 | RUTA_PAQUETE_WRGDAL = es/gva/cit/jgdal |
||
43 | RUTA_PAQUETE_WRBSB = es/gva/cit/jbsb |
||
44 | RUTA_PAQUETE_WROGR = es/gva/cit/jogr |
||
45 | RUTA_PAQUETE = es/gva/cit |
||
46 | DSTNO_LIB = "/lib" |
||
47 | 13023 | mija | LIB = lib$(NOM_LIB).jnilib |
48 | GDAL_LIB = lib$(GDAL_LIB).dylib |
||
49 | 8219 | nacho | IDL_JAVA_GDAL = $(RUTA_PAQUETE_WRGDAL)/Gdal.java |
50 | DIR_TEST = ./src-test |
||
51 | |||
52 | #Opciones |
||
53 | |||
54 | 13023 | mija | #FLAGS = -Wall -I./include -I./include/jni_linux -L/root/libjni-gdal/lib |
55 | FLAGS = -Wall -I./include -I/System/Library/Frameworks/JavaVM.framework/Headers -fno-common |
||
56 | 8219 | nacho | INSTALL = install_lin |
57 | 13023 | mija | OBJS = gdal_interfaz.o rasterband_interfaz.o colortable_interfaz.o bsb_interfaz.o gdaldriver_interfaz.o \ |
58 | ogrspatialreference_interfaz.o ogrregisterall_interfaz.o ogrdatasource_interfaz.o ogrenvelope_interfaz.o ogrfeature_interfaz.o ogrfeaturedefn_interfaz.o \ |
||
59 | 8219 | nacho | ogrfielddefn_interfaz.o ogrlayer_interfaz.o ogrsfdriver_interfaz.o ogrsfdriverregistrar_interfaz.o ogrtools_interfaz.o \ |
60 | ogrpolygon_interfaz.o |
||
61 | 13023 | mija | #LIB_DIR=-L../binaries/linux/raster/gdal |
62 | LIB_DIR=-L../binaries/mac/raster/gdal |
||
63 | #OPC_LINK = $(LIB_DIR) -g -shared -Wl,-soname, |
||
64 | OPC_LINK = $(LIB_DIR) -dynamiclib -g -framework JavaVM -Wl,-headerpad_max_install_names |
||
65 | 8219 | nacho | CMS_PROJ=../libCq\ CMS\ for\ java/lib |
66 | |||
67 | |||
68 | |||
69 | FICHERO_JAR_GDAL = $(NOM_LIB)-$(VERS).jar |
||
70 | FICHERO_JAR_BSB = jbsb.jar |
||
71 | PAQUETE_GDAL = es.gva.cit.jgdal |
||
72 | FTE_HEADER_GDAL = $(PAQUETE_GDAL).Gdal |
||
73 | PAQUETE_BSB = es.gva.cit.jbsb |
||
74 | FICHERO_JAR_OGR = jogr.jar |
||
75 | PAQUETE_OGR = es.gva.cit.jogr |
||
76 | |||
77 | all: java header jar $(OBJS) $(LIB) |
||
78 | #test |
||
79 | |||
80 | |||
81 | |||
82 | #******************************************************************************* |
||
83 | |||
84 | |||
85 | $(LIB): $(OBJS) |
||
86 | |||
87 | #Generaci?n de libreria jgdal |
||
88 | |||
89 | 13023 | mija | #$(CXX) $(OPC_LINK)$(LIB) -o $(LIB).$(VERS) $(OBJS) -lc $(FLAGS) -lgdal |
90 | $(CXX) $(OPC_LINK) -o $(LIB) $(OBJS) -lc $(FLAGS) -lgdal |
||
91 | if test -f ./$(LIB); then \ |
||
92 | cp ./$(LIB) ../binaries/mac/raster/gdal; \ |
||
93 | 8219 | nacho | mkdir -p $(DISTRIBUCION); \ |
94 | 13023 | mija | mv ./$(LIB) $(DISTRIBUCION); \ |
95 | 8219 | nacho | fi; |
96 | if test -d $(CMS_PROJ); then \ |
||
97 | cp $(DISTRIBUCION)/$(FICHERO_JAR_GDAL) $(CMS_PROJ); \ |
||
98 | cp $(DISTRIBUCION)/$(FICHERO_JAR_BSB) $(CMS_PROJ); \ |
||
99 | cp $(DISTRIBUCION)/$(FICHERO_JAR_OGR) $(CMS_PROJ); \ |
||
100 | fi; |
||
101 | |||
102 | gdal_interfaz.o: |
||
103 | $(GCC) -c $(FUENTES)/gdal_interfaz.c $(FLAGS) |
||
104 | |||
105 | rasterband_interfaz.o: |
||
106 | $(GCC) -c $(FUENTES)/rasterband_interfaz.c $(FLAGS) |
||
107 | |||
108 | gdaldriver_interfaz.o: |
||
109 | $(GCC) -c $(FUENTES)/gdaldriver_interfaz.c $(FLAGS) |
||
110 | |||
111 | colortable_interfaz.o: |
||
112 | $(GCC) -c $(FUENTES)/colortable_interfaz.c $(FLAGS) |
||
113 | |||
114 | ogrspatialreference_interfaz.o: |
||
115 | $(GCC) -c $(FUENTES)/ogrspatialreference_interfaz.c $(FLAGS) |
||
116 | |||
117 | ogrregisterall_interfaz.o: |
||
118 | $(CXX) -c $(FUENTES)/ogrregisterall_interfaz.cpp $(FLAGS) |
||
119 | |||
120 | bsb_interfaz.o: |
||
121 | $(GCC) -c $(FUENTES)/bsb_interfaz.c $(FLAGS) |
||
122 | |||
123 | ogrdatasource_interfaz.o: |
||
124 | $(GCC) -c $(FUENTES)/ogrdatasource_interfaz.cpp $(FLAGS) |
||
125 | |||
126 | ogrenvelope_interfaz.o: |
||
127 | $(CXX) -c $(FUENTES)/ogrenvelope_interfaz.cpp $(FLAGS) |
||
128 | |||
129 | ogrfeature_interfaz.o: |
||
130 | $(CXX) -c $(FUENTES)/ogrfeature_interfaz.cpp $(FLAGS) |
||
131 | |||
132 | ogrfeaturedefn_interfaz.o: |
||
133 | $(CXX) -c $(FUENTES)/ogrfeaturedefn_interfaz.cpp $(FLAGS) |
||
134 | |||
135 | ogrfielddefn_interfaz.o: |
||
136 | $(CXX) -c $(FUENTES)/ogrfielddefn_interfaz.cpp $(FLAGS) |
||
137 | |||
138 | ogrlayer_interfaz.o: |
||
139 | $(CXX) -c $(FUENTES)/ogrlayer_interfaz.cpp $(FLAGS) |
||
140 | |||
141 | ogrsfdriver_interfaz.o: |
||
142 | $(CXX) -c $(FUENTES)/ogrsfdriver_interfaz.cpp $(FLAGS) |
||
143 | |||
144 | ogrsfdriverregistrar_interfaz.o: |
||
145 | $(CXX) -c $(FUENTES)/ogrsfdriverregistrar_interfaz.cpp $(FLAGS) |
||
146 | |||
147 | ogrtools_interfaz.o: |
||
148 | $(CXX) -c $(FUENTES)/ogrtools_interfaz.cpp $(FLAGS) |
||
149 | |||
150 | ogrpolygon_interfaz.o: |
||
151 | $(CXX) -c $(FUENTES)/ogrpolygon_interfaz.cpp $(FLAGS) |
||
152 | |||
153 | #******************************************************************************* |
||
154 | |||
155 | |||
156 | jar: |
||
157 | |||
158 | #Generaci?n del jar con las clases java |
||
159 | |||
160 | $(JAR) $(DISTRIBUCION)/$(FICHERO_JAR_GDAL) -C $(DEST_OBJS)/ $(RUTA_PAQUETE_WRGDAL) |
||
161 | $(JAR) $(DISTRIBUCION)/$(FICHERO_JAR_BSB) -C $(DEST_OBJS)/ $(RUTA_PAQUETE_WRBSB) |
||
162 | $(JAR) $(DISTRIBUCION)/$(FICHERO_JAR_OGR) -C $(DEST_OBJS)/ $(RUTA_PAQUETE_WROGR) |
||
163 | |||
164 | |||
165 | #******************************************************************************* |
||
166 | |||
167 | install: |
||
168 | |||
169 | #instalamos la libreria gdal |
||
170 | |||
171 | @if test -f $(DIR_LIB)/$(LIB); then \ |
||
172 | $(RM) $(DIR_LIB)/$(LIB); \ |
||
173 | fi; |
||
174 | 13023 | mija | @if test -f $(DIR_LIB)/$(LIB); then \ |
175 | $(RM) $(DIR_LIB)/$(LIB); \ |
||
176 | 8219 | nacho | fi; |
177 | 13023 | mija | cp $(DISTRIBUCION)/$(LIB) $(DSTNO_LIB) |
178 | ln -fs $(DSTNO_LIB)/$(LIB) $(DSTNO_LIB)/$(LIB) |
||
179 | 8219 | nacho | |
180 | |||
181 | #******************************************************************************* |
||
182 | |||
183 | header: |
||
184 | |||
185 | #Generaci?n de cabeceras C para el wrapper |
||
186 | |||
187 | $(JAVAH) -classpath "$(DEST_OBJS)" -d $(INCLUDE) $(FTE_HEADER_GDAL) |
||
188 | $(JAVAH) -classpath "$(DEST_OBJS)" -d $(INCLUDE) $(PAQUETE_GDAL).GdalRasterBand \ |
||
189 | $(PAQUETE_GDAL).GdalDriver $(PAQUETE_GDAL).GdalColorTable $(PAQUETE_GDAL).JNIBase $(PAQUETE_BSB).Bsb |
||
190 | $(JAVAH) -classpath "$(DEST_OBJS)" -d $(INCLUDE) $(PAQUETE_OGR).OGRRegisterAll $(PAQUETE_OGR).OGRDataSource \ |
||
191 | $(PAQUETE_OGR).OGREnvelope $(PAQUETE_OGR).OGRFeature $(PAQUETE_OGR).OGRFeatureDefn $(PAQUETE_OGR).OGRLayer \ |
||
192 | $(PAQUETE_OGR).OGRSFDriver $(PAQUETE_OGR).OGRSFDriverRegistrar $(PAQUETE_OGR).OGRFieldDefn $(PAQUETE_OGR).JNIBase \ |
||
193 | $(PAQUETE_OGR).OGRSpatialReference $(PAQUETE_OGR).OGRTools $(PAQUETE_OGR).OGRPolygon |
||
194 | |||
195 | |||
196 | java: |
||
197 | |||
198 | |||
199 | #Compilaci?n de los ficheros java gdal |
||
200 | |||
201 | $(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/GdalBuffer.java -d $(DEST_OBJS) |
||
202 | 13023 | mija | $(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/DiagSignalHandler.java -d $(DEST_OBJS) |
203 | 8219 | nacho | $(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/GdalException.java $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/GdalColorEntry.java -d $(DEST_OBJS) |
204 | $(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/GdalDriver.java $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/JNIBase.java $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/Gdal.java $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/GdalColorTable.java $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/GeoTransform.java $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/GdalRasterBand.java -d $(DEST_OBJS) $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/Options.java -classpath "$(DEST_OBJS)" |
||
205 | $(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/GdalTools.java $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/JNIBase.java -d $(DEST_OBJS) -classpath "$(DEST_OBJS)" |
||
206 | |||
207 | #Compilaci?n de OGR |
||
208 | |||
209 | 13023 | mija | $(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGRException.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/CrsGdalException.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/CrsOgrException.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGRFailureException.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGRNotEnoughDataException.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGRNotEnoughMemoryException.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGRUnsupportedGeometryTypeException.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGRUnsupportedOperationException.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGRUnsupportedSRSException.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGRCorruptDataException.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGRSpatialReference.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/JNIBase.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGRCoordinateTransformation.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGRLayerAttrIndex.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGRField.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGRGeometry.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGRStyleTable.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGRFieldType.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGRRegisterAll.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGRDataSource.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGREnvelope.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGRFeature.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGRFeatureDefn.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGRFieldDefn.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGRLayer.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGRSFDriver.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGRSFDriverRegistrar.java -d $(DEST_OBJS) -classpath "$(DEST_OBJS)" |
210 | 8219 | nacho | $(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGRTools.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGRSurface.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGRPoint.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGRPolygon.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGRGeometryFactory.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGRMultiPoint.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGRLineString.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGRMultiPolygon.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGRMultiLineString.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGRLinearRing.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGRGeometryCollection.java $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGRCurve.java -d $(DEST_OBJS) -classpath "$(DEST_OBJS)" |
211 | |||
212 | #Compilaci?n de los ficheros java bsb |
||
213 | |||
214 | $(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRBSB)/BsbInfo.java -d $(DEST_OBJS) |
||
215 | $(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRBSB)/BsbException.java -d $(DEST_OBJS) |
||
216 | $(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRBSB)/BsbBuffer.java -d $(DEST_OBJS) |
||
217 | $(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRBSB)/Bsb.java -d $(DEST_OBJS) -classpath "$(DEST_OBJS)" |
||
218 | |||
219 | |||
220 | #******************************************************************************* |
||
221 | |||
222 | test: |
||
223 | cd $(DIR_TEST); \ |
||
224 | $(MAKE) all; \ |
||
225 | cd ..; |
||
226 | |||
227 | |||
228 | #******************************************************************************* |
||
229 | .PHONY: clean |
||
230 | clean: |
||
231 | |||
232 | #Borrando objetos y librerias |
||
233 | |||
234 | $(RM) $(OBJS) |
||
235 | $(RM) $(DISTRIBUCION)/$(LIB).$(VERS); |
||
236 | $(RM) $(DISTRIBUCION)/$(FICHERO_JAR_GDAL); |
||
237 | $(RM) $(DISTRIBUCION)/$(FICHERO_JAR_BSB); |
||
238 | $(RM) $(DISTRIBUCION)/$(FICHERO_JAR_OGR); |
||
239 | $(RM) $(DISTRIBUCION)/$(FICHERO_JAR_OGR); |
||
240 | $(RRM) $(DEST_OBJS)/*; |
||
241 | |||
242 |