Statistics
| Revision:

svn-gvsig-desktop / trunk / libraries / libjni-gdal / Makefile @ 915

History | View | Annotate | Download (6.55 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 bsb 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

    
22
#Librerias
23

    
24
NOM_LIB = jgdal
25
GDAL_LIB = gdal
26
VERS = 0.0.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 = es/gva/cit
37
DSTNO_LIB = "/lib"
38
LIB = lib$(NOM_LIB).so
39
GDAL_LIB = lib$(GDAL_LIB).so
40
IDL_JAVA_GDAL = $(RUTA_PAQUETE_WRGDAL)/Gdal.java
41
DIR_TEST = ./src-test
42

    
43
#Opciones
44

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

    
52

    
53
FICHERO_JAR_GDAL = $(NOM_LIB).jar
54
FICHERO_JAR_BSB = jbsb.jar
55
PAQUETE_GDAL = es.gva.cit.jgdal
56
FTE_HEADER_GDAL = $(PAQUETE_GDAL).Gdal
57
PAQUETE_BSB = es.gva.cit.jbsb
58

    
59
all:	clean java header jar $(OBJS) $(LIB) 
60

    
61

    
62

    
63
#*******************************************************************************
64

    
65

    
66
$(LIB):	$(OBJS)
67
	
68
	#Generaci?n de libreria jgdal
69

    
70
	$(CXX) $(OPC_LINK)$(LIB) -o $(LIB).$(VERS) $(OBJS) -lc $(FLAGS) -lgdal
71
	@if test -f ./$(LIB).$(VERS); then \
72
		mv ./$(LIB).$(VERS) $(DISTRIBUCION); \
73
	fi;
74

    
75
gdal_interfaz.o:
76
	$(GCC) -c $(FUENTES)/gdal_interfaz.c $(FLAGS)
77

    
78
rasterband_interfaz.o:
79
	$(GCC) -c $(FUENTES)/rasterband_interfaz.c $(FLAGS)
80

    
81
gdaldriver_interfaz.o:
82
	$(GCC) -c $(FUENTES)/gdaldriver_interfaz.c $(FLAGS)
83

    
84
ogrspatialreference_interfaz.o:
85
	$(GCC) -c $(FUENTES)/ogrspatialreference_interfaz.c $(FLAGS)
86
	
87
ogrregisterall_interfaz.o:
88
	$(GCC) -c $(FUENTES)/ogrregisterall_interfaz.c $(FLAGS)
89
		
90
bsb_interfaz.o:
91
	$(GCC) -c $(FUENTES)/bsb_interfaz.c $(FLAGS)
92

    
93
ogrdatasource_interfaz.o:
94
	$(GCC) -c $(FUENTES)/ogrdatasource_interfaz.cpp $(FLAGS)
95

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

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

    
102
ogrfeaturedefn_interfaz.o: 
103
	$(CXX) -c $(FUENTES)/ogrfeaturedefn_interfaz.cpp $(FLAGS)
104

    
105
ogrfielddefn_interfaz.o:
106
	$(GCC) -c $(FUENTES)/ogrfielddefn_interfaz.c $(FLAGS)
107

    
108
ogrlayer_interfaz.o: 
109
	$(CXX) -c $(FUENTES)/ogrlayer_interfaz.cpp $(FLAGS)
110

    
111
ogrsfdriver_interfaz.o: 
112
	$(CXX) -c $(FUENTES)/ogrsfdriver_interfaz.cpp $(FLAGS)
113

    
114
ogrsfdriverregistrar_interfaz.o:
115
	$(CXX) -c $(FUENTES)/ogrsfdriverregistrar_interfaz.cpp $(FLAGS)
116

    
117

    
118
#*******************************************************************************
119

    
120

    
121
jar:
122
	
123
	#Generaci?n del jar con las clases java
124

    
125
	$(JAR) $(DISTRIBUCION)/$(FICHERO_JAR_GDAL) -C $(DEST_OBJS)/ $(RUTA_PAQUETE_WRGDAL)
126
	$(JAR) $(DISTRIBUCION)/$(FICHERO_JAR_BSB) -C $(DEST_OBJS)/ $(RUTA_PAQUETE_WRBSB)
127

    
128

    
129
#*******************************************************************************
130

    
131
install:
132
	
133
	#instalamos la libreria gdal
134

    
135
	@if test -f $(DIR_LIB)/$(LIB); then \
136
		$(RM) $(DIR_LIB)/$(LIB); \
137
	fi;
138
	@if test -f $(DIR_LIB)/$(LIB).$(VERS); then \
139
		$(RM) $(DIR_LIB)/$(LIB).$(VERS); \
140
	fi;
141
	cp $(DISTRIBUCION)/$(LIB).$(VERS) $(DSTNO_LIB)
142
	ln -fs $(DSTNO_LIB)/$(LIB).$(VERS) $(DSTNO_LIB)/$(LIB)
143
	
144
	
145
#*******************************************************************************
146

    
147
header:
148
 	
149
 	#Generaci?n de cabeceras C para el wrapper
150
 
151
	$(JAVAH) -classpath "$(DEST_OBJS)" -d $(INCLUDE) $(FTE_HEADER_GDAL)
152
	$(JAVAH) -classpath "$(DEST_OBJS)" -d $(INCLUDE) $(PAQUETE_GDAL).GdalRasterBand \
153
	$(PAQUETE_GDAL).GdalDriver $(PAQUETE_GDAL).OGRSpatialReference $(PAQUETE_GDAL).JNIBase $(PAQUETE_BSB).Bsb \
154
	$(PAQUETE_GDAL).OGRRegisterAll $(PAQUETE_GDAL).OGRDataSource $(PAQUETE_GDAL).OGREnvelope $(PAQUETE_GDAL).OGRFeature \
155
	$(PAQUETE_GDAL).OGRFeatureDefn $(PAQUETE_GDAL).OGRLayer $(PAQUETE_GDAL).OGRSFDriver $(PAQUETE_GDAL).OGRSFDriverRegistrar \
156
	$(PAQUETE_GDAL).OGRFieldDefn
157
	
158
	
159
java:
160

    
161

    
162
	#Compilaci?n de los ficheros java gdal
163
	
164
	$(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/GdalException.java -d $(DEST_OBJS)
165
	$(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/JNIBase.java -d $(DEST_OBJS) -classpath "$(DEST_OBJS)"
166
	$(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/Options.java -d $(DEST_OBJS)
167
	$(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/GeoTransform.java -d $(DEST_OBJS)
168
	$(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/GdalBuffer.java -d $(DEST_OBJS)
169
	$(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/GdalRasterBand.java -d $(DEST_OBJS) -classpath "$(DEST_OBJS)"
170
	$(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/GdalDriver.java $(FUENTES)/$(IDL_JAVA_GDAL) -d $(DEST_OBJS) -classpath "$(DEST_OBJS)"
171
	
172
	#Compilaci?n de OGR
173
	
174
	$(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/OGRRegisterAll.java $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/OGRSpatialReference.java $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/OGRDataSource.java $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/OGREnvelope.java $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/OGRFeature.java $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/OGRFeatureDefn.java $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/OGRFieldDefn.java $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/OGRLayer.java $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/OGRSFDriver.java $(FUENTES)/$(RUTA_PAQUETE_WRGDAL)/OGRSFDriverRegistrar.java -d $(DEST_OBJS) -classpath "$(DEST_OBJS)"
175

    
176
	#Compilaci?n de los ficheros java bsb
177
	
178
	$(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRBSB)/BsbInfo.java -d $(DEST_OBJS)
179
	$(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRBSB)/BsbException.java -d $(DEST_OBJS)
180
	$(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRBSB)/BsbBuffer.java -d $(DEST_OBJS)
181
	$(JAVAC) $(FUENTES)/$(RUTA_PAQUETE_WRBSB)/Bsb.java -d $(DEST_OBJS) -classpath "$(DEST_OBJS)"
182
	
183

    
184
#*******************************************************************************
185

    
186
test:
187
	cd $(DIR_TEST);  \
188
	$(MAKE) all; \
189
	cd ..;
190
	
191

    
192
#*******************************************************************************
193
.PHONY: clean
194
clean:
195

    
196
	#Borrando objetos y librerias
197
	
198
	$(RM) $(OBJS)		
199
	$(RM) $(DISTRIBUCION)/$(LIB);
200
	$(RM) $(DISTRIBUCION)/$(FICHERO_JAR_GDAL);
201
	$(RM) $(DISTRIBUCION)/$(FICHERO_JAR_BSB);
202
	$(RM) $(DISTRIBUCION)/$(LIB).$(VERS);
203
	cd $(DIR_TEST);  \
204
	$(MAKE) clean; \
205
	cd ..;
206

    
207
	
208