2
<build condition="PPC">
4
<dictionary name="openbios-briq" init="openbios" target="forth" condition="BRIQ">
5
<object source="ppc.fs"/>
6
<object source="briq/tree.fs"/>
7
<object source="briq/briq.fs"/>
8
<object source="QEMU,VGA.bin" target="fcode" condition="DRIVER_VGA"/>
11
<dictionary name="openbios-pearpc" init="openbios" target="forth" condition="PEARPC">
12
<object source="ppc.fs"/>
13
<object source="pearpc/tree.fs"/>
14
<object source="pearpc/pearpc.fs"/>
15
<object source="QEMU,VGA.bin" target="fcode" condition="DRIVER_VGA"/>
18
<dictionary name="openbios-qemu" init="openbios" target="forth" condition="QEMU">
19
<object source="ppc.fs"/>
20
<object source="qemu/tree.fs"/>
21
<object source="qemu/qemu.fs"/>
22
<object source="QEMU,VGA.bin" target="fcode" condition="DRIVER_VGA"/>
25
<dictionary name="openbios-mol" init="openbios" target="forth" condition="MOL">
26
<object source="ppc.fs"/>
27
<object source="mol/tree.fs"/>
28
<object source="mol/mol.fs"/>
29
<object source="QEMU,VGA.bin" target="fcode" condition="DRIVER_VGA"/>
34
<executable name="target/include/briq-dict.h" target="target" condition="BRIQ">
36
$(call quiet-command,true, " GEN $(TARGET_DIR)$@")
37
@echo "static const char forth_dictionary[] = {" > $@
38
@cat $< | hexdump -ve '1/0 "\t" 8/1 "0x%02x, " 1/0 "\n"' \
39
| sed 's/0x ,//g' >> $@
40
@echo "};" >> $@]]></rule>
41
<external-object source="openbios-briq.dict"/>
44
<executable name="target/arch/ppc/briq/kernel.o" target="target" condition="BRIQ">
45
<rule><![CDATA[ $(SRCDIR)/arch/ppc/briq/kernel.c $(ODIR)/target/include/static-dict.h
46
$(call quiet-command,$(CC) $$EXTRACFLAGS $(CFLAGS) $(INCLUDES) -c -o $@ $(SRCDIR)/arch/ppc/briq/kernel.c, " CC $(TARGET_DIR)$@")]]></rule>
50
<executable name="target/include/pearpc-dict.h" target="target" condition="PEARPC">
52
$(call quiet-command,true, " GEN $(TARGET_DIR)$@")
53
@echo "static const char forth_dictionary[] = {" > $@
54
@cat $< | hexdump -ve '1/0 "\t" 8/1 "0x%02x, " 1/0 "\n"' \
55
| sed 's/0x ,//g' >> $@
56
@echo "};" >> $@]]></rule>
57
<external-object source="openbios-pearpc.dict"/>
60
<executable name="target/arch/ppc/pearpc/kernel.o" target="target" condition="PEARPC">
61
<rule><![CDATA[ $(SRCDIR)/arch/ppc/pearpc/kernel.c $(ODIR)/target/include/pearpc-dict.h
62
$(call quiet-command,$(CC) $$EXTRACFLAGS $(CFLAGS) $(INCLUDES) -c -o $@ $(SRCDIR)/arch/ppc/pearpc/kernel.c, " CC $(TARGET_DIR)$@")]]></rule>
65
<executable name="target/include/qemu-dict.h" target="target" condition="QEMU">
67
$(call quiet-command,$(ODIR)/forthstrap -x -D $@ -d $< </dev/null, " GEN $(TARGET_DIR)$@")]]></rule>
68
<external-object source="openbios-qemu.dict"/>
71
<executable name="target/arch/ppc/qemu/kernel.o" target="target" condition="QEMU">
72
<rule><![CDATA[ $(SRCDIR)/arch/ppc/qemu/kernel.c $(ODIR)/target/include/qemu-dict.h
73
$(call quiet-command,$(CC) $$EXTRACFLAGS $(CFLAGS) $(INCLUDES) -c -o $@ $(SRCDIR)/arch/ppc/qemu/kernel.c, " CC $(TARGET_DIR)$@")]]></rule>
77
<executable name="target/include/mol-dict.h" target="target" condition="MOL">
79
$(call quiet-command,true, " GEN $(TARGET_DIR)$@")
80
@echo "static const char forth_dictionary[] = {" > $@
81
@cat $< | hexdump -ve '1/0 "\t" 8/1 "0x%02x, " 1/0 "\n"' \
82
| sed 's/0x ,//g' >> $@
83
@echo "};" >> $@]]></rule>
84
<external-object source="openbios-mol.dict"/>
87
<executable name="target/arch/ppc/mol/kernel.o" target="target" condition="MOL">
89
$(call quiet-command,$(CC) $$EXTRACFLAGS $(CFLAGS) $(INCLUDES) -c -o $@ $(SRCDIR)/arch/ppc/mol/kernel.c, " CC $(TARGET_DIR)$@")]]></rule>
92
<!-- END OF HACK ALERT -->
94
<library name="briq" target="target" type="static" condition="BRIQ">
95
<object source="misc.S"/>
96
<object source="ofmem.c"/>
97
<object source="briq/briq.c" flags="-I$(SRCDIR)/arch/ppc"/>
98
<object source="briq/init.c" flags="-I$(SRCDIR)/arch/ppc"/>
99
<external-object source="target/arch/ppc/briq/kernel.o"/>
100
<object source="briq/main.c" flags="-I$(SRCDIR)/arch/ppc"/>
101
<object source="briq/methods.c" flags="-I$(SRCDIR)/arch/ppc"/>
102
<object source="briq/tree.c" flags="-I$(SRCDIR)/arch/ppc"/>
103
<object source="briq/vfd.c" flags="-I$(SRCDIR)/arch/ppc"/>
106
<library name="pearpc" target="target" type="static" condition="PEARPC">
107
<object source="misc.S"/>
108
<object source="ofmem.c"/>
109
<object source="pearpc/pearpc.c" flags="-I$(SRCDIR)/arch/ppc"/>
110
<object source="pearpc/init.c" flags="-I$(SRCDIR)/arch/ppc"/>
111
<external-object source="target/arch/ppc/pearpc/kernel.o"/>
112
<object source="pearpc/main.c" flags="-I$(SRCDIR)/arch/ppc"/>
113
<object source="pearpc/methods.c" flags="-I$(SRCDIR)/arch/ppc"/>
114
<object source="pearpc/tree.c" flags="-I$(SRCDIR)/arch/ppc"/>
115
<object source="pearpc/vfd.c" flags="-I$(SRCDIR)/arch/ppc"/>
116
<!-- taken from mol: generalize -->
117
<object source="pearpc/console.c" flags="-I$(SRCDIR)/arch/ppc"/>
120
<library name="qemu" target="target" type="static" condition="QEMU">
121
<object source="qemu/ofmem.c"/>
122
<object source="qemu/qemu.c" flags="-I$(SRCDIR)/arch/ppc"/>
123
<object source="qemu/init.c" flags="-I$(SRCDIR)/arch/ppc"/>
124
<external-object source="target/arch/ppc/qemu/kernel.o"/>
125
<object source="qemu/main.c" flags="-I$(SRCDIR)/arch/ppc"/>
126
<object source="qemu/methods.c" flags="-I$(SRCDIR)/arch/ppc"/>
127
<object source="qemu/vfd.c" flags="-I$(SRCDIR)/arch/ppc"/>
128
<object source="qemu/console.c" flags="-I$(SRCDIR)/arch/ppc"/>
131
<library name="mol" target="target" type="static" condition="MOL">
132
<object source="misc.S"/>
133
<object source="ofmem.c"/>
134
<object source="mol/init.c" flags="-I$(SRCDIR)/arch/ppc"/>
135
<object source="mol/main.c" flags="-I$(SRCDIR)/arch/ppc"/>
136
<object source="mol/mol.c" flags="-I$(SRCDIR)/arch/ppc"/>
137
<object source="mol/console.c" flags="-I$(SRCDIR)/arch/ppc"/>
138
<object source="mol/osi-blk.c" flags="-I$(SRCDIR)/arch/ppc"/>
139
<object source="mol/osi-scsi.c" flags="-I$(SRCDIR)/arch/ppc"/>
140
<object source="mol/pseudodisk.c" flags="-I$(SRCDIR)/arch/ppc"/>
141
<object source="mol/methods.c" flags="-I$(SRCDIR)/arch/ppc"/>
142
<object source="mol/prom.c" flags="-I$(SRCDIR)/arch/ppc"/>
143
<object source="mol/tree.c" flags="-I$(SRCDIR)/arch/ppc"/>
144
<external-object source="target/arch/ppc/mol/kernel.o"/>
147
<executable name="openbios-briq.elf" target="target" condition="BRIQ">
149
$(call quiet-command,$(LD) -g -Ttext=0x01e01000 -Bstatic $^ $(shell $(CC) -print-libgcc-file-name) -o $@.nostrip --whole-archive $^," LINK $(TARGET_DIR)$@")
150
$(call quiet-command,$(NM) $@.nostrip | sort > $(ODIR)/openbios-briq.syms," GEN $(TARGET_DIR)$@.syms")
151
$(call quiet-command,$(STRIP) $@.nostrip -o $@," STRIP $(TARGET_DIR)$@")</rule>
152
<object source="start.S"/>
153
<object source="timebase.S"/>
154
<external-object source="libbriq.a"/>
155
<external-object source="libbootstrap.a"/>
156
<external-object source="libopenbios.a"/>
157
<external-object source="libpackages.a"/>
158
<external-object source="libdrivers.a"/>
159
<external-object source="libfs.a"/>
160
<external-object source="liblibc.a"/>
163
<executable name="openbios-pearpc.elf" target="target" condition="PEARPC">
165
$(call quiet-command,$(LD) -g -Ttext=0x01e01000 -Bstatic $^ $(shell $(CC) -print-libgcc-file-name) -o $@.nostrip --whole-archive $^," LINK $(TARGET_DIR)$@")
166
$(call quiet-command,$(NM) $@.nostrip | sort > $(ODIR)/openbios-pearpc.syms," GEN $(TARGET_DIR)$@.syms")
167
$(call quiet-command,$(STRIP) $@.nostrip -o $@," STRIP $(TARGET_DIR)$@")</rule>
168
<object source="start.S"/>
169
<object source="timebase.S"/>
170
<external-object source="libpearpc.a"/>
171
<external-object source="libbootstrap.a"/>
172
<external-object source="libopenbios.a"/>
173
<external-object source="libpackages.a"/>
174
<external-object source="libdrivers.a"/>
175
<external-object source="libfs.a"/>
176
<external-object source="liblibc.a"/>
179
<executable name="openbios-qemu.elf" target="target" condition="QEMU">
181
$(call quiet-command,$(LD) --warn-common -N -T $(SRCDIR)/arch/$(ARCH)/qemu/ldscript -o $@.nostrip --whole-archive $^," LINK $(TARGET_DIR)$@")
182
$(call quiet-command,$(NM) $@.nostrip | sort > $(ODIR)/openbios-qemu.syms," GEN $(TARGET_DIR)$@.syms")
183
$(call quiet-command,$(STRIP) $@.nostrip -o $@," STRIP $(TARGET_DIR)$@")</rule>
184
<object source="qemu/start.S"/>
185
<object source="qemu/switch.S"/>
186
<object source="qemu/context.c"/>
187
<object source="timebase.S"/>
188
<external-object source="libqemu.a"/>
189
<external-object source="libbootstrap.a"/>
190
<external-object source="libopenbios.a"/>
191
<external-object source="libpackages.a"/>
192
<external-object source="libdrivers.a"/>
193
<external-object source="libfs.a"/>
194
<external-object source="liblibc.a"/>
195
<external-object source="libgcc.a"/>
198
<executable name="openbios-mol.elf" target="target" condition="MOL">
200
$(call quiet-command,$(LD) -g -Ttext=0x01e01000 -Bstatic $^ $(shell $(CC) -print-libgcc-file-name) -o $@.nostrip --whole-archive $^," LINK $(TARGET_DIR)$@")
201
$(call quiet-command,$(NM) $@.nostrip | sort > $(ODIR)/openbios-mol.syms," GEN $(TARGET_DIR)$@.syms")
202
$(call quiet-command,$(STRIP) $@.nostrip -o $@," STRIP $(TARGET_DIR)$@")</rule>
203
<object source="start.S"/>
204
<external-object source="libmol.a"/>
205
<external-object source="libbootstrap.a"/>
206
<external-object source="libopenbios.a"/>
207
<external-object source="libpackages.a"/>
208
<external-object source="libdrivers.a"/>
209
<external-object source="libfs.a"/>
210
<external-object source="liblibc.a"/>