source: trunk/testcase/456/common.gmk@ 521

Last change on this file since 521 was 323, checked in by bird, 22 years ago

don't let listomf stop us.

  • Property cvs2svn:cvs-rev set to 1.8
  • Property svn:eol-style set to native
  • Property svn:executable set to *
  • Property svn:keywords set to Author Date Id Revision
File size: 3.0 KB
Line 
1# $Id: common.gmk 323 2003-06-11 21:06:13Z bird $
2#
3# common makefile stuff for the defect 456 (Stabs -> HLL)
4#
5# Assumes TARGET is set.
6#
7
8
9
10ifndef PATH_TARGET
11PATH_TARGET = bin
12endif
13ifndef TARGET_SRCEXT
14TARGET_SRCEXT = c
15endif
16ifndef TARGET_SOURCE
17TARGET_SOURCE = $(TARGET).$(TARGET_SRCEXT)
18endif
19
20ifndef EMXOMF
21EMXOMF = emxomf.exe
22else
23EMXOMF_DEP = $(EMXOMF)
24endif
25
26ifndef LISTOMF
27LISTOMF = listomf.exe
28else
29LISTOMF_DEP = $(LISTOMF)
30endif
31
32ifndef NOLINKING
33TARGET_LINKED_VAC = $(PATH_TARGET)/$(TARGET).vac.exe \
34 $(PATH_TARGET)/$(TARGET).vac.dump \
35 $(PATH_TARGET)/$(TARGET).vac.hlldump
36TARGET_LINKED_GCC = $(PATH_TARGET)/$(TARGET).gcc.exe \
37 $(PATH_TARGET)/$(TARGET).gcc.dump \
38 $(PATH_TARGET)/$(TARGET).gcc.hlldump
39endif
40
41.SUFFIXES:
42.SUFFIXES:
43
44
45all: $(TARGET)
46
47
48$(TARGET): vac gcc
49
50
51vac: \
52 $(PATH_TARGET)/$(TARGET).vac.obj \
53 $(PATH_TARGET)/$(TARGET).vac.lst \
54 $(TARGET_LINKED_VAC)
55
56gcc: \
57 $(PATH_TARGET)/$(TARGET).gcc.s \
58 $(PATH_TARGET)/$(TARGET).gcc.o \
59 $(PATH_TARGET)/$(TARGET).gcc.obj \
60 $(PATH_TARGET)/$(TARGET).gcc.lst \
61 $(TARGET_LINKED_GCC)
62
63
64
65$(PATH_TARGET)/$(TARGET).vac.hlldump: $(PATH_TARGET)/$(TARGET).vac.exe
66 hlldump $< > $@
67
68$(PATH_TARGET)/$(TARGET).gcc.hlldump: $(PATH_TARGET)/$(TARGET).gcc.exe
69 hlldump $< > $@
70
71
72
73$(PATH_TARGET)/$(TARGET).vac.dump: $(PATH_TARGET)/$(TARGET).vac.exe
74 rdrdump $< > $@
75
76$(PATH_TARGET)/$(TARGET).gcc.dump: $(PATH_TARGET)/$(TARGET).gcc.exe
77 rdrdump $< > $@
78
79
80
81$(PATH_TARGET)/$(TARGET).vac.exe: $(PATH_TARGET)/$(TARGET).vac.obj
82 icc -Gd -Ti+ /Fm$(PATH_TARGET)/$(TARGET).vac.map /B/LINENUMBERS -Fe$@ $<
83
84$(PATH_TARGET)/$(TARGET).gcc.exe: $(PATH_TARGET)/$(TARGET).gcc.obj
85ifeq "$(TARGET_SRCEXT)" ".c"
86 if gcc -g -Zomf -Zcrtdll -Zmap=$(PATH_TARGET)/$(TARGET).gcc.map -o $@ -Zlinker "/LINENUMBERS /MAP:FULL /PM:VIO" $<; then true; else rm -f $@; false; fi
87else
88 if g++ -g -Zomf -Zcrtdll -Zmap=$(PATH_TARGET)/$(TARGET).gcc.map -o $@ -Zlinker "/LINENUMBERS /MAP:FULL /PM:VIO" $<; then true; else rm -f $@; false; fi
89endif
90
91
92
93$(PATH_TARGET)/$(TARGET).vac.obj: $(TARGET_SOURCE)
94 icc -c -Gd -Ti+ -Fo$@ $<
95
96$(PATH_TARGET)/$(TARGET).gcc.obj: $(PATH_TARGET)/$(TARGET).gcc.o $(EMXOMF_DEP)
97 $(EMXOMF) -o $@ $< > $@.emxomf 2>&1
98 cat $@.emxomf
99
100$(PATH_TARGET)/$(TARGET).gcc.o: $(TARGET_SOURCE)
101 gcc -c -g -o $@ $<
102
103$(PATH_TARGET)/$(TARGET).gcc.s: $(TARGET_SOURCE)
104 gcc -S -g -o $@ $<
105
106
107
108$(PATH_TARGET)/$(TARGET).vac.lst: $(PATH_TARGET)/$(TARGET).vac.obj $(LISTOMF_DEP)
109 -$(LISTOMF) -x $< > $@
110
111$(PATH_TARGET)/$(TARGET).gcc.lst: $(PATH_TARGET)/$(TARGET).gcc.obj $(LISTOMF_DEP)
112 -$(LISTOMF) -x $< > $@
113
114
115clean:
116 rm -f \
117 $(PATH_TARGET)/$(TARGET).vac.obj \
118 $(PATH_TARGET)/$(TARGET).vac.lst \
119 $(PATH_TARGET)/$(TARGET).vac.exe \
120 $(PATH_TARGET)/$(TARGET).vac.map \
121 $(PATH_TARGET)/$(TARGET).vac.dump \
122 $(PATH_TARGET)/$(TARGET).vac.hlldump \
123 $(PATH_TARGET)/$(TARGET).gcc.o \
124 $(PATH_TARGET)/$(TARGET).gcc.s \
125 $(PATH_TARGET)/$(TARGET).gcc.obj \
126 $(PATH_TARGET)/$(TARGET).gcc.lst \
127 $(PATH_TARGET)/$(TARGET).gcc.exe \
128 $(PATH_TARGET)/$(TARGET).gcc.map \
129 $(PATH_TARGET)/$(TARGET).gcc.dump \
130 $(PATH_TARGET)/$(TARGET).gcc.hlldump
131
Note: See TracBrowser for help on using the repository browser.