Statistics
| Revision:

root / trunk / libraries / libjni-gdal-macosx / Makefile @ 20949

History | View | Annotate | Download (9.08 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:   Ignacio Brodin		brodin@telefonica.net
11
#
12
#*****************************************************************
13

    
14
#Compiladores y aplicaciones
15

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

    
25
NOM_LIB = jgdal
26
GDAL_LIB = gdal
27
VERS = 0.4.0
28

    
29
#Directorios
30

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

    
45
#Opciones
46

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

    
57

    
58

    
59
FICHERO_JAR_GDAL = $(NOM_LIB)-$(VERS).jar
60
FICHERO_JAR_BSB = jbsb.jar
61
PAQUETE_GDAL = es.gva.cit.jgdal
62
FTE_HEADER_GDAL = $(PAQUETE_GDAL).Gdal
63
PAQUETE_BSB = es.gva.cit.jbsb
64
FICHERO_JAR_OGR = jogr.jar
65
PAQUETE_OGR = es.gva.cit.jogr
66

    
67
all:	java header jar $(OBJS) $(LIB) 
68
#test
69

    
70

    
71

    
72
#*******************************************************************************
73

    
74

    
75
$(LIB):	$(OBJS)
76
	
77
	#Generaci?n de libreria jgdal
78

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

    
91
gdal_interfaz.o:
92
	$(GCC) -c $(FUENTES)/gdal_interfaz.c $(FLAGS)
93

    
94
rasterband_interfaz.o:
95
	$(GCC) -c $(FUENTES)/rasterband_interfaz.c $(FLAGS)
96

    
97
gdaldriver_interfaz.o:
98
	$(GCC) -c $(FUENTES)/gdaldriver_interfaz.c $(FLAGS)
99
	
100
colortable_interfaz.o:
101
	$(GCC) -c $(FUENTES)/colortable_interfaz.c $(FLAGS)
102

    
103
ogrspatialreference_interfaz.o:
104
	$(GCC) -c $(FUENTES)/ogrspatialreference_interfaz.c $(FLAGS)
105
	
106
ogrregisterall_interfaz.o:
107
	$(CXX) -c $(FUENTES)/ogrregisterall_interfaz.cpp $(FLAGS)
108
		
109
bsb_interfaz.o:
110
	$(GCC) -c $(FUENTES)/bsb_interfaz.c $(FLAGS)
111

    
112
ogrdatasource_interfaz.o:
113
	$(GCC) -c $(FUENTES)/ogrdatasource_interfaz.cpp $(FLAGS)
114

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

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

    
121
ogrfeaturedefn_interfaz.o: 
122
	$(CXX) -c $(FUENTES)/ogrfeaturedefn_interfaz.cpp $(FLAGS)
123

    
124
ogrfielddefn_interfaz.o:
125
	$(CXX) -c $(FUENTES)/ogrfielddefn_interfaz.cpp $(FLAGS)
126

    
127
ogrlayer_interfaz.o: 
128
	$(CXX) -c $(FUENTES)/ogrlayer_interfaz.cpp $(FLAGS)
129

    
130
ogrsfdriver_interfaz.o: 
131
	$(CXX) -c $(FUENTES)/ogrsfdriver_interfaz.cpp $(FLAGS)
132

    
133
ogrsfdriverregistrar_interfaz.o:
134
	$(CXX) -c $(FUENTES)/ogrsfdriverregistrar_interfaz.cpp $(FLAGS)
135

    
136
ogrtools_interfaz.o:
137
	$(CXX) -c $(FUENTES)/ogrtools_interfaz.cpp $(FLAGS)
138
	
139
ogrpolygon_interfaz.o:
140
	$(CXX) -c $(FUENTES)/ogrpolygon_interfaz.cpp $(FLAGS)
141
	
142
#*******************************************************************************
143

    
144

    
145
jar:
146
	
147
	#Generaci?n del jar con las clases java
148

    
149
	$(JAR) $(DISTRIBUCION)/$(FICHERO_JAR_GDAL) -C $(DEST_OBJS)/ $(RUTA_PAQUETE_WRGDAL)
150
	$(JAR) $(DISTRIBUCION)/$(FICHERO_JAR_BSB) -C $(DEST_OBJS)/ $(RUTA_PAQUETE_WRBSB)
151
	$(JAR) $(DISTRIBUCION)/$(FICHERO_JAR_OGR) -C $(DEST_OBJS)/ $(RUTA_PAQUETE_WROGR)
152

    
153

    
154
#*******************************************************************************
155

    
156
install:
157
	
158
	#instalamos la libreria gdal
159

    
160
	@if test -f $(DIR_LIB)/$(LIB); then \
161
		$(RM) $(DIR_LIB)/$(LIB); \
162
	fi;
163
	@if test -f $(DIR_LIB)/$(LIB).$(VERS); then \
164
		$(RM) $(DIR_LIB)/$(LIB).$(VERS); \
165
	fi;
166
	cp $(DISTRIBUCION)/$(LIB).$(VERS) $(DSTNO_LIB)
167
	ln -fs $(DSTNO_LIB)/$(LIB).$(VERS) $(DSTNO_LIB)/$(LIB)
168
	
169
	
170
#*******************************************************************************
171

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

    
187

    
188
	#Compilaci?n de los ficheros java gdal
189

    
190
	$(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/GdalBuffer.java -d $(DEST_OBJS)	
191
	$(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/GdalException.java $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/GdalColorEntry.java -d $(DEST_OBJS)	
192
	$(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)"
193
	$(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/GdalTools.java $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/JNIBase.java -d $(DEST_OBJS) -classpath "$(DEST_OBJS)"
194
	
195
	#Compilaci?n de OGR
196
	
197
	$(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)"
198
	$(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)"
199
	$(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)"
200

    
201
	#Compilaci?n de los ficheros java bsb
202
	
203
	$(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRBSB)/BsbInfo.java -d $(DEST_OBJS)
204
	$(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRBSB)/BsbException.java -d $(DEST_OBJS)
205
	$(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRBSB)/BsbBuffer.java -d $(DEST_OBJS)
206
	$(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRBSB)/Bsb.java -d $(DEST_OBJS) -classpath "$(DEST_OBJS)"
207
	
208

    
209
#*******************************************************************************
210

    
211
test:
212
	cd $(DIR_TEST);  \
213
	$(MAKE) all; \
214
	cd ..;
215
	
216

    
217
#*******************************************************************************
218
.PHONY: clean
219
clean:
220

    
221
	#Borrando objetos y librerias
222
	
223
	$(RM) $(OBJS)		
224
	$(RM) $(DISTRIBUCION)/$(LIB).$(VERS);
225
	$(RM) $(DISTRIBUCION)/$(FICHERO_JAR_GDAL);
226
	$(RM) $(DISTRIBUCION)/$(FICHERO_JAR_BSB);
227
	$(RM) $(DISTRIBUCION)/$(FICHERO_JAR_OGR);
228
	$(RM) $(DISTRIBUCION)/$(FICHERO_JAR_OGR);
229
	$(RRM) $(DEST_OBJS)/*;
230

    
231
	
232