annotate complex/linking/complex.mak @ 605:0f5c200f5c90

Post Pforzheim catch up 3
author thomask
date Thu, 21 Jul 2005 17:21:59 +0000
parents 014844597bbd
children 534a591a0225
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
192
014844597bbd 1) updated results
thomask
parents:
diff changeset
1 # GnuMakefile for DStress http://dmd.kuehne.cn/dstress.html
014844597bbd 1) updated results
thomask
parents:
diff changeset
2 # Copyright (C) 2004 Thomas Kuehne
014844597bbd 1) updated results
thomask
parents:
diff changeset
3 #
014844597bbd 1) updated results
thomask
parents:
diff changeset
4 # This program is free software; you can redistribute it and/or modify
014844597bbd 1) updated results
thomask
parents:
diff changeset
5 # it under the terms of the GNU General Public License as published by
014844597bbd 1) updated results
thomask
parents:
diff changeset
6 # the Free Software Foundation; either version 2 of the License, or
014844597bbd 1) updated results
thomask
parents:
diff changeset
7 # (at your option) any later version.
014844597bbd 1) updated results
thomask
parents:
diff changeset
8 #
014844597bbd 1) updated results
thomask
parents:
diff changeset
9 # This program is distributed in the hope that it will be useful,
014844597bbd 1) updated results
thomask
parents:
diff changeset
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of
014844597bbd 1) updated results
thomask
parents:
diff changeset
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
014844597bbd 1) updated results
thomask
parents:
diff changeset
12 # GNU General Public License for more details.
014844597bbd 1) updated results
thomask
parents:
diff changeset
13 #
014844597bbd 1) updated results
thomask
parents:
diff changeset
14 # You should have received a copy of the GNU General Public License
014844597bbd 1) updated results
thomask
parents:
diff changeset
15 # along with this program; if not, write to the Free Software
014844597bbd 1) updated results
thomask
parents:
diff changeset
16 # Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
014844597bbd 1) updated results
thomask
parents:
diff changeset
17 #
014844597bbd 1) updated results
thomask
parents:
diff changeset
18
014844597bbd 1) updated results
thomask
parents:
diff changeset
19 #
014844597bbd 1) updated results
thomask
parents:
diff changeset
20 # NOTE: almost all tests can be written using __DSTRESS_DFLAGS__
014844597bbd 1) updated results
thomask
parents:
diff changeset
21 #
014844597bbd 1) updated results
thomask
parents:
diff changeset
22
605
0f5c200f5c90 Post Pforzheim catch up 3
thomask
parents: 192
diff changeset
23 .PHONY:: \
192
014844597bbd 1) updated results
thomask
parents:
diff changeset
24 complex/linking/warning \
014844597bbd 1) updated results
thomask
parents:
diff changeset
25 complex/linking/$(complex_done) \
014844597bbd 1) updated results
thomask
parents:
diff changeset
26 complex/linking/clean \
014844597bbd 1) updated results
thomask
parents:
diff changeset
27 complex/linking/dest
014844597bbd 1) updated results
thomask
parents:
diff changeset
28
014844597bbd 1) updated results
thomask
parents:
diff changeset
29 complex/linking/warning :
014844597bbd 1) updated results
thomask
parents:
diff changeset
30 @echo "don't invoke this file directly, instead use DStress' root Makefile with the target \"complex/linking/complex.done\", \"complex\" or \"all\""
014844597bbd 1) updated results
thomask
parents:
diff changeset
31
014844597bbd 1) updated results
thomask
parents:
diff changeset
32 complex/linking/dest = \
014844597bbd 1) updated results
thomask
parents:
diff changeset
33 complex/linking/linking_01 \
014844597bbd 1) updated results
thomask
parents:
diff changeset
34 complex/linking/linking_02
014844597bbd 1) updated results
thomask
parents:
diff changeset
35
014844597bbd 1) updated results
thomask
parents:
diff changeset
36 # the actual target, will be called by root's "all" / "complex" target
014844597bbd 1) updated results
thomask
parents:
diff changeset
37 complex/linking/$(complex_done) : $(complex/linking/dest)
014844597bbd 1) updated results
thomask
parents:
diff changeset
38
014844597bbd 1) updated results
thomask
parents:
diff changeset
39 #
014844597bbd 1) updated results
thomask
parents:
diff changeset
40 # compile all 3 files in 1 step -> link, execute
014844597bbd 1) updated results
thomask
parents:
diff changeset
41 #
014844597bbd 1) updated results
thomask
parents:
diff changeset
42 complex/linking/linking_01 : complex/linking/a.d complex/linking/b.d complex/linking/c.d
014844597bbd 1) updated results
thomask
parents:
diff changeset
43 $(eval z_name = $@)
014844597bbd 1) updated results
thomask
parents:
diff changeset
44 @$(RM) -f complex/linking/a.o complex/linking/b.o complex/linking/c.o
014844597bbd 1) updated results
thomask
parents:
diff changeset
45 $(eval z_return = $(shell $(return__) "$(DMD) $(DFLAGS) -od$(OBJ_DIR) -of$@ complex/linking/a.d complex/linking/b.d complex/linking/c.d $(to_log)"))
014844597bbd 1) updated results
thomask
parents:
diff changeset
46 $(analyse_run)
014844597bbd 1) updated results
thomask
parents:
diff changeset
47
014844597bbd 1) updated results
thomask
parents:
diff changeset
48 #
014844597bbd 1) updated results
thomask
parents:
diff changeset
49 # compile 3 files in 3 steps -> link, execute
014844597bbd 1) updated results
thomask
parents:
diff changeset
50 #
014844597bbd 1) updated results
thomask
parents:
diff changeset
51 complex/linking/linking_02 : complex/linking/a.d complex/linking/b.d complex/linking/c.d
014844597bbd 1) updated results
thomask
parents:
diff changeset
52 $(eval z_flags = -I.. )
014844597bbd 1) updated results
thomask
parents:
diff changeset
53 @$(RM) -f complex/linking/a.o complex/linking/b.o complex/linking/c.o
014844597bbd 1) updated results
thomask
parents:
diff changeset
54 $(eval z_name = $@_A)
014844597bbd 1) updated results
thomask
parents:
diff changeset
55 $(eval z_return = $(shell $(return__) "$(DMD) $(DFLAGS) $(z_flags) -c -ofcomplex/linking/a.o complex/linking/a.d $(to_log)"))
014844597bbd 1) updated results
thomask
parents:
diff changeset
56 $(analyse_compile)
014844597bbd 1) updated results
thomask
parents:
diff changeset
57
014844597bbd 1) updated results
thomask
parents:
diff changeset
58 $(eval z_name = $@_B)
014844597bbd 1) updated results
thomask
parents:
diff changeset
59 $(eval z_return = $(shell $(return__) "$(DMD) $(DFLAGS) $(z_flags) -c -ofcomplex/linking/b.o complex/linking/b.d $(to_log)"))
014844597bbd 1) updated results
thomask
parents:
diff changeset
60 $(analyse_compile)
014844597bbd 1) updated results
thomask
parents:
diff changeset
61
014844597bbd 1) updated results
thomask
parents:
diff changeset
62 $(eval z_name = $@_C)
014844597bbd 1) updated results
thomask
parents:
diff changeset
63 $(eval z_return = $(shell $(return__) "$(DMD) $(DFLAGS) $(z_flags) -c -ofcomplex/linking/c.o complex/linking/c.d $(to_log)"))
014844597bbd 1) updated results
thomask
parents:
diff changeset
64 $(analyse_compile)
014844597bbd 1) updated results
thomask
parents:
diff changeset
65
014844597bbd 1) updated results
thomask
parents:
diff changeset
66 $(eval z_name = $@)
014844597bbd 1) updated results
thomask
parents:
diff changeset
67 $(eval z_return = $(shell $(return__) "$(DMD) $(DFLAGS) -of$@ complex/linking/a.o complex/linking/b.o complex/linking/c.o $(to_log)"))
014844597bbd 1) updated results
thomask
parents:
diff changeset
68 $(analyse_run)
014844597bbd 1) updated results
thomask
parents:
diff changeset
69
014844597bbd 1) updated results
thomask
parents:
diff changeset
70 # this will be called by root's "clean" target
014844597bbd 1) updated results
thomask
parents:
diff changeset
71 complex/linking/clean :
014844597bbd 1) updated results
thomask
parents:
diff changeset
72 $(RM) complex/linking/*.done $(complex/linking/dest)
014844597bbd 1) updated results
thomask
parents:
diff changeset
73