Statistics
| Revision:

svn-gvsig-desktop / tags / v1_1_1_Build_1019 / libraries / libjni-gdal-macosx / Makefile @ 34224

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