annotate Makefile.src.in @ 9765:b426b3cb4e71 draft

(svn r13901) -Fix: make sure REV_NR isn't empty, rev.cpp would fail to compile
author smatz <smatz@openttd.org>
date Thu, 31 Jul 2008 19:19:29 +0000
parents 267a95510fdf
children a8c9ec841194
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
5475
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
1 # Auto-generated file -- DO NOT EDIT
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
2
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
3 CC_HOST = !!CC_HOST!!
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
4 CXX_HOST = !!CXX_HOST!!
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
5 CC_BUILD = !!CC_BUILD!!
5587
c44c070c5032 (svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b.
rubidium <rubidium@openttd.org>
parents: 5535
diff changeset
6 CXX_BUILD = !!CXX_BUILD!!
5475
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
7 WINDRES = !!WINDRES!!
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
8 STRIP = !!STRIP!!
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
9 CC_CFLAGS = !!CC_CFLAGS!!
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
10 CFLAGS = !!CFLAGS!!
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
11 CFLAGS_BUILD = !!CFLAGS_BUILD!!
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
12 LIBS = !!LIBS!!
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
13 LDFLAGS = !!LDFLAGS!!
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
14 BIN_DIR = !!BIN_DIR!!
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
15 LANG_DIR = !!LANG_DIR!!
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
16 SRC_OBJS_DIR = !!SRC_OBJS_DIR!!
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
17 LANG_OBJS_DIR= !!LANG_OBJS_DIR!!
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
18 SRC_DIR = !!SRC_DIR!!
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
19 MEDIA_DIR = !!MEDIA_DIR!!
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
20 TTD = !!TTD!!
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
21 STRGEN = !!STRGEN!!
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
22 ENDIAN_CHECK = !!ENDIAN_CHECK!!
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
23 ENDIAN_FORCE = !!ENDIAN_FORCE!!
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
24 OS = !!OS!!
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
25 STAGE = !!STAGE!!
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
26 MAKEDEPEND = !!MAKEDEPEND!!
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
27 CFLAGS_MAKEDEP= !!CFLAGS_MAKEDEP!!
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
28 SORT = !!SORT!!
5535
587cee1d0031 (svn r7866) -Fix (r7759): ./configure --revision=[revision] did not work as intended.
rubidium <rubidium@openttd.org>
parents: 5496
diff changeset
29 REVISION = !!REVISION!!
6081
31245c7b2e37 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight <truelight@openttd.org>
parents: 5979
diff changeset
30 AWK = !!AWK!!
6523
73261dfd20de (svn r9710) -Add: added support for GCC 2.95. This makes MorphOS target alive again. With a big thanks to tokai and Rubidium!!
truelight <truelight@openttd.org>
parents: 6104
diff changeset
31 GCC295 = !!GCC295!!
5475
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
32 CONFIG_CACHE_COMPILER = $(SRC_OBJS_DIR)/!!CONFIG_CACHE_COMPILER!!
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
33 CONFIG_CACHE_LINKER = $(SRC_OBJS_DIR)/!!CONFIG_CACHE_LINKER!!
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
34 CONFIG_CACHE_ENDIAN = $(SRC_OBJS_DIR)/!!CONFIG_CACHE_ENDIAN!!
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
35 CONFIG_CACHE_SOURCE = $(SRC_OBJS_DIR)/!!CONFIG_CACHE_SOURCE!!
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
36 CONFIG_CACHE_VERSION = $(SRC_OBJS_DIR)/!!CONFIG_CACHE_VERSION!!
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
37
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
38 OBJS_C := !!OBJS_C!!
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
39 OBJS_CPP := !!OBJS_CPP!!
5941
d0e1f93e603a (svn r8605) -Codechange: [OSX] changed all objective C to objective C++
bjarni <bjarni@openttd.org>
parents: 5650
diff changeset
40 OBJS_MM := !!OBJS_MM!!
5475
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
41 OBJS_RC := !!OBJS_RC!!
5941
d0e1f93e603a (svn r8605) -Codechange: [OSX] changed all objective C to objective C++
bjarni <bjarni@openttd.org>
parents: 5650
diff changeset
42 OBJS := $(OBJS_C) $(OBJS_CPP) $(OBJS_MM) $(OBJS_RC)
5475
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
43 SRCS := !!SRCS!!
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
44
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
45 # All C-files depend on those 3 files
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
46 FILE_DEP := $(CONFIG_CACHE_COMPILER) $(LANG_OBJS_DIR)/table/strings.h endian_target.h
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
47 # Create all dirs and subdirs
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
48 RES := $(shell mkdir -p $(BIN_DIR) $(sort $(dir $(OBJS))))
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
49
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
50 # Make sure endian_target.h is reasable as if it was in the src/ dir
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
51 CFLAGS += -I $(SRC_OBJS_DIR) -I $(LANG_OBJS_DIR)
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
52
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
53 ENDIAN_TARGETS := endian_target.h $(ENDIAN_CHECK)
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
54
6523
73261dfd20de (svn r9710) -Add: added support for GCC 2.95. This makes MorphOS target alive again. With a big thanks to tokai and Rubidium!!
truelight <truelight@openttd.org>
parents: 6104
diff changeset
55 # This 'sed' basicly just removes 'const' from the line if it is a 2+D array
73261dfd20de (svn r9710) -Add: added support for GCC 2.95. This makes MorphOS target alive again. With a big thanks to tokai and Rubidium!!
truelight <truelight@openttd.org>
parents: 6104
diff changeset
56 # For more information, please check:
73261dfd20de (svn r9710) -Add: added support for GCC 2.95. This makes MorphOS target alive again. With a big thanks to tokai and Rubidium!!
truelight <truelight@openttd.org>
parents: 6104
diff changeset
57 # http://maillist.openttd.org/pipermail/devs/2007-April/000284.html
73261dfd20de (svn r9710) -Add: added support for GCC 2.95. This makes MorphOS target alive again. With a big thanks to tokai and Rubidium!!
truelight <truelight@openttd.org>
parents: 6104
diff changeset
58 # http://maillist.openttd.org/pipermail/devs/2007-February/000248.html
73261dfd20de (svn r9710) -Add: added support for GCC 2.95. This makes MorphOS target alive again. With a big thanks to tokai and Rubidium!!
truelight <truelight@openttd.org>
parents: 6104
diff changeset
59 GCC295_FIX=sed -r 's/^(\t*)(.*)( const )([A-Za-z0-9_ ]+(\[.*\]){2,})(( = \{)|(;))(.*)$$/\1\2 \4\6\8\9/g'
73261dfd20de (svn r9710) -Add: added support for GCC 2.95. This makes MorphOS target alive again. With a big thanks to tokai and Rubidium!!
truelight <truelight@openttd.org>
parents: 6104
diff changeset
60 # This 'sed' removes the 3rd '4' in the # lines of the -E output of
73261dfd20de (svn r9710) -Add: added support for GCC 2.95. This makes MorphOS target alive again. With a big thanks to tokai and Rubidium!!
truelight <truelight@openttd.org>
parents: 6104
diff changeset
61 # gcc 2.95.3 and lower, as it should indicate that it is a C-linkage, but the
73261dfd20de (svn r9710) -Add: added support for GCC 2.95. This makes MorphOS target alive again. With a big thanks to tokai and Rubidium!!
truelight <truelight@openttd.org>
parents: 6104
diff changeset
62 # compiler can't handle that information (just don't ask). So we remove it
73261dfd20de (svn r9710) -Add: added support for GCC 2.95. This makes MorphOS target alive again. With a big thanks to tokai and Rubidium!!
truelight <truelight@openttd.org>
parents: 6104
diff changeset
63 # and then it compiles happily and without bitching :)
7256
7843e26f5f1d (svn r10563) -Fix: gcc 2.95 (which is still needed for MorphOS :() does have trouble with using the protected/private variables of the enclosing class (and super classes of that enclosing class).
rubidium <rubidium@openttd.org>
parents: 6918
diff changeset
64 # Furthermore gcc 2.95 has some trouble with protected and private when
7843e26f5f1d (svn r10563) -Fix: gcc 2.95 (which is still needed for MorphOS :() does have trouble with using the protected/private variables of the enclosing class (and super classes of that enclosing class).
rubidium <rubidium@openttd.org>
parents: 6918
diff changeset
65 # accessing the protected/private stuff of the enclosing class (or the
7843e26f5f1d (svn r10563) -Fix: gcc 2.95 (which is still needed for MorphOS :() does have trouble with using the protected/private variables of the enclosing class (and super classes of that enclosing class).
rubidium <rubidium@openttd.org>
parents: 6918
diff changeset
66 # super class of the enclosing class).
7843e26f5f1d (svn r10563) -Fix: gcc 2.95 (which is still needed for MorphOS :() does have trouble with using the protected/private variables of the enclosing class (and super classes of that enclosing class).
rubidium <rubidium@openttd.org>
parents: 6918
diff changeset
67 GCC295_FIX_2=sed -e 's|\(^\# [0-9][0-9]* "[^"]*"[ 0-9]*\) 4$$|\1|g;s|private:|public:|g;s|protected:|public:|g'
6523
73261dfd20de (svn r9710) -Add: added support for GCC 2.95. This makes MorphOS target alive again. With a big thanks to tokai and Rubidium!!
truelight <truelight@openttd.org>
parents: 6104
diff changeset
68
5475
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
69 # Check if we want to show what we are doing
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
70 ifdef VERBOSE
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
71 Q =
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
72 E = @true
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
73 else
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
74 Q = @
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
75 E = @echo
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
76 endif
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
77
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
78 # Our default target
5610
5762b3a3883d (svn r8067) -Fix (r7759): if bin/$(TTD) was removed, it did not get placed back on make unless $(TTD) got relinked.
rubidium <rubidium@openttd.org>
parents: 5587
diff changeset
79 all: $(BIN_DIR)/$(TTD)
5475
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
80
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
81 # This are 2 rules that are pointing back to STRGEN stuff.
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
82 # There is not really a need to have them here, but in case
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
83 # some weirdo wants to run 'make' in the 'src' dir and expects
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
84 # the languages to be recompiled, this catches that case and
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
85 # takes care of it nicely.
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
86 $(LANG_OBJS_DIR)/$(STRGEN):
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
87 $(MAKE) -C $(LANG_OBJS_DIR) $(STRGEN)
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
88
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
89 $(LANG_OBJS_DIR)/table/strings.h: $(LANG_DIR)/english.txt $(LANG_OBJS_DIR)/$(STRGEN)
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
90 $(MAKE) -C $(LANG_OBJS_DIR) table/strings.h
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
91
9457
267a95510fdf (svn r13375) -Add: logging of actions that could possibly cause desyncs and crashes to simplify debugging. See readme.txt for details
smatz <smatz@openttd.org>
parents: 7916
diff changeset
92
267a95510fdf (svn r13375) -Add: logging of actions that could possibly cause desyncs and crashes to simplify debugging. See readme.txt for details
smatz <smatz@openttd.org>
parents: 7916
diff changeset
93 # Determine if we are using a modified version
267a95510fdf (svn r13375) -Add: logging of actions that could possibly cause desyncs and crashes to simplify debugging. See readme.txt for details
smatz <smatz@openttd.org>
parents: 7916
diff changeset
94 ifeq ($(shell if test -d $(SRC_DIR)/.svn; then echo 1; fi), 1)
267a95510fdf (svn r13375) -Add: logging of actions that could possibly cause desyncs and crashes to simplify debugging. See readme.txt for details
smatz <smatz@openttd.org>
parents: 7916
diff changeset
95 REV_MODIFIED := $(shell svnversion $(SRC_DIR) | sed -n 's/.*\(M\).*/\1/p' )
267a95510fdf (svn r13375) -Add: logging of actions that could possibly cause desyncs and crashes to simplify debugging. See readme.txt for details
smatz <smatz@openttd.org>
parents: 7916
diff changeset
96 else
267a95510fdf (svn r13375) -Add: logging of actions that could possibly cause desyncs and crashes to simplify debugging. See readme.txt for details
smatz <smatz@openttd.org>
parents: 7916
diff changeset
97 # Are we a git dir?
267a95510fdf (svn r13375) -Add: logging of actions that could possibly cause desyncs and crashes to simplify debugging. See readme.txt for details
smatz <smatz@openttd.org>
parents: 7916
diff changeset
98 ifeq ($(shell if test -d $(SRC_DIR)/../.git; then echo 1; fi), 1)
267a95510fdf (svn r13375) -Add: logging of actions that could possibly cause desyncs and crashes to simplify debugging. See readme.txt for details
smatz <smatz@openttd.org>
parents: 7916
diff changeset
99 REV_MODIFIED := $(shell if cd "$(SRC_DIR)/.." && git diff-index HEAD src | read dummy; then echo M; fi)
267a95510fdf (svn r13375) -Add: logging of actions that could possibly cause desyncs and crashes to simplify debugging. See readme.txt for details
smatz <smatz@openttd.org>
parents: 7916
diff changeset
100 else
267a95510fdf (svn r13375) -Add: logging of actions that could possibly cause desyncs and crashes to simplify debugging. See readme.txt for details
smatz <smatz@openttd.org>
parents: 7916
diff changeset
101 # Are we a hg (Mercurial) dir?
267a95510fdf (svn r13375) -Add: logging of actions that could possibly cause desyncs and crashes to simplify debugging. See readme.txt for details
smatz <smatz@openttd.org>
parents: 7916
diff changeset
102 ifeq ($(shell if test -d $(SRC_DIR)/../.hg; then echo 1; fi), 1)
267a95510fdf (svn r13375) -Add: logging of actions that could possibly cause desyncs and crashes to simplify debugging. See readme.txt for details
smatz <smatz@openttd.org>
parents: 7916
diff changeset
103 REV_MODIFIED := $(shell if hg status $(SRC_DIR) | grep -v '^?' | read dummy; then echo M; fi)
267a95510fdf (svn r13375) -Add: logging of actions that could possibly cause desyncs and crashes to simplify debugging. See readme.txt for details
smatz <smatz@openttd.org>
parents: 7916
diff changeset
104 else
267a95510fdf (svn r13375) -Add: logging of actions that could possibly cause desyncs and crashes to simplify debugging. See readme.txt for details
smatz <smatz@openttd.org>
parents: 7916
diff changeset
105 MODIFIED="1"
267a95510fdf (svn r13375) -Add: logging of actions that could possibly cause desyncs and crashes to simplify debugging. See readme.txt for details
smatz <smatz@openttd.org>
parents: 7916
diff changeset
106 endif
267a95510fdf (svn r13375) -Add: logging of actions that could possibly cause desyncs and crashes to simplify debugging. See readme.txt for details
smatz <smatz@openttd.org>
parents: 7916
diff changeset
107 endif
267a95510fdf (svn r13375) -Add: logging of actions that could possibly cause desyncs and crashes to simplify debugging. See readme.txt for details
smatz <smatz@openttd.org>
parents: 7916
diff changeset
108 endif
267a95510fdf (svn r13375) -Add: logging of actions that could possibly cause desyncs and crashes to simplify debugging. See readme.txt for details
smatz <smatz@openttd.org>
parents: 7916
diff changeset
109
267a95510fdf (svn r13375) -Add: logging of actions that could possibly cause desyncs and crashes to simplify debugging. See readme.txt for details
smatz <smatz@openttd.org>
parents: 7916
diff changeset
110 ifneq ($(MODIFIED),"1")
267a95510fdf (svn r13375) -Add: logging of actions that could possibly cause desyncs and crashes to simplify debugging. See readme.txt for details
smatz <smatz@openttd.org>
parents: 7916
diff changeset
111 ifeq ($(REV_MODIFIED),)
267a95510fdf (svn r13375) -Add: logging of actions that could possibly cause desyncs and crashes to simplify debugging. See readme.txt for details
smatz <smatz@openttd.org>
parents: 7916
diff changeset
112 MODIFIED="0"
267a95510fdf (svn r13375) -Add: logging of actions that could possibly cause desyncs and crashes to simplify debugging. See readme.txt for details
smatz <smatz@openttd.org>
parents: 7916
diff changeset
113 else
267a95510fdf (svn r13375) -Add: logging of actions that could possibly cause desyncs and crashes to simplify debugging. See readme.txt for details
smatz <smatz@openttd.org>
parents: 7916
diff changeset
114 MODIFIED="2"
267a95510fdf (svn r13375) -Add: logging of actions that could possibly cause desyncs and crashes to simplify debugging. See readme.txt for details
smatz <smatz@openttd.org>
parents: 7916
diff changeset
115 endif
267a95510fdf (svn r13375) -Add: logging of actions that could possibly cause desyncs and crashes to simplify debugging. See readme.txt for details
smatz <smatz@openttd.org>
parents: 7916
diff changeset
116 endif
267a95510fdf (svn r13375) -Add: logging of actions that could possibly cause desyncs and crashes to simplify debugging. See readme.txt for details
smatz <smatz@openttd.org>
parents: 7916
diff changeset
117
5475
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
118 # Make the revision number
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
119 ifdef REVISION
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
120 REV := $(REVISION)
7786
7c4a4fca3a39 (svn r11336) -Fix r11330: '#' means comment in gmake, so don't use it in seds
truelight <truelight@openttd.org>
parents: 7785
diff changeset
121 REV_NR := $(shell echo $(REVISION) | sed "s/[^0-9]//g")
5475
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
122 else
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
123 # Are we a SVN dir?
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
124 ifeq ($(shell if test -d $(SRC_DIR)/.svn; then echo 1; fi), 1)
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
125 # Find if the local source if modified
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
126 # Find the revision like: rXXXX-branch
6081
31245c7b2e37 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight <truelight@openttd.org>
parents: 5979
diff changeset
127 REV := $(shell LC_ALL=C svn info $(SRC_DIR) | $(AWK) '/^URL:.*branch/ { split($$2, a, "/"); BRANCH="-"a[5] } /^Last Changed Rev:/ { REV="r"$$4"$(REV_MODIFIED)" } END { print REV BRANCH }')
7780
4301f74086b2 (svn r11330) -Add: OTTD version checking for NewGRFs. This allows NewGRFs to do something different for different versions of OpenTTD, like disabling it for too low versions or loading different graphics.
rubidium <rubidium@openttd.org>
parents: 7618
diff changeset
128 REV_NR := $(shell LC_ALL=C svn info $(SRC_DIR) | $(AWK) '/^Last Changed Rev:/ { print $$4 }')
6812
32e4fae77a35 (svn r10051) -Add: git "version" detection so we've got at least some indication what version we're playing when using git ;)
rubidium <rubidium@openttd.org>
parents: 6523
diff changeset
129 else
32e4fae77a35 (svn r10051) -Add: git "version" detection so we've got at least some indication what version we're playing when using git ;)
rubidium <rubidium@openttd.org>
parents: 6523
diff changeset
130 # Are we a git dir?
32e4fae77a35 (svn r10051) -Add: git "version" detection so we've got at least some indication what version we're playing when using git ;)
rubidium <rubidium@openttd.org>
parents: 6523
diff changeset
131 ifeq ($(shell if test -d $(SRC_DIR)/../.git; then echo 1; fi), 1)
7618
73db71c7da86 (svn r11148) -Codechange: add support for getting version numbers from Mercurial/HG instead of norev000 (when using a Mercurial/HG clone that is).
rubidium <rubidium@openttd.org>
parents: 7564
diff changeset
132 # Find the revision like: gXXXXM-branch
9457
267a95510fdf (svn r13375) -Add: logging of actions that could possibly cause desyncs and crashes to simplify debugging. See readme.txt for details
smatz <smatz@openttd.org>
parents: 7916
diff changeset
133 REV := g$(shell if head=`LC_ALL=C git rev-parse --verify HEAD 2>/dev/null`; then echo "$$head" | cut -c1-8; fi)$(REV_MODIFIED)$(shell git branch|grep '[*]' | sed 's/\* /-/;s/^-master$$//')
7915
ced6a3f5ba62 (svn r11468) -Fix (r11330): rev number detection didn't work for git with msys/mingw
glx <glx@openttd.org>
parents: 7786
diff changeset
134 REV_NR := $(shell LC_ALL=C cd "$(SRC_DIR)/.." && git log --pretty=format:%s src | grep -m 1 "^(svn r[0-9]*)" | sed "s/.*(svn r\([0-9]*\)).*/\1/" )
7618
73db71c7da86 (svn r11148) -Codechange: add support for getting version numbers from Mercurial/HG instead of norev000 (when using a Mercurial/HG clone that is).
rubidium <rubidium@openttd.org>
parents: 7564
diff changeset
135 else
73db71c7da86 (svn r11148) -Codechange: add support for getting version numbers from Mercurial/HG instead of norev000 (when using a Mercurial/HG clone that is).
rubidium <rubidium@openttd.org>
parents: 7564
diff changeset
136 # Are we a hg (Mercurial) dir?
73db71c7da86 (svn r11148) -Codechange: add support for getting version numbers from Mercurial/HG instead of norev000 (when using a Mercurial/HG clone that is).
rubidium <rubidium@openttd.org>
parents: 7564
diff changeset
137 ifeq ($(shell if test -d $(SRC_DIR)/../.hg; then echo 1; fi), 1)
73db71c7da86 (svn r11148) -Codechange: add support for getting version numbers from Mercurial/HG instead of norev000 (when using a Mercurial/HG clone that is).
rubidium <rubidium@openttd.org>
parents: 7564
diff changeset
138 # Find the revision like: hXXXXM-branch
9457
267a95510fdf (svn r13375) -Add: logging of actions that could possibly cause desyncs and crashes to simplify debugging. See readme.txt for details
smatz <smatz@openttd.org>
parents: 7916
diff changeset
139 REV := h$(shell if head=`LC_ALL=C hg tip 2>/dev/null`; then echo "$$head" | head -n 1 | cut -c19-26; fi)$(REV_MODIFIED)$(shell hg branch | sed 's/^/-/;s/^-default$$//')
7915
ced6a3f5ba62 (svn r11468) -Fix (r11330): rev number detection didn't work for git with msys/mingw
glx <glx@openttd.org>
parents: 7786
diff changeset
140 REV_NR := $(shell LC_ALL=C hg log -k "svn" -l 1 --template "{desc}\n" $(SRC_DIR) | grep -m 1 "^(svn r[0-9]*)" | sed "s/.*(svn r\([0-9]*\)).*/\1/" )
7618
73db71c7da86 (svn r11148) -Codechange: add support for getting version numbers from Mercurial/HG instead of norev000 (when using a Mercurial/HG clone that is).
rubidium <rubidium@openttd.org>
parents: 7564
diff changeset
141 endif
5475
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
142 endif
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
143 endif
6812
32e4fae77a35 (svn r10051) -Add: git "version" detection so we've got at least some indication what version we're playing when using git ;)
rubidium <rubidium@openttd.org>
parents: 6523
diff changeset
144 endif
32e4fae77a35 (svn r10051) -Add: git "version" detection so we've got at least some indication what version we're playing when using git ;)
rubidium <rubidium@openttd.org>
parents: 6523
diff changeset
145
9765
b426b3cb4e71 (svn r13901) -Fix: make sure REV_NR isn't empty, rev.cpp would fail to compile
smatz <smatz@openttd.org>
parents: 9457
diff changeset
146 # Make sure we have something in REV and REV_NR
5475
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
147 ifeq ($(REV),)
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
148 REV := norev000
9765
b426b3cb4e71 (svn r13901) -Fix: make sure REV_NR isn't empty, rev.cpp would fail to compile
smatz <smatz@openttd.org>
parents: 9457
diff changeset
149 endif
b426b3cb4e71 (svn r13901) -Fix: make sure REV_NR isn't empty, rev.cpp would fail to compile
smatz <smatz@openttd.org>
parents: 9457
diff changeset
150 ifeq ($(REV_NR),)
7780
4301f74086b2 (svn r11330) -Add: OTTD version checking for NewGRFs. This allows NewGRFs to do something different for different versions of OpenTTD, like disabling it for too low versions or loading different graphics.
rubidium <rubidium@openttd.org>
parents: 7618
diff changeset
151 REV_NR := 0
5475
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
152 endif
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
153
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
154 # This helps to recompile if flags change
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
155 RES := $(shell if [ "`cat $(CONFIG_CACHE_COMPILER) 2>/dev/null`" != "$(CC_CFLAGS) $(CFLAGS)" ]; then echo "$(CC_CFLAGS) $(CFLAGS)" > $(CONFIG_CACHE_COMPILER); fi )
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
156 RES := $(shell if [ "`cat $(CONFIG_CACHE_LINKER) 2>/dev/null`" != "$(LDFLAGS) $(LIBS)" ]; then echo "$(LDFLAGS) $(LIBS)" > $(CONFIG_CACHE_LINKER); fi )
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
157 RES := $(shell if [ "`cat $(CONFIG_CACHE_ENDIAN) 2>/dev/null`" != "$(ENDIAN_FORCE)" ]; then echo "$(ENDIAN_FORCE)" > $(CONFIG_CACHE_ENDIAN); fi )
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
158
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
159 # If there is a change in the source-file-list, make sure we recheck the deps
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
160 RES := $(shell if [ "`cat $(CONFIG_CACHE_SOURCE) 2>/dev/null`" != "$(SRCS)" ]; then echo "$(SRCS)" > $(CONFIG_CACHE_SOURCE); fi )
5587
c44c070c5032 (svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b.
rubidium <rubidium@openttd.org>
parents: 5535
diff changeset
161 # If there is a change in the revision, make sure we recompile rev.cpp
5475
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
162 RES := $(shell if [ "`cat $(CONFIG_CACHE_VERSION) 2>/dev/null`" != "$(REV)" ]; then echo "$(REV)" > $(CONFIG_CACHE_VERSION); fi )
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
163
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
164 ifndef MAKEDEPEND
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
165 # The slow, but always correct, dep-check
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
166 DEP_MASK := %.d
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
167 DEPS := $(OBJS:%.o=%.d)
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
168
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
169 # Only include the deps if we are compiling everything
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
170 ifeq ($(filter $(ENDIAN_TARGETS) %.o clean mrproper, $(MAKECMDGOALS)),)
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
171 -include $(DEPS)
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
172 else
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
173 # In case we want to compile a single target, include the .d file for it
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
174 ifneq ($(filter %.o, $(MAKECMDGOALS)),)
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
175 SINGLE_DEP := $(filter %.o, $(MAKECMDGOALS))
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
176 -include $(SINGLE_DEP:%.o=%.d)
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
177 endif
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
178 endif
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
179
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
180 # Find the deps via GCC. Rarely wrong, but a bit slow
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
181
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
182 $(OBJS_C:%.o=%.d): %.d: $(SRC_DIR)/%.c $(FILE_DEP)
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
183 $(E) '$(STAGE) DEP $(<:$(SRC_DIR)/%.c=%.c)'
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
184 $(Q)$(CC_HOST) $(CC_CFLAGS) $(CFLAGS) -MM $< | sed 's#^$(@F:%.d=%.o):#$@ $(@:%.d=%.o):#' > $@
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
185
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
186 $(OBJS_CPP:%.o=%.d): %.d: $(SRC_DIR)/%.cpp $(FILE_DEP)
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
187 $(E) '$(STAGE) DEP $(<:$(SRC_DIR)/%.cpp=%.cpp)'
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
188 $(Q)$(CXX_HOST) $(CFLAGS) -MM $< | sed 's#^$(@F:%.d=%.o):#$@ $(@:%.d=%.o):#' > $@
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
189
5941
d0e1f93e603a (svn r8605) -Codechange: [OSX] changed all objective C to objective C++
bjarni <bjarni@openttd.org>
parents: 5650
diff changeset
190 $(OBJS_MM:%.o=%.d): %.d: $(SRC_DIR)/%.mm $(FILE_DEP)
d0e1f93e603a (svn r8605) -Codechange: [OSX] changed all objective C to objective C++
bjarni <bjarni@openttd.org>
parents: 5650
diff changeset
191 $(E) '$(STAGE) DEP $(<:$(SRC_DIR)/%.mm=%.mm)'
d0e1f93e603a (svn r8605) -Codechange: [OSX] changed all objective C to objective C++
bjarni <bjarni@openttd.org>
parents: 5650
diff changeset
192 $(Q)$(CC_HOST) $(CFLAGS) -MM $< | sed 's#^$(@F:%.d=%.o):#$@ $(@:%.d=%.o):#' > $@
5475
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
193
5478
87717a3b51fc (svn r7762) [Configure] -Fix: .rc files were not ignored in old DEP system
truelight <truelight@openttd.org>
parents: 5475
diff changeset
194 $(OBJS_RC:%.o=%.d): %.d: $(SRC_DIR)/%.rc $(FILE_DEP)
5941
d0e1f93e603a (svn r8605) -Codechange: [OSX] changed all objective C to objective C++
bjarni <bjarni@openttd.org>
parents: 5650
diff changeset
195 $(E) '$(STAGE) DEP $(<:$(SRC_DIR)/%.mm=%.mm)'
5478
87717a3b51fc (svn r7762) [Configure] -Fix: .rc files were not ignored in old DEP system
truelight <truelight@openttd.org>
parents: 5475
diff changeset
196 $(Q)touch $@
87717a3b51fc (svn r7762) [Configure] -Fix: .rc files were not ignored in old DEP system
truelight <truelight@openttd.org>
parents: 5475
diff changeset
197
5475
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
198 else
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
199 # The much faster, but can be wrong, dep-check
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
200 DEP_MASK :=
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
201 DEPS := Makefile.dep
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
202
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
203 # Only include the deps if we are not cleaning
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
204 ifeq ($(filter $(ENDIAN_TARGETS) depend clean mrproper, $(MAKECMDGOALS)),)
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
205 -include Makefile.dep
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
206 endif
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
207
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
208 # Make sure that only 'make depend' ALWAYS triggers a recheck
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
209 ifeq ($(filter depend, $(MAKECMDGOALS)),)
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
210 Makefile.dep: $(FILE_DEP) $(SRCS:%=$(SRC_DIR)/%) $(CONFIG_CACHE_SOURCE)
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
211 else
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
212 Makefile.dep: FORCE
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
213 endif
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
214 $(E) '$(STAGE) DEP CHECK (all files)'
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
215 $(Q)rm -f Makefile.dep.tmp
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
216 $(Q)touch Makefile.dep.tmp
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
217
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
218 # Calculate the deps via makedepend
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
219 $(Q)$(MAKEDEPEND) -f$(SRC_OBJS_DIR)/Makefile.dep.tmp -o.o -Y -v -- $(CFLAGS_MAKEDEP) -- $(SRCS:%=$(SRC_DIR)/%) 2>/dev/null
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
220
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
221 # Convert x:/... paths to /x/... for mingw
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
222 ifeq ($(OS), MINGW)
6104
a4daf7c49a8f (svn r8839) -Fix: escape slashes in sed for mingw Makefile.dep stuff. It worked with sed 3.02 (provided by msys) but sed 4.1.4 (from gnuwin32.sf.net) failed.
glx <glx@openttd.org>
parents: 6084
diff changeset
223 @cat Makefile.dep.tmp | sed 's@\([a-zA-Z]\):\/@\/\1\/@g' > Makefile.dep.tmp.mingw
5475
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
224 @cp Makefile.dep.tmp.mingw Makefile.dep.tmp
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
225 @rm -f Makefile.dep.tmp.mingw
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
226 endif
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
227
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
228 # Remove all comments and includes that don't start with $(SRC_DIR)
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
229 # Remove $(SRC_DIR) from object-file-name
6081
31245c7b2e37 (svn r8814) [Config] -Add: added --awk and detect_awk. We now try to find an awk on the user system which allows gsub(). If not found, you can define one yourself, or it tells you versions you might want to install
truelight <truelight@openttd.org>
parents: 5979
diff changeset
230 @$(AWK) ' \
5475
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
231 /^# DO NOT/ { print $$0 ; next} \
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
232 /^#/ {next} \
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
233 /:/ { \
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
234 left = NF - 1; \
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
235 for (n = 2; n <= NF; n++) { \
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
236 if (match($$n, "^$(SRC_DIR)") == 0) { \
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
237 $$n = ""; \
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
238 left--; \
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
239 } \
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
240 } \
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
241 gsub("$(SRC_DIR)/", "", $$1); \
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
242 if (left > 0) { \
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
243 print $$0; \
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
244 $$1 = "Makefile.dep:"; \
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
245 print $$0; \
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
246 } \
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
247 next \
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
248 } \
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
249 { \
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
250 print $$0 \
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
251 } \
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
252 ' < Makefile.dep.tmp | sed 's/ */ /g;s/ $$//' | $(SORT) > Makefile.dep
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
253
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
254 $(Q)rm -f Makefile.dep.tmp Makefile.dep.tmp.bak
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
255
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
256 endif
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
257
5650
fcb1e4785a04 (svn r8109) -Fix r5693: ignore .hpp to avoid problems with deps
glx <glx@openttd.org>
parents: 5610
diff changeset
258 # Avoid problems with deps if a .h/.hpp file is deleted without the deps
5475
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
259 # being updated. Now the Makefile continues, the deps are recreated
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
260 # and all will be fine.
5650
fcb1e4785a04 (svn r8109) -Fix r5693: ignore .hpp to avoid problems with deps
glx <glx@openttd.org>
parents: 5610
diff changeset
261 %.h %.hpp:
5475
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
262 @true
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
263
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
264
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
265 # Compile all the files according to the targets
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
266
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
267 $(OBJS_C): %.o: $(SRC_DIR)/%.c $(DEP_MASK) $(FILE_DEP)
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
268 $(E) '$(STAGE) Compiling $(<:$(SRC_DIR)/%.c=%.c)'
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
269 $(Q)$(CC_HOST) $(CC_CFLAGS) $(CFLAGS) -c -o $@ $<
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
270
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
271 $(OBJS_CPP): %.o: $(SRC_DIR)/%.cpp $(DEP_MASK) $(FILE_DEP)
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
272 $(E) '$(STAGE) Compiling $(<:$(SRC_DIR)/%.cpp=%.cpp)'
6523
73261dfd20de (svn r9710) -Add: added support for GCC 2.95. This makes MorphOS target alive again. With a big thanks to tokai and Rubidium!!
truelight <truelight@openttd.org>
parents: 6104
diff changeset
273 ifeq ($(GCC295), 1)
73261dfd20de (svn r9710) -Add: added support for GCC 2.95. This makes MorphOS target alive again. With a big thanks to tokai and Rubidium!!
truelight <truelight@openttd.org>
parents: 6104
diff changeset
274 $(Q)$(CXX_HOST) -E $(CFLAGS) $< | $(GCC295_FIX) | $(GCC295_FIX_2) | $(CXX_HOST) $(CFLAGS) -c -o $@ -x c++ -
73261dfd20de (svn r9710) -Add: added support for GCC 2.95. This makes MorphOS target alive again. With a big thanks to tokai and Rubidium!!
truelight <truelight@openttd.org>
parents: 6104
diff changeset
275 else
5475
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
276 $(Q)$(CXX_HOST) $(CFLAGS) -c -o $@ $<
6523
73261dfd20de (svn r9710) -Add: added support for GCC 2.95. This makes MorphOS target alive again. With a big thanks to tokai and Rubidium!!
truelight <truelight@openttd.org>
parents: 6104
diff changeset
277 endif
5475
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
278
5941
d0e1f93e603a (svn r8605) -Codechange: [OSX] changed all objective C to objective C++
bjarni <bjarni@openttd.org>
parents: 5650
diff changeset
279 $(OBJS_MM): %.o: $(SRC_DIR)/%.mm $(DEP_MASK) $(FILE_DEP)
d0e1f93e603a (svn r8605) -Codechange: [OSX] changed all objective C to objective C++
bjarni <bjarni@openttd.org>
parents: 5650
diff changeset
280 $(E) '$(STAGE) Compiling $(<:$(SRC_DIR)/%.mm=%.mm)'
d0e1f93e603a (svn r8605) -Codechange: [OSX] changed all objective C to objective C++
bjarni <bjarni@openttd.org>
parents: 5650
diff changeset
281 $(Q)$(CC_HOST) $(CFLAGS) -c -o $@ $<
5475
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
282
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
283 $(OBJS_RC): %.o: $(SRC_DIR)/%.rc $(FILE_DEP)
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
284 $(E) '$(STAGE) Compiling resource $(<:$(SRC_DIR)/%.rc=%.rc)'
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
285 $(Q)$(WINDRES) -o $@ -I $(MEDIA_DIR) $<
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
286
5610
5762b3a3883d (svn r8067) -Fix (r7759): if bin/$(TTD) was removed, it did not get placed back on make unless $(TTD) got relinked.
rubidium <rubidium@openttd.org>
parents: 5587
diff changeset
287 $(BIN_DIR)/$(TTD): $(TTD)
5762b3a3883d (svn r8067) -Fix (r7759): if bin/$(TTD) was removed, it did not get placed back on make unless $(TTD) got relinked.
rubidium <rubidium@openttd.org>
parents: 5587
diff changeset
288 $(Q)cp $< $@
5762b3a3883d (svn r8067) -Fix (r7759): if bin/$(TTD) was removed, it did not get placed back on make unless $(TTD) got relinked.
rubidium <rubidium@openttd.org>
parents: 5587
diff changeset
289
7564
0f45d5223c87 (svn r11089) -Codechange: add revision detection to MSVC.
rubidium <rubidium@openttd.org>
parents: 7256
diff changeset
290 $(TTD): $(OBJS) $(CONFIG_CACHE_LINKER)
5475
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
291 $(E) '$(STAGE) Linking $@'
5979
ca289345e1d3 (svn r8678) [PSP] -Add: added LIBS and CFLAGS needed to compile PSP
truelight <truelight@openttd.org>
parents: 5970
diff changeset
292 ifeq ($(OS), PSP)
6084
6e2526ba7cb5 (svn r8819) [Config] -Documentation: added why we need CC_HOST for linking on PSP
truelight <truelight@openttd.org>
parents: 6081
diff changeset
293 # Because of a bug in the PSP GCC tools, linking via CXX results
6e2526ba7cb5 (svn r8819) [Config] -Documentation: added why we need CC_HOST for linking on PSP
truelight <truelight@openttd.org>
parents: 6081
diff changeset
294 # in total chaos and more problems then you can handle. So we need
6e2526ba7cb5 (svn r8819) [Config] -Documentation: added why we need CC_HOST for linking on PSP
truelight <truelight@openttd.org>
parents: 6081
diff changeset
295 # CC to link OpenTTD for PSP
7564
0f45d5223c87 (svn r11089) -Codechange: add revision detection to MSVC.
rubidium <rubidium@openttd.org>
parents: 7256
diff changeset
296 $(Q)$(CC_HOST) $(LDFLAGS) $(OBJS) $(LIBS) -o $@
5979
ca289345e1d3 (svn r8678) [PSP] -Add: added LIBS and CFLAGS needed to compile PSP
truelight <truelight@openttd.org>
parents: 5970
diff changeset
297 else
7564
0f45d5223c87 (svn r11089) -Codechange: add revision detection to MSVC.
rubidium <rubidium@openttd.org>
parents: 7256
diff changeset
298 $(Q)$(CXX_HOST) $(LDFLAGS) $(OBJS) $(LIBS) -o $@
5979
ca289345e1d3 (svn r8678) [PSP] -Add: added LIBS and CFLAGS needed to compile PSP
truelight <truelight@openttd.org>
parents: 5970
diff changeset
299 endif
5475
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
300 ifdef STRIP
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
301 $(Q)$(STRIP) $@
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
302 endif
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
303
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
304 # The targets to compile the endian-code
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
305
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
306 endian_target.h: $(ENDIAN_CHECK) $(CONFIG_CACHE_ENDIAN)
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
307 $(E) '$(STAGE) Testing endianness for target'
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
308 $(Q)./$(ENDIAN_CHECK) $(ENDIAN_FORCE) > $@
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
309
5587
c44c070c5032 (svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b.
rubidium <rubidium@openttd.org>
parents: 5535
diff changeset
310 $(ENDIAN_CHECK): $(SRC_DIR)/endian_check.cpp
5475
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
311 $(E) '$(STAGE) Compiling and Linking $@'
5587
c44c070c5032 (svn r8038) -Merge: the cpp branch. Effort of KUDr, Celestar, glx, Smoovius, stillunknown and pv2b.
rubidium <rubidium@openttd.org>
parents: 5535
diff changeset
312 $(Q)$(CXX_BUILD) $(CFLAGS_BUILD) $< -o $@
5475
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
313
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
314 # Revision files
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
315
7564
0f45d5223c87 (svn r11089) -Codechange: add revision detection to MSVC.
rubidium <rubidium@openttd.org>
parents: 7256
diff changeset
316 $(SRC_DIR)/rev.cpp: $(CONFIG_CACHE_VERSION) $(SRC_DIR)/rev.cpp.in
9457
267a95510fdf (svn r13375) -Add: logging of actions that could possibly cause desyncs and crashes to simplify debugging. See readme.txt for details
smatz <smatz@openttd.org>
parents: 7916
diff changeset
317 $(Q)cat $(SRC_DIR)/rev.cpp.in | sed "s#@@REVISION@@#$(REV_NR)#g;s#@@VERSION@@#$(REV)#g;s#@@MODIFIED@@#$(MODIFIED)#g;s#@@DATE@@#`date +%d.%m.%y`#g" > $(SRC_DIR)/rev.cpp
5475
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
318
7564
0f45d5223c87 (svn r11089) -Codechange: add revision detection to MSVC.
rubidium <rubidium@openttd.org>
parents: 7256
diff changeset
319 $(SRC_DIR)/ottdres.rc: $(CONFIG_CACHE_VERSION) $(SRC_DIR)/ottdres.rc.in
7780
4301f74086b2 (svn r11330) -Add: OTTD version checking for NewGRFs. This allows NewGRFs to do something different for different versions of OpenTTD, like disabling it for too low versions or loading different graphics.
rubidium <rubidium@openttd.org>
parents: 7618
diff changeset
320 $(Q)cat $(SRC_DIR)/ottdres.rc.in | sed "s#@@REVISION@@#$(REV_NR)#g;s#@@VERSION@@#$(REV)#g;s#@@DATE@@#`date +%d.%m.%y`#g" > $(SRC_DIR)/ottdres.rc
5475
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
321
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
322 FORCE:
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
323
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
324 depend: $(DEPS)
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
325
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
326 clean:
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
327 $(E) '$(STAGE) Cleaning up object files'
7564
0f45d5223c87 (svn r11089) -Codechange: add revision detection to MSVC.
rubidium <rubidium@openttd.org>
parents: 7256
diff changeset
328 $(Q)rm -f $(DEPS) $(OBJS) $(TTD) $(TTD:%=$(BIN_DIR)/%) $(CONFIG_CACHE_COMPILER) $(CONFIG_CACHE_LINKER) $(CONFIG_CACHE_ENDIAN) $(CONFIG_CACHE_SOURCE) $(ENDIAN_TARGETS)
5475
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
329
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
330 mrproper: clean
7564
0f45d5223c87 (svn r11089) -Codechange: add revision detection to MSVC.
rubidium <rubidium@openttd.org>
parents: 7256
diff changeset
331 $(Q)rm -f $(SRC_DIR)/rev.cpp $(SRC_DIR)/ottdres.rc
5475
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
332
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
333 %.o:
5970
d207cbc6e41a (svn r8658) -Fix r8605: missed an error message renaming from m to mm (objC to objC++)
bjarni <bjarni@openttd.org>
parents: 5941
diff changeset
334 @echo '$(STAGE) No such source-file: $(@:%.o=%).[c|cpp|mm|rc]'
5475
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
335
eabf4b86aed6 (svn r7759) -Merge: makefile rewrite. This merge features:
rubidium <rubidium@openttd.org>
parents:
diff changeset
336 .PHONY: all mrproper depend clean FORCE