Statistics
| Revision:

root / branches / v05 / libraries / libjni-gdal / Makefile @ 3994

History | View | Annotate | Download (8.71 KB)

1
#*****************************************************************
2
#
3
#						MAKEFILE
4
# $Id: Makefile,v 1.0 2004/11/15 Nacho Brodin
5
#
6
# Project:  Wrapper c-java para la libreria gdal
7
# Purpose:  Integraci?n de la libreria gdal en c++ de Frank Warmerdam 
8
#			 en el proyecto gvSIG
9
# Author:   Ignacio Brodin		brodin@telefonica.net
10
#
11
#*****************************************************************
12

    
13
#Compiladores y aplicaciones
14

    
15
JAVAC = javac
16
JAVAH = javah
17
JAR = jar -cvf
18
CXX = g++
19
GCC = gcc
20
RM = rm -f
21
RRM = rm -rf
22
#Librerias
23

    
24
NOM_LIB = jgdal
25
GDAL_LIB = gdal
26
VERS = 0.1.0
27

    
28
#Directorios
29

    
30
INCLUDE = ./include
31
FUENTES = ./src
32
DEST_OBJS = ./bin
33
DISTRIBUCION = ./dist
34
RUTA_PAQUETE_WRGDAL = es/gva/cit/jgdal
35
RUTA_PAQUETE_WRBSB = es/gva/cit/jbsb
36
RUTA_PAQUETE_WROGR = es/gva/cit/jogr
37
RUTA_PAQUETE = es/gva/cit
38
DSTNO_LIB = "/lib"
39
LIB = lib$(NOM_LIB).so
40
GDAL_LIB = lib$(GDAL_LIB).so
41
IDL_JAVA_GDAL = $(RUTA_PAQUETE_WRGDAL)/Gdal.java
42
DIR_TEST = ./src-test
43

    
44
#Opciones
45

    
46
FLAGS = -Wall -I./include
47
INSTALL = install_lin
48
OBJS = gdal_interfaz.o rasterband_interfaz.o bsb_interfaz.o gdaldriver_interfaz.o ogrspatialreference_interfaz.o \
49
ogrregisterall_interfaz.o ogrdatasource_interfaz.o ogrenvelope_interfaz.o ogrfeature_interfaz.o ogrfeaturedefn_interfaz.o \
50
ogrfielddefn_interfaz.o ogrlayer_interfaz.o ogrsfdriver_interfaz.o ogrsfdriverregistrar_interfaz.o ogrtools_interfaz.o \
51
ogrpolygon_interfaz.o
52
OPC_LINK = -g -shared -Wl,-soname,
53

    
54

    
55
FICHERO_JAR_GDAL = $(NOM_LIB)-$(VERS).jar
56
FICHERO_JAR_BSB = jbsb.jar
57
PAQUETE_GDAL = es.gva.cit.jgdal
58
FTE_HEADER_GDAL = $(PAQUETE_GDAL).Gdal
59
PAQUETE_BSB = es.gva.cit.jbsb
60
FICHERO_JAR_OGR = jogr.jar
61
PAQUETE_OGR = es.gva.cit.jogr
62

    
63
all:	java header jar $(OBJS) $(LIB) test
64

    
65

    
66

    
67
#*******************************************************************************
68

    
69

    
70
$(LIB):	$(OBJS)
71
	
72
	#Generaci?n de libreria jgdal
73

    
74
	$(CXX) $(OPC_LINK)$(LIB) -o $(LIB).$(VERS) $(OBJS) -lc $(FLAGS) -lgdal
75
	@if test -f ./$(LIB).$(VERS); then \
76
		mv ./$(LIB).$(VERS) $(DISTRIBUCION); \
77
	fi;
78

    
79
gdal_interfaz.o:
80
	$(GCC) -c $(FUENTES)/gdal_interfaz.c $(FLAGS)
81

    
82
rasterband_interfaz.o:
83
	$(GCC) -c $(FUENTES)/rasterband_interfaz.c $(FLAGS)
84

    
85
gdaldriver_interfaz.o:
86
	$(GCC) -c $(FUENTES)/gdaldriver_interfaz.c $(FLAGS)
87

    
88
ogrspatialreference_interfaz.o:
89
	$(GCC) -c $(FUENTES)/ogrspatialreference_interfaz.c $(FLAGS)
90
	
91
ogrregisterall_interfaz.o:
92
	$(CXX) -c $(FUENTES)/ogrregisterall_interfaz.cpp $(FLAGS)
93
		
94
bsb_interfaz.o:
95
	$(GCC) -c $(FUENTES)/bsb_interfaz.c $(FLAGS)
96

    
97
ogrdatasource_interfaz.o:
98
	$(GCC) -c $(FUENTES)/ogrdatasource_interfaz.cpp $(FLAGS)
99

    
100
ogrenvelope_interfaz.o: 
101
	$(CXX) -c $(FUENTES)/ogrenvelope_interfaz.cpp $(FLAGS)
102

    
103
ogrfeature_interfaz.o: 
104
	$(CXX) -c $(FUENTES)/ogrfeature_interfaz.cpp $(FLAGS)
105

    
106
ogrfeaturedefn_interfaz.o: 
107
	$(CXX) -c $(FUENTES)/ogrfeaturedefn_interfaz.cpp $(FLAGS)
108

    
109
ogrfielddefn_interfaz.o:
110
	$(CXX) -c $(FUENTES)/ogrfielddefn_interfaz.cpp $(FLAGS)
111

    
112
ogrlayer_interfaz.o: 
113
	$(CXX) -c $(FUENTES)/ogrlayer_interfaz.cpp $(FLAGS)
114

    
115
ogrsfdriver_interfaz.o: 
116
	$(CXX) -c $(FUENTES)/ogrsfdriver_interfaz.cpp $(FLAGS)
117

    
118
ogrsfdriverregistrar_interfaz.o:
119
	$(CXX) -c $(FUENTES)/ogrsfdriverregistrar_interfaz.cpp $(FLAGS)
120

    
121
ogrtools_interfaz.o:
122
	$(CXX) -c $(FUENTES)/ogrtools_interfaz.cpp $(FLAGS)
123
	
124
ogrpolygon_interfaz.o:
125
	$(CXX) -c $(FUENTES)/ogrpolygon_interfaz.cpp $(FLAGS)
126
	
127
#*******************************************************************************
128

    
129

    
130
jar:
131
	
132
	#Generaci?n del jar con las clases java
133

    
134
	$(JAR) $(DISTRIBUCION)/$(FICHERO_JAR_GDAL) -C $(DEST_OBJS)/ $(RUTA_PAQUETE_WRGDAL)
135
	$(JAR) $(DISTRIBUCION)/$(FICHERO_JAR_BSB) -C $(DEST_OBJS)/ $(RUTA_PAQUETE_WRBSB)
136
	$(JAR) $(DISTRIBUCION)/$(FICHERO_JAR_OGR) -C $(DEST_OBJS)/ $(RUTA_PAQUETE_WROGR)
137

    
138

    
139
#*******************************************************************************
140

    
141
install:
142
	
143
	#instalamos la libreria gdal
144

    
145
	@if test -f $(DIR_LIB)/$(LIB); then \
146
		$(RM) $(DIR_LIB)/$(LIB); \
147
	fi;
148
	@if test -f $(DIR_LIB)/$(LIB).$(VERS); then \
149
		$(RM) $(DIR_LIB)/$(LIB).$(VERS); \
150
	fi;
151
	cp $(DISTRIBUCION)/$(LIB).$(VERS) $(DSTNO_LIB)
152
	ln -fs $(DSTNO_LIB)/$(LIB).$(VERS) $(DSTNO_LIB)/$(LIB)
153
	
154
	
155
#*******************************************************************************
156

    
157
header:
158
 	
159
 	#Generaci?n de cabeceras C para el wrapper
160
 
161
	$(JAVAH) -classpath "$(DEST_OBJS)" -d $(INCLUDE) $(FTE_HEADER_GDAL)
162
	$(JAVAH) -classpath "$(DEST_OBJS)" -d $(INCLUDE) $(PAQUETE_GDAL).GdalRasterBand \
163
	$(PAQUETE_GDAL).GdalDriver $(PAQUETE_GDAL).JNIBase $(PAQUETE_BSB).Bsb 	
164
	$(JAVAH) -classpath "$(DEST_OBJS)" -d $(INCLUDE) $(PAQUETE_OGR).OGRRegisterAll $(PAQUETE_OGR).OGRDataSource \
165
	$(PAQUETE_OGR).OGREnvelope $(PAQUETE_OGR).OGRFeature $(PAQUETE_OGR).OGRFeatureDefn $(PAQUETE_OGR).OGRLayer \
166
	$(PAQUETE_OGR).OGRSFDriver $(PAQUETE_OGR).OGRSFDriverRegistrar $(PAQUETE_OGR).OGRFieldDefn $(PAQUETE_OGR).JNIBase \
167
	$(PAQUETE_OGR).OGRSpatialReference $(PAQUETE_OGR).OGRTools $(PAQUETE_OGR).OGRPolygon
168
	
169
	
170
java:
171

    
172

    
173
	#Compilaci?n de los ficheros java gdal
174

    
175
	$(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/GdalBuffer.java -d $(DEST_OBJS)	
176
	$(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/GdalException.java -d $(DEST_OBJS)	
177
	$(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)"
178
	$(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/GdalTools.java $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/JNIBase.java -d $(DEST_OBJS) -classpath "$(DEST_OBJS)"
179
	
180
	#Compilaci?n de OGR
181
	
182
	$(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WROGR)/OGRException.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 -d $(DEST_OBJS) -classpath "$(DEST_OBJS)"
183
	$(JAVAC) $(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)/OGRSpatialReference.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)"
184
	$(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)"
185

    
186
	#Compilaci?n de los ficheros java bsb
187
	
188
	$(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRBSB)/BsbInfo.java -d $(DEST_OBJS)
189
	$(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRBSB)/BsbException.java -d $(DEST_OBJS)
190
	$(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRBSB)/BsbBuffer.java -d $(DEST_OBJS)
191
	$(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRBSB)/Bsb.java -d $(DEST_OBJS) -classpath "$(DEST_OBJS)"
192
	
193

    
194
#*******************************************************************************
195

    
196
test:
197
	cd $(DIR_TEST);  \
198
	$(MAKE) all; \
199
	cd ..;
200
	
201

    
202
#*******************************************************************************
203
.PHONY: clean
204
clean:
205

    
206
	#Borrando objetos y librerias
207
	
208
	$(RM) $(OBJS)		
209
	$(RM) $(DISTRIBUCION)/$(LIB);
210
	$(RM) $(DISTRIBUCION)/$(FICHERO_JAR_GDAL);
211
	$(RM) $(DISTRIBUCION)/$(FICHERO_JAR_BSB);
212
	$(RM) $(DISTRIBUCION)/$(FICHERO_JAR_OGR);
213
	$(RM) $(DISTRIBUCION)/$(FICHERO_JAR_OGR);
214
	$(RRM) $(DEST_OBJS)/*;
215

    
216
	
217