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

Last change on this file since 323 was 323, checked in by bird, 23 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
RevLine 
[269]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
[312]11PATH_TARGET = bin
[269]12endif
13ifndef TARGET_SRCEXT
14TARGET_SRCEXT = c
15endif
16ifndef TARGET_SOURCE
17TARGET_SOURCE = $(TARGET).$(TARGET_SRCEXT)
18endif
19
[294]20ifndef EMXOMF
21EMXOMF = emxomf.exe
22else
23EMXOMF_DEP = $(EMXOMF)
24endif
25
26ifndef LISTOMF
27LISTOMF = listomf.exe
28else
29LISTOMF_DEP = $(LISTOMF)
30endif
31
[302]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
[294]40
[302]41.SUFFIXES:
42.SUFFIXES:
43
44
[298]45all: $(TARGET)
[294]46
[298]47
[302]48$(TARGET): vac gcc
49
50
51vac: \
[269]52 $(PATH_TARGET)/$(TARGET).vac.obj \
53 $(PATH_TARGET)/$(TARGET).vac.lst \
[302]54 $(TARGET_LINKED_VAC)
55
56gcc: \
[294]57 $(PATH_TARGET)/$(TARGET).gcc.s \
[293]58 $(PATH_TARGET)/$(TARGET).gcc.o \
[269]59 $(PATH_TARGET)/$(TARGET).gcc.obj \
60 $(PATH_TARGET)/$(TARGET).gcc.lst \
[302]61 $(TARGET_LINKED_GCC)
62
[298]63
64
[302]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
[298]73$(PATH_TARGET)/$(TARGET).vac.dump: $(PATH_TARGET)/$(TARGET).vac.exe
74 rdrdump $< > $@
[269]75
[298]76$(PATH_TARGET)/$(TARGET).gcc.dump: $(PATH_TARGET)/$(TARGET).gcc.exe
77 rdrdump $< > $@
78
[269]79
[298]80
81$(PATH_TARGET)/$(TARGET).vac.exe: $(PATH_TARGET)/$(TARGET).vac.obj
[312]82 icc -Gd -Ti+ /Fm$(PATH_TARGET)/$(TARGET).vac.map /B/LINENUMBERS -Fe$@ $<
[298]83
84$(PATH_TARGET)/$(TARGET).gcc.exe: $(PATH_TARGET)/$(TARGET).gcc.obj
85ifeq "$(TARGET_SRCEXT)" ".c"
[312]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
[298]87else
[315]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
[298]89endif
90
91
92
[269]93$(PATH_TARGET)/$(TARGET).vac.obj: $(TARGET_SOURCE)
[302]94 icc -c -Gd -Ti+ -Fo$@ $<
[298]95
[294]96$(PATH_TARGET)/$(TARGET).gcc.obj: $(PATH_TARGET)/$(TARGET).gcc.o $(EMXOMF_DEP)
97 $(EMXOMF) -o $@ $< > [email protected] 2>&1
98 cat [email protected]
[269]99
[293]100$(PATH_TARGET)/$(TARGET).gcc.o: $(TARGET_SOURCE)
[302]101 gcc -c -g -o $@ $<
[269]102
[293]103$(PATH_TARGET)/$(TARGET).gcc.s: $(TARGET_SOURCE)
[302]104 gcc -S -g -o $@ $<
[293]105
106
[298]107
[294]108$(PATH_TARGET)/$(TARGET).vac.lst: $(PATH_TARGET)/$(TARGET).vac.obj $(LISTOMF_DEP)
[323]109 -$(LISTOMF) -x $< > $@
[269]110
[294]111$(PATH_TARGET)/$(TARGET).gcc.lst: $(PATH_TARGET)/$(TARGET).gcc.obj $(LISTOMF_DEP)
[323]112 -$(LISTOMF) -x $< > $@
[269]113
[298]114
[269]115clean:
116 rm -f \
117 $(PATH_TARGET)/$(TARGET).vac.obj \
118 $(PATH_TARGET)/$(TARGET).vac.lst \
[298]119 $(PATH_TARGET)/$(TARGET).vac.exe \
120 $(PATH_TARGET)/$(TARGET).vac.map \
121 $(PATH_TARGET)/$(TARGET).vac.dump \
[302]122 $(PATH_TARGET)/$(TARGET).vac.hlldump \
123 $(PATH_TARGET)/$(TARGET).gcc.o \
124 $(PATH_TARGET)/$(TARGET).gcc.s \
[269]125 $(PATH_TARGET)/$(TARGET).gcc.obj \
126 $(PATH_TARGET)/$(TARGET).gcc.lst \
[298]127 $(PATH_TARGET)/$(TARGET).gcc.exe \
128 $(PATH_TARGET)/$(TARGET).gcc.map \
129 $(PATH_TARGET)/$(TARGET).gcc.dump \
[302]130 $(PATH_TARGET)/$(TARGET).gcc.hlldump
[269]131
Note: See TracBrowser for help on using the repository browser.