1include ../../GDALmake.opt
2
3all: generate build
4
5BINDING = perl
6
7SWIGDEFINES = -DPERL_CPAN_NAMESPACE
8
9SWIG_INCLUDES = ../include/perl/callback.i ../include/perl/confess.i ../include/perl/destroy.i ../include/perl/init.i ../include/perl/band.i
10
11include ../SWIGmake.base
12
13generate: ${WRAPPERS}
14	if [ ! -d lib ]; then mkdir lib; fi
15	if [ ! -d "lib/Geo" ]; then mkdir "lib/Geo"; fi
16	if [ ! -d "lib/Geo/GDAL" ]; then mkdir "lib/Geo/GDAL"; fi
17	if [ -f GDAL.pm ]; then mv GDAL.pm lib/Geo; fi
18	if [ -f Const.pm ]; then mv Const.pm lib/Geo/GDAL; fi
19	if [ -f OGR.pm ]; then mv OGR.pm lib/Geo; fi
20	if [ -f OSR.pm ]; then mv OSR.pm lib/Geo; fi
21	if [ -f GNM.pm ]; then mv GNM.pm lib/Geo; fi
22
23build: Makefile_Geo__GDAL
24	$(MAKE) -f Makefile_Geo__GDAL
25	$(MAKE) -f Makefile_Geo__GDAL__Const
26	$(MAKE) -f Makefile_Geo__OSR
27	if [ -f Makefile_Geo__OGR ]; then $(MAKE) -f Makefile_Geo__OGR; fi
28	if [ -f Makefile_Geo__GNM ]; then $(MAKE) -f Makefile_Geo__GNM; fi
29
30Makefile_Geo__GDAL: ${WRAPPERS} Makefile.PL
31	perl Makefile.PL INSTALL_BASE=$(INST_PREFIX)
32
33test: build
34	$(MAKE) -f Makefile_Geo__GDAL test
35
36install: build
37	$(MAKE) -f Makefile_Geo__GDAL install
38	$(MAKE) -f Makefile_Geo__GDAL__Const install
39	$(MAKE) -f Makefile_Geo__OSR install
40	if [ -f Makefile_Geo__OGR ]; then $(MAKE) -f Makefile_Geo__OGR install; fi
41	if [ -f Makefile_Geo__GNM ]; then $(MAKE) -f Makefile_Geo__GNM install; fi
42
43dist: Makefile_Geo__GDAL
44	$(MAKE) -f Makefile_Geo__GDAL dist
45
46clean:
47	-rm -f gdal.bs gdal_wrap.o
48	-rm -f gdalconst.bs gdalconst_wrap.o
49	-rm -f ogr.bs ogr_wrap.o
50	-rm -f osr.bs osr_wrap.o
51	-rm -f gnm.bs gnm_wrap.o
52	-rm -rf blib
53	-rm -f pm_to_blib
54	-rm -f Makefile_Geo__GDAL Makefile_Geo__GDAL__Const Makefile_Geo__OGR Makefile_Geo__OSR Makefile_Geo__GNM
55
56veryclean: clean
57	-rm -f ${WRAPPERS}
58	-rm -f *.pm
59	-rm -f META.* MYMETA.*
60	-rm -f *.tar.gz
61	-rm -f *.bs
62
63doc:
64	perl parse-for-doxygen.pl > all.pm; doxygen; rm -f all.pm
65
66.PHONY: all generate build test install dist clean veryclean doc
67