forked from qgis/QGIS
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Makefile.win.rules.in
84 lines (71 loc) · 2.55 KB
/
Makefile.win.rules.in
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
MAJOR_VERSION = @MAJOR_VERSION@
MICRO_VERSION = @MICRO_VERSION@
MINOR_VERSION = @MINOR_VERSION@
CXX = @CXX@
LDFLAGS = @LDFLAGS@
STRIP = @STRIP@
INSTALL = @INSTALL@
prefix = @prefix@
BINDIR = $(prefix)
DLLDIR = $(prefix)
QT_LDADD = @QT_LDADD@
GDAL_LDADD = @GDAL_LDADD@
#GDAL_LDADD = -lgdal
GEOS_LDADD = @GEOS_LDADD@
GRASS_BASE = @GRASS_BASE@
GRASS_LIB = @GRASS_LIB@
PROJ_LIB = @PROJ_LIB@
PG_LIB = @PG_LIB@
PG_INC = @PG_INC@
RASTER_A = $(QGTOP)/src/raster/.libs/libqgis_raster.a
COMPOSER_A = $(QGTOP)/src/composer/.libs/libqgis_composer.a
PROJSEL_A = $(QGTOP)/src/widgets/projectionselector/.libs/libqgsprojectionselector.a
CORE_A = $(QGTOP)/src/core/.libs/libqgis_core.a
LEGEND_A = $(QGTOP)/src/legend/.libs/libqgis_legend.a
GUI_A = $(QGTOP)/src/gui/.libs/libqgis_gui.a
RASTER_DLL = -L $(QGTOP)/src/raster/ -lqgis_raster
COMPOSER_DLL = -L $(QGTOP)/src/composer/ -lqgis_composer
PROJSEL_DLL = -L $(QGTOP)/src/widgets/projectionselector/ -lqgis_projsel.dll
CORE_DLL = -L $(QGTOP)/src/core/ -lqgis_core
LEGEND_DLL = -L $(QGTOP)/src/legend/ -lqgis_legend
GUI_DLL = -L $(QGTOP)/src/gui -lqgis_gui
# The order is significant
QGLIBS = $(RASTER_A) $(COMPOSER_A) $(PROJSEL_A) $(CORE_A) $(LEGEND_A) $(GUI_A)
# For qgis.exe the QGIS libs must be twice because of circular references
QGIS_LIBS = $(QGLIBS) $(QGLIBS) \
$(GDAL_LDADD) $(PG_LIB) $(GEOS_LDADD) \
-lproj -lsqlite3 \
$(QT_LDADD) -lwsock32
# And for plugins even 3 times (maybe it would be possible to save
# something changing the order?)
PLUGIN_LIBS = $(GUI_DLL) $(RASTER_DLL) $(LEGEND_DLL) \
$(COMPOSER_DLL) $(PROJSEL_DLL) \
$(GDAL_LDADD) $(PG_LIB) $(GEOS_LDADD) \
-lproj -lsqlite3 \
$(QT_LDADD) -lwsock32
# Rule for subdirs using standard build system (make -f Makefile)
stdsubdirs:
@list='$(STDSUBDIRS)'; \
for subdir in $$list; do \
echo $$subdir ; \
$(MAKE) -C $$subdir || exit 1 ; \
done
# Rule for subdirs using standard win system (make -f Makefile.win)
# Warning: for some strange reason the output DLL library after first
# linking is corrupted. We have to delete the library
# and to call linker again.
winsubdirs:
@list='$(WINSUBDIRS)'; \
for subdir in $$list; do \
echo $$subdir ; \
$(MAKE) -C $$subdir -f Makefile.win || exit 1 ; \
rm -f $$subdir/.libs/*.dll; \
$(MAKE) -C $$subdir -f Makefile.win || exit 1 ; \
done
# Rule instalation (using WINSUBDIRS)
instsubdirs:
@list='$(WINSUBDIRS)'; \
for subdir in $$list; do \
echo $$subdir ; \
$(MAKE) -C $$subdir -f Makefile.win install || exit1 ; \
done