Routino SVN Repository Browser

Check out the latest version of Routino: svn co http://routino.org/svn/trunk routino

ViewVC logotype

Annotation of /trunk/extras/find-fixme/Makefile

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2058 - (hide annotations) (download)
Sat Aug 8 17:54:04 2020 UTC (4 years, 7 months ago) by amb
File size: 5591 byte(s)
Add options to the makefiles to compile for code coverage or profiling.

1 amb 1367 # find-fixme Makefile
2     #
3     # Part of the Routino routing software.
4     #
5 amb 2058 # This file Copyright 2013-2018, 2020 Andrew M. Bishop
6 amb 1367 #
7     # This program is free software: you can redistribute it and/or modify
8     # it under the terms of the GNU Affero General Public License as published by
9     # the Free Software Foundation, either version 3 of the License, or
10     # (at your option) any later version.
11     #
12     # This program is distributed in the hope that it will be useful,
13     # but WITHOUT ANY WARRANTY; without even the implied warranty of
14     # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15     # GNU Affero General Public License for more details.
16     #
17     # You should have received a copy of the GNU Affero General Public License
18     # along with this program. If not, see <http://www.gnu.org/licenses/>.
19     #
20    
21     # All configuration is in the top-level Makefile.conf
22    
23     include ../../Makefile.conf
24    
25     # Web file paths
26    
27     WEBBINDIR=web/bin
28     WEBDATADIR=web/data
29     WEBWWWDIR=web/www
30    
31     # Compilation targets
32    
33 amb 1804 DEPDIR=.deps
34    
35 amb 1367 C=$(wildcard *.c)
36 amb 1804 D=$(wildcard $(DEPDIR)/*.d)
37 amb 1367
38 amb 1523 ROUTINO_SRC=../../src
39     ROUTINO_WEBWWWDIR=../../web/www/routino
40     ROUTINO_DOCDIR=../../doc/html
41 amb 1367
42 amb 1784 EXE=fixme-finder$(.EXE) fixme-finder-slim$(.EXE) fixme-dumper$(.EXE) fixme-dumper-slim$(.EXE)
43 amb 1367 DATA=fixme.xml
44 amb 1491 WWW_COPY=page-elements.css page-elements.js maplayout.css mapprops.js maploader.js
45     DOC_COPY=style.css
46 amb 1367
47     ########
48    
49 amb 1523 all: all-bin all-data all-www
50 amb 1367
51 amb 1528 all-bin: $(EXE)
52 amb 1523 @[ -d $(WEBBINDIR) ] || mkdir -p $(WEBBINDIR)
53     @for file in $(EXE); do \
54     if [ ! -f $(WEBBINDIR)/$$file ] || [ $$file -nt $(WEBBINDIR)/$$file ]; then \
55     echo cp $$file $(WEBBINDIR) ;\
56     cp -f $$file $(WEBBINDIR) ;\
57     fi ;\
58     done
59 amb 1367
60 amb 1523 all-data:
61     @[ -d $(WEBDATADIR) ] || mkdir -p $(WEBDATADIR)
62     @for file in $(DATA); do \
63     if [ ! -f $(WEBDATADIR)/$$file ] || [ $$file -nt $(WEBDATADIR)/$$file ]; then \
64     echo cp $$file $(WEBDATADIR) ;\
65     cp -f $$file $(WEBDATADIR) ;\
66     fi ;\
67     done
68    
69     all-www:
70     @for file in $(WWW_COPY); do \
71     if [ ! -f $(WEBWWWDIR)/$$file ] || [ $(ROUTINO_WEBWWWDIR)/$$file -nt $(WEBWWWDIR)/$$file ]; then \
72     echo cp $(ROUTINO_WEBWWWDIR)/$$file $(WEBWWWDIR) ;\
73     cp -f $(ROUTINO_WEBWWWDIR)/$$file $(WEBWWWDIR) ;\
74     fi ;\
75     done
76     @for file in $(DOC_COPY); do \
77     if [ ! -f $(WEBWWWDIR)/$$file ] || [ $(ROUTINO_DOCDIR)/$$file -nt $(WEBWWWDIR)/$$file ]; then \
78     echo cp $(ROUTINO_DOCDIR)/$$file $(WEBWWWDIR) ;\
79     cp -f $(ROUTINO_DOCDIR)/$$file $(WEBWWWDIR) ;\
80     fi ;\
81     done
82    
83 amb 1367 ########
84    
85     FIXME_FINDER_OBJ=fixme-finder.o osmparser.o \
86 amb 1523 $(ROUTINO_SRC)/nodesx.o $(ROUTINO_SRC)/segmentsx.o $(ROUTINO_SRC)/waysx.o $(ROUTINO_SRC)/relationsx.o \
87     $(ROUTINO_SRC)/ways.o $(ROUTINO_SRC)/types.o \
88     $(ROUTINO_SRC)/files.o $(ROUTINO_SRC)/logging.o $(ROUTINO_SRC)/logerror.o $(ROUTINO_SRC)/errorlogx.o \
89     $(ROUTINO_SRC)/sorting.o \
90     $(ROUTINO_SRC)/xmlparse.o $(ROUTINO_SRC)/tagging.o \
91     $(ROUTINO_SRC)/uncompress.o $(ROUTINO_SRC)/osmxmlparse.o $(ROUTINO_SRC)/osmpbfparse.o $(ROUTINO_SRC)/osmo5mparse.o
92 amb 1367
93 amb 1784 ifeq ($(HOST),MINGW)
94 amb 1963 FIXME_FINDER_OBJ+=$(ROUTINO_SRC)/mman-win32.o
95 amb 1699 endif
96    
97 amb 1784 fixme-finder$(.EXE) : $(FIXME_FINDER_OBJ)
98 amb 1787 $(LD) $^ -o $@ $(LDFLAGS)
99 amb 1367
100     ########
101    
102     FIXME_FINDER_SLIM_OBJ=fixme-finder-slim.o osmparser.o \
103 amb 1523 $(ROUTINO_SRC)/nodesx-slim.o $(ROUTINO_SRC)/segmentsx-slim.o $(ROUTINO_SRC)/waysx-slim.o $(ROUTINO_SRC)/relationsx-slim.o \
104     $(ROUTINO_SRC)/ways.o $(ROUTINO_SRC)/types.o \
105     $(ROUTINO_SRC)/files.o $(ROUTINO_SRC)/logging.o $(ROUTINO_SRC)/logerror-slim.o $(ROUTINO_SRC)/errorlogx-slim.o \
106     $(ROUTINO_SRC)/sorting.o \
107     $(ROUTINO_SRC)/xmlparse.o $(ROUTINO_SRC)/tagging.o \
108     $(ROUTINO_SRC)/uncompress.o $(ROUTINO_SRC)/osmxmlparse.o $(ROUTINO_SRC)/osmpbfparse.o $(ROUTINO_SRC)/osmo5mparse.o
109 amb 1367
110 amb 1784 ifeq ($(HOST),MINGW)
111 amb 1963 FIXME_FINDER_SLIM_OBJ+=$(ROUTINO_SRC)/mman-win32.o
112 amb 1699 endif
113    
114 amb 1784 fixme-finder-slim$(.EXE) : $(FIXME_FINDER_SLIM_OBJ)
115 amb 1787 $(LD) $^ -o $@ $(LDFLAGS)
116 amb 1367
117     ########
118    
119     FIXME_DUMPER_OBJ=fixme-dumper.o \
120 amb 1523 $(ROUTINO_SRC)/errorlog.o \
121     $(ROUTINO_SRC)/files.o $(ROUTINO_SRC)/logging.o $(ROUTINO_SRC)/xmlparse.o
122 amb 1367
123 amb 1784 ifeq ($(HOST),MINGW)
124 amb 1963 FIXME_DUMPER_OBJ+=$(ROUTINO_SRC)/mman-win32.o
125 amb 1699 endif
126    
127 amb 1784 fixme-dumper$(.EXE) : $(FIXME_DUMPER_OBJ)
128 amb 1787 $(LD) $^ -o $@ $(LDFLAGS)
129 amb 1367
130     ########
131    
132     FIXME_DUMPER_SLIM_OBJ=fixme-dumper-slim.o \
133 amb 1523 $(ROUTINO_SRC)/errorlog-slim.o \
134     $(ROUTINO_SRC)/files.o $(ROUTINO_SRC)/logging.o $(ROUTINO_SRC)/xmlparse.o
135 amb 1367
136 amb 1784 ifeq ($(HOST),MINGW)
137 amb 1963 FIXME_DUMPER_SLIM_OBJ+=$(ROUTINO_SRC)/mman-win32.o
138 amb 1699 endif
139    
140 amb 1784 fixme-dumper-slim$(.EXE) : $(FIXME_DUMPER_SLIM_OBJ)
141 amb 1787 $(LD) $^ -o $@ $(LDFLAGS)
142 amb 1367
143     ########
144    
145 amb 1523 $(ROUTINO_SRC)/%.o :
146     cd $(ROUTINO_SRC) && $(MAKE) $(notdir $@)
147 amb 1367
148 amb 1523 $(ROUTINO_SRC)/%-slim.o :
149     cd $(ROUTINO_SRC) && $(MAKE) $(notdir $@)
150 amb 1367
151 amb 1820 %.o : %.c
152 amb 1921 -@[ -d $(DEPDIR) ] || mkdir $(DEPDIR) || true
153 amb 1804 $(CC) -c $(CFLAGS) -DSLIM=0 -I$(ROUTINO_SRC) $< -o $@ -MMD -MP -MF $(addprefix $(DEPDIR)/,$(addsuffix .d,$(basename $@)))
154 amb 1367
155 amb 1820 %-slim.o : %.c
156 amb 1921 -@[ -d $(DEPDIR) ] || mkdir $(DEPDIR) || true
157 amb 1804 $(CC) -c $(CFLAGS) -DSLIM=1 -I$(ROUTINO_SRC) $< -o $@ -MMD -MP -MF $(addprefix $(DEPDIR)/,$(addsuffix .d,$(basename $@)))
158    
159 amb 1367 ########
160    
161 amb 1528 test:
162 amb 1367
163     ########
164    
165 amb 1528 install:
166 amb 1367
167     ########
168    
169     clean:
170     rm -f *~
171     rm -f *.o
172 amb 1784 cd $(WEBBINDIR) && rm -f $(EXE)
173 amb 1690 cd $(WEBDATADIR) && rm -f $(DATA)
174     cd $(WEBWWWDIR) && rm -f $(WWW_COPY)
175     cd $(WEBWWWDIR) && rm -f $(DOC_COPY)
176 amb 1784 rm -f $(EXE)
177 amb 1690 rm -f $(D)
178 amb 1855 rm -fr $(DEPDIR)
179 amb 1367 rm -f core
180 amb 2058 rm -f *.gcda *.gcno *.gcov gmon.out
181 amb 1367
182     ########
183    
184     distclean: clean
185    
186     ########
187    
188     include $(D)
189    
190     ########
191    
192 amb 1523 .PHONY:: all test install clean distclean
193    
194 amb 1528 .PHONY:: all-bin all-data all-www