1
#############################################################################
3
# MODULE: GRASS Initialization
4
# AUTHOR(S): Original author unknown - probably CERL
5
# Justin Hickey - Thailand - jhickey@hpcc.nectec.or.th
6
# Markus Neteler, Andrea Antonello
7
# PURPOSE: To create the various scripts and programs which are required
9
# COPYRIGHT: (C) 2000-2008 by the GRASS Development Team
11
# This program is free software under the GNU General Public
12
# License (>=v2). Read the file COPYING that comes with GRASS
15
#############################################################################
17
1
MODULE_TOPDIR = ../..
19
include $(MODULE_TOPDIR)/include/Make/Platform.make
20
include $(MODULE_TOPDIR)/include/Make/Grass.make
21
include $(MODULE_TOPDIR)/include/Make/Rules.make
3
include $(MODULE_TOPDIR)/include/Make/Other.make
4
include $(MODULE_TOPDIR)/include/Make/Compile.make
24
7
PACKAGE ="grasslibs"
26
9
START_UP=grass$(GRASS_VERSION_MAJOR)$(GRASS_VERSION_MINOR)
28
EXTRA_CFLAGS = -DD_LOCATION_NAME=\"$(DEFAULT_LOCATION)\" -DD_GISDBASE=\"$(DEFAULT_DATABASE)\" -DGRASS_VERSION_NUMBER=\"'$(GRASS_VERSION_NUMBER)'\" -DGRASS_VERSION_UPDATE_PKG=\"'$(GRASS_VERSION_UPDATE_PKG)'\"
29
SET_DATA = $(OBJDIR)/set_data.o $(OBJDIR)/mke_mapset.o \
30
$(OBJDIR)/mke_loc.o $(OBJDIR)/chk_dbase.o $(OBJDIR)/other.o
12
-DD_LOCATION_NAME=\"$(DEFAULT_LOCATION)\" \
13
-DD_GISDBASE=\"$(DEFAULT_DATABASE)\" \
14
-DGRASS_VERSION_NUMBER=\"'$(GRASS_VERSION_NUMBER)'\" \
15
-DGRASS_VERSION_UPDATE_PKG=\"'$(GRASS_VERSION_UPDATE_PKG)'\"
33
SET_DATA_PROG = $(ETC)/set_data$(EXE)
17
LIBES = $(GISLIB) $(DATETIMELIB)
39
20
$(ARCH_BINDIR)/$(START_UP) \
21
$(ARCH_DISTDIR)/$(START_UP).tmp \
43
22
$(ETC)/clean_temp$(EXE) \
44
23
$(ETC)/lock$(EXE) \
46
25
$(ETC)/echo$(EXE) \
50
27
$(ETC)/VERSIONNUMBER \
52
$(ETC)/epsg_option.tcl \
53
$(ETC)/file_option.tcl \
55
$(ETC)/grass-xterm-wrapper
28
$(HTMLDIR)/help_loc_struct.png \
29
$(HTMLDIR)/circle_1.png \
30
$(HTMLDIR)/circle_2.png \
31
$(HTMLDIR)/circle_3.png \
32
$(HTMLDIR)/circle_4.png \
33
$(HTMLDIR)/circle_5.png \
34
$(HTMLDIR)/grass_start.png
57
36
ifeq ($(findstring darwin,$(ARCH)),darwin)
59
$(ETC)/grass-xterm-mac \
60
38
$(ETC)/html_browser_mac.sh
63
41
ifneq ($(strip $(MINGW)),)
66
$(ETC)/winlocale$(EXE) \
71
$(MKDIR) $(GISBASE)/docs/html
72
$(INSTALL_DATA) variables.html $(GISBASE)/docs/html/variables.html
73
$(INSTALL_DATA) grass6.html $(GISBASE)/docs/html/grass6.html
74
$(INSTALL_DATA) helptext.html $(GISBASE)/docs/html/helptext.html
75
$(INSTALL_DATA) help_loc_struct.png $(GISBASE)/docs/html/help_loc_struct.png
76
$(INSTALL_DATA) circle_*.png $(GISBASE)/docs/html/
77
$(INSTALL_DATA) grass_start.png $(GISBASE)/docs/html/
79
$(ARCH_BINDIR)/$(START_UP): init.sh grass.src
80
@test -d $(ARCH_BINDIR) || (echo 'ARCH_DISTDIR($(ARCH_BINDIR))' not found; exit 1)
81
@test -w $(ARCH_BINDIR) || (echo '($(ARCH_BINDIR))' not writable; exit 1)
82
rm -f $(ARCH_BINDIR)/$(START_UP) ; true
84
-e \"s#GISBASE_VALUE#$(GISBASE)#\" \
85
grass.src > $(ARCH_BINDIR)/$(START_UP) 2>/dev/null ; true"
86
chmod a+x $(ARCH_BINDIR)/$(START_UP)
88
$(ETC)/Init.sh: init.sh
91
-e \"s#GRASS_VERSION_NUMBER#$(GRASS_VERSION_NUMBER)#\" \
92
-e \"s#GRASS_VERSION_DATE#$(GRASS_VERSION_DATE)#\" \
93
-e \"s#GRASS_VERSION_UPDATE_PKG#$(GRASS_VERSION_UPDATE)#\" \
94
-e \"s#LD_LIBRARY_PATH_VAR#$(LD_LIBRARY_PATH_VAR)#g\" \
95
-e \"s#PERL_COMMAND#$(PERL)#\" \
96
-e \"s#START_UP#$(START_UP)#\" \
97
-e \"s#CONFIG_PROJSHARE#$(PROJSHARE)#\" \
101
$(ETC)/Init.bat: init.bat
104
-e \"s#GRASS_VERSION_NUMBER#$(GRASS_VERSION_NUMBER)#\" \
105
-e \"s#CONFIG_PROJSHARE#$(PROJSHARE)#\" \
110
$(ETC)/set_data$(EXE): $(SET_DATA)
111
$(CC) $(LDFLAGS) -o $@ $(SET_DATA) $(EDITLIB) $(GISLIB) $(DATETIMELIB) $(VASKLIB) $(CURSES) $(MATHLIB) $(XDRLIB)
113
$(ETC)/echo$(EXE): $(OBJDIR)/echo.o
114
$(CC) $(LDFLAGS) $(OBJDIR)/echo.o -o $@
116
$(ETC)/clean_temp$(EXE): $(OBJDIR)/clean_temp.o
117
$(CC) $(LDFLAGS) $(OBJDIR)/clean_temp.o $(GISLIB) $(DATETIMELIB) $(MATHLIB) $(XDRLIB) -o $@
119
$(ETC)/run$(EXE): $(OBJDIR)/run.o
120
$(CC) $(LDFLAGS) $(OBJDIR)/run.o -o $@
122
$(ETC)/lock$(EXE): $(OBJDIR)/lock.o
123
$(CC) $(LDFLAGS) $(OBJDIR)/lock.o $(GISLIB) $(DATETIMELIB) $(MATHLIB) $(XDRLIB) -o $@
43
$(ARCH_BINDIR)/$(START_UP).py \
44
$(ETC)/winlocale$(EXE)
47
HTMLFILES := $(wildcard *.html)
49
default: $(FILES) $(patsubst %,$(HTMLDIR)/%,$(HTMLFILES))
51
ifneq ($(strip $(MINGW)),)
52
$(ARCH_BINDIR)/$(START_UP): grass.sh
53
@test -d $(ARCH_BINDIR) || (echo 'ARCH_BINDIR($(ARCH_BINDIR))' not found; exit 1)
54
@test -w $(ARCH_BINDIR) || (echo 'ARCH_BINDIR($(ARCH_BINDIR))' not writable; exit 1)
57
-e 's#@BINDIR@#$(ARCH_BINDIR)#' \
62
ifneq ($(strip $(MINGW)),)
63
$(ARCH_BINDIR)/$(START_UP).py: grass.py
65
$(ARCH_BINDIR)/$(START_UP): grass.py
69
-e 's#@GISBASE@#$(RUN_GISBASE)#' \
70
-e 's#@GRASS_VERSION_NUMBER@#$(GRASS_VERSION_NUMBER)#' \
71
-e 's#@LD_LIBRARY_PATH_VAR@#$(LD_LIBRARY_PATH_VAR)#' \
72
-e 's#@START_UP@#$(START_UP)#' \
73
-e 's#@CONFIG_PROJSHARE@#$(PROJSHARE)#' \
77
$(ARCH_DISTDIR)/$(START_UP).tmp: grass.py
80
-e 's#@GRASS_VERSION_NUMBER@#$(GRASS_VERSION_NUMBER)#' \
81
-e 's#@START_UP@#$(START_UP)#' \
82
-e 's#@GRASS_CONFIG_DIR@#$(GRASS_CONFIG_DIR)#' \
83
-e 's#@LD_LIBRARY_PATH_VAR@#$(LD_LIBRARY_PATH_VAR)#' \
84
-e 's#@CONFIG_PROJSHARE@#$(PROJSHARE)#' \
87
$(ETC)/echo$(EXE) $(ETC)/run$(EXE): $(ETC)/%$(EXE): $(OBJDIR)/%.o
88
$(call linker_base,$(LINK),$(LDFLAGS),$(MANIFEST_OBJ))
90
$(ETC)/clean_temp$(EXE) $(ETC)/lock$(EXE): $(ETC)/%$(EXE): $(OBJDIR)/%.o
129
93
$(ETC)/winlocale$(EXE): $(OBJDIR)/winlocale.o
130
$(CC) $(LDFLAGS) $(EXTRA_LDFLAGS) -o $@ $^ -lkernel32
94
$(call linker_base,$(LINK),$(LDFLAGS) $(EXTRA_LDFLAGS),$(MANIFEST_OBJ) -lkernel32)
132
96
$(ETC)/VERSIONNUMBER:
141
$(ETC)/grass_intro: grass_intro.txt version.sed
143
sh ./version.sed "$(GRASS_VERSION_NUMBER)" "$(GRASS_VERSION_DATE)" "$(GRASS_VERSION_UPDATE_PKG)" grass_intro.txt > $@
146
$(ETC)/license: license.txt version.sed
148
sh ./version.sed "$(GRASS_VERSION_NUMBER)" "$(GRASS_VERSION_DATE)" "$(GRASS_VERSION_UPDATE_PKG)" license.txt > $@
151
$(ETC)/welcome: welcome.txt version.sed
153
sh ./version.sed "$(GRASS_VERSION_NUMBER)" "$(GRASS_VERSION_DATE)" "$(GRASS_VERSION_UPDATE_PKG)" welcome.txt > $@
159
$(INSTALL_DATA) msgs/*.msg $@
161
$(ETC)/gis_set.tcl: gis_set.tcl
163
$(INSTALL) gis_set.tcl $(ETC)
165
$(ETC)/epsg_option.tcl: epsg_option.tcl
167
$(INSTALL) epsg_option.tcl $(ETC)
169
$(ETC)/file_option.tcl: file_option.tcl
171
$(INSTALL) file_option.tcl $(ETC)
173
$(ETC)/grass-run.sh: grass-run.src
176
-e \"s#LD_LIBRARY_PATH_VAR#$(LD_LIBRARY_PATH_VAR)#g\" \
180
$(ETC)/grass-run.bat: grass-run.bat
181
$(INSTALL) grass-run.bat $(ETC)
183
$(ETC)/grass-xterm-wrapper: grass-xterm-wrapper
184
$(INSTALL) grass-xterm-wrapper $(ETC)
186
$(ETC)/grass-xterm-mac: grass-xterm-mac
187
$(INSTALL) grass-xterm-mac $(ETC)
189
$(ETC)/prompt.sh: prompt.sh
191
$(INSTALL) prompt.sh $(ETC)
193
$(ETC)/html_browser_mac.sh: html_browser_mac.sh
194
$(INSTALL) html_browser_mac.sh $(ETC)
105
$(ETC)/license: $(ETC)/%: %.txt version.sed
107
sh ./version.sed "$(GRASS_VERSION_NUMBER)" "$(GRASS_VERSION_DATE)" "$(GRASS_VERSION_UPDATE_PKG)" $< > $@