Statistics
| Revision:

svn-gvsig-desktop / tags / v1_2_Build_1207 / libraries / libjni-gdal / Makefile @ 44114

History | View | Annotate | Download (9.52 KB)

1
#
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
# Author:   Nacho Brodin nachobrodin@gmail.es
11
#
12
#*****************************************************************
13
# 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 - Eliminación de las comprobaciones de punteros en java
17
#		  Pruebas:Lanzamiento de SIGALRM cuando se produce un SIGSEGV
18
# 
19
#Compiladores y aplicaciones
20

    
21
JAVAC = javac
22
JAVAH = javah
23
JAR = jar -cvf
24
CXX = g++-3.4 
25
GCC = gcc-3.4 
26
RM = rm -f
27
RRM = rm -rf
28
#Librerias
29

    
30
NOM_LIB = jgdal
31
GDAL_LIB = gdal
32
VERS = 0.6.1
33

    
34
#Directorios
35

    
36
INCLUDE = ./include
37
FUENTES = ./src
38
DEST_OBJS = ./bin
39
DISTRIBUCION = ./dist
40
RUTA_PAQUETE_WRGDAL = es/gva/cit/jgdal
41
RUTA_PAQUETE_WRBSB = es/gva/cit/jbsb
42
RUTA_PAQUETE_WROGR = es/gva/cit/jogr
43
RUTA_PAQUETE = es/gva/cit
44
DSTNO_LIB = "/lib"
45
LIB = lib$(NOM_LIB).so
46
GDAL_LIB = lib$(GDAL_LIB).so
47
IDL_JAVA_GDAL = $(RUTA_PAQUETE_WRGDAL)/Gdal.java
48
DIR_TEST = ./src-test
49

    
50
#Opciones
51

    
52
FLAGS = -Wall -I./include -I./include/jni_linux -L/root/libjni-gdal/lib
53
INSTALL = install_lin
54
OBJS = gdal_interfaz.o rasterband_interfaz.o colortable_interfaz.o bsb_interfaz.o gdaldriver_interfaz.o \
55
ogrspatialreference_interfaz.o ogrregisterall_interfaz.o ogrdatasource_interfaz.o ogrenvelope_interfaz.o ogrfeature_interfaz.o ogrfeaturedefn_interfaz.o \
56
ogrfielddefn_interfaz.o ogrlayer_interfaz.o ogrsfdriver_interfaz.o ogrsfdriverregistrar_interfaz.o ogrtools_interfaz.o \
57
ogrpolygon_interfaz.o
58
LIB_DIR=-L../binaries/linux/raster/gdal
59
OPC_LINK = $(LIB_DIR) -g -shared -Wl,-soname,
60
CMS_PROJ=../libCq\ CMS\ for\ java/lib
61

    
62

    
63

    
64
FICHERO_JAR_GDAL = $(NOM_LIB)-$(VERS).jar
65
FICHERO_JAR_BSB = jbsb.jar
66
PAQUETE_GDAL = es.gva.cit.jgdal
67
FTE_HEADER_GDAL = $(PAQUETE_GDAL).Gdal
68
PAQUETE_BSB = es.gva.cit.jbsb
69
FICHERO_JAR_OGR = jogr.jar
70
PAQUETE_OGR = es.gva.cit.jogr
71

    
72
all:	java header jar $(OBJS) $(LIB) 
73
#test
74

    
75

    
76

    
77
#*******************************************************************************
78

    
79

    
80
$(LIB):	$(OBJS)
81
	
82
	#Generaci�n de libreria jgdal
83

    
84
	$(CXX) $(OPC_LINK)$(LIB) -o $(LIB).$(VERS) $(OBJS) -lc $(FLAGS) -lgdal
85
	if test -f ./$(LIB).$(VERS); then \
86
		cp ./$(LIB).$(VERS) ../binaries/linux/raster/gdal; \
87
		mkdir -p $(DISTRIBUCION); \
88
		mv ./$(LIB).$(VERS) $(DISTRIBUCION); \
89
	fi;
90
	if test -d $(CMS_PROJ); then \
91
		cp $(DISTRIBUCION)/$(FICHERO_JAR_GDAL) $(CMS_PROJ); \
92
		cp $(DISTRIBUCION)/$(FICHERO_JAR_BSB) $(CMS_PROJ); \
93
		cp $(DISTRIBUCION)/$(FICHERO_JAR_OGR) $(CMS_PROJ); \
94
	fi;
95

    
96
gdal_interfaz.o:
97
	$(GCC) -c $(FUENTES)/gdal_interfaz.c $(FLAGS)
98

    
99
rasterband_interfaz.o:
100
	$(GCC) -c $(FUENTES)/rasterband_interfaz.c $(FLAGS)
101

    
102
gdaldriver_interfaz.o:
103
	$(GCC) -c $(FUENTES)/gdaldriver_interfaz.c $(FLAGS)
104
	
105
colortable_interfaz.o:
106
	$(GCC) -c $(FUENTES)/colortable_interfaz.c $(FLAGS)
107

    
108
ogrspatialreference_interfaz.o:
109
	$(GCC) -c $(FUENTES)/ogrspatialreference_interfaz.c $(FLAGS)
110
	
111
ogrregisterall_interfaz.o:
112
	$(CXX) -c $(FUENTES)/ogrregisterall_interfaz.cpp $(FLAGS)
113
		
114
bsb_interfaz.o:
115
	$(GCC) -c $(FUENTES)/bsb_interfaz.c $(FLAGS)
116

    
117
ogrdatasource_interfaz.o:
118
	$(GCC) -c $(FUENTES)/ogrdatasource_interfaz.cpp $(FLAGS)
119

    
120
ogrenvelope_interfaz.o: 
121
	$(CXX) -c $(FUENTES)/ogrenvelope_interfaz.cpp $(FLAGS)
122

    
123
ogrfeature_interfaz.o: 
124
	$(CXX) -c $(FUENTES)/ogrfeature_interfaz.cpp $(FLAGS)
125

    
126
ogrfeaturedefn_interfaz.o: 
127
	$(CXX) -c $(FUENTES)/ogrfeaturedefn_interfaz.cpp $(FLAGS)
128

    
129
ogrfielddefn_interfaz.o:
130
	$(CXX) -c $(FUENTES)/ogrfielddefn_interfaz.cpp $(FLAGS)
131

    
132
ogrlayer_interfaz.o: 
133
	$(CXX) -c $(FUENTES)/ogrlayer_interfaz.cpp $(FLAGS)
134

    
135
ogrsfdriver_interfaz.o: 
136
	$(CXX) -c $(FUENTES)/ogrsfdriver_interfaz.cpp $(FLAGS)
137

    
138
ogrsfdriverregistrar_interfaz.o:
139
	$(CXX) -c $(FUENTES)/ogrsfdriverregistrar_interfaz.cpp $(FLAGS)
140

    
141
ogrtools_interfaz.o:
142
	$(CXX) -c $(FUENTES)/ogrtools_interfaz.cpp $(FLAGS)
143
	
144
ogrpolygon_interfaz.o:
145
	$(CXX) -c $(FUENTES)/ogrpolygon_interfaz.cpp $(FLAGS)
146
	
147
#*******************************************************************************
148

    
149

    
150
jar:
151
	
152
	#Generaci�n del jar con las clases java
153

    
154
	$(JAR) $(DISTRIBUCION)/$(FICHERO_JAR_GDAL) -C $(DEST_OBJS)/ $(RUTA_PAQUETE_WRGDAL)
155
	$(JAR) $(DISTRIBUCION)/$(FICHERO_JAR_BSB) -C $(DEST_OBJS)/ $(RUTA_PAQUETE_WRBSB)
156
	$(JAR) $(DISTRIBUCION)/$(FICHERO_JAR_OGR) -C $(DEST_OBJS)/ $(RUTA_PAQUETE_WROGR)
157

    
158

    
159
#*******************************************************************************
160

    
161
install:
162
	
163
	#instalamos la libreria gdal
164

    
165
	@if test -f $(DIR_LIB)/$(LIB); then \
166
		$(RM) $(DIR_LIB)/$(LIB); \
167
	fi;
168
	@if test -f $(DIR_LIB)/$(LIB).$(VERS); then \
169
		$(RM) $(DIR_LIB)/$(LIB).$(VERS); \
170
	fi;
171
	cp $(DISTRIBUCION)/$(LIB).$(VERS) $(DSTNO_LIB)
172
	ln -fs $(DSTNO_LIB)/$(LIB).$(VERS) $(DSTNO_LIB)/$(LIB)
173
	
174
	
175
#*******************************************************************************
176

    
177
header:
178
 	
179
 	#Generaci�n de cabeceras C para el wrapper
180
 
181
	$(JAVAH) -classpath "$(DEST_OBJS)" -d $(INCLUDE) $(FTE_HEADER_GDAL)
182
	$(JAVAH) -classpath "$(DEST_OBJS)" -d $(INCLUDE) $(PAQUETE_GDAL).GdalRasterBand \
183
	$(PAQUETE_GDAL).GdalDriver $(PAQUETE_GDAL).GdalColorTable $(PAQUETE_GDAL).JNIBase $(PAQUETE_BSB).Bsb 	
184
	$(JAVAH) -classpath "$(DEST_OBJS)" -d $(INCLUDE) $(PAQUETE_OGR).OGRRegisterAll $(PAQUETE_OGR).OGRDataSource \
185
	$(PAQUETE_OGR).OGREnvelope $(PAQUETE_OGR).OGRFeature $(PAQUETE_OGR).OGRFeatureDefn $(PAQUETE_OGR).OGRLayer \
186
	$(PAQUETE_OGR).OGRSFDriver $(PAQUETE_OGR).OGRSFDriverRegistrar $(PAQUETE_OGR).OGRFieldDefn $(PAQUETE_OGR).JNIBase \
187
	$(PAQUETE_OGR).OGRSpatialReference $(PAQUETE_OGR).OGRTools $(PAQUETE_OGR).OGRPolygon
188
	
189
	
190
java:
191

    
192

    
193
	#Compilaci�n de los ficheros java gdal
194

    
195
	$(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/GdalBuffer.java -d $(DEST_OBJS)	
196
	$(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/DiagSignalHandler.java -d $(DEST_OBJS)	
197
	$(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/GdalException.java $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/GdalColorEntry.java -d $(DEST_OBJS)	
198
	$(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)"
199
	$(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/GdalTools.java $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/JNIBase.java -d $(DEST_OBJS) -classpath "$(DEST_OBJS)"
200
	
201
	#Compilaci�n de OGR
202
	
203
	$(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)"
204
	$(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)"
205

    
206
	#Compilaci�n de los ficheros java bsb
207
	
208
	$(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRBSB)/BsbInfo.java -d $(DEST_OBJS)
209
	$(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRBSB)/BsbException.java -d $(DEST_OBJS)
210
	$(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRBSB)/BsbBuffer.java -d $(DEST_OBJS)
211
	$(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRBSB)/Bsb.java -d $(DEST_OBJS) -classpath "$(DEST_OBJS)"
212
	
213

    
214
#*******************************************************************************
215

    
216
test:
217
	cd $(DIR_TEST);  \
218
	$(MAKE) all; \
219
	cd ..;
220
	
221

    
222
#*******************************************************************************
223
.PHONY: clean
224
clean:
225

    
226
	#Borrando objetos y librerias
227
	
228
	$(RM) $(OBJS)		
229
	$(RM) $(DISTRIBUCION)/$(LIB).$(VERS);
230
	$(RM) $(DISTRIBUCION)/$(FICHERO_JAR_GDAL);
231
	$(RM) $(DISTRIBUCION)/$(FICHERO_JAR_BSB);
232
	$(RM) $(DISTRIBUCION)/$(FICHERO_JAR_OGR);
233
	$(RM) $(DISTRIBUCION)/$(FICHERO_JAR_OGR);
234
	$(RRM) $(DEST_OBJS)/*;
235

    
236
	
237