mk for only supported archs

http://fqa.9front.org/fqa1.html#1.2 states the supported archs.
However, clean and nuke also remove build files for 0 (spim) and q
(power).  'mk all' using those archs fails; 'mk kernels' also tries to
build all the kernels, even those which are not supported.  For
example, I tried to build the power arch (qc, qa, ql) and without
surprise it failed (when building dtracy): ...
mk dtracy
qc -FTVw dtracy.c
yacc -v -d -D1 parse.y
qc -FTVw cgen.c
qc -FTVw act.c
qc -FTVw type.c
 == regfree ==
REGISTER R0 <11> STRUCT DTAct cgen.c:302
 == regfree ==

REGISTER R0 <11> STRUCT DTAct act.c:266

 == regfree ==
qc -FTVw agg.c
cgen.c:299 unknown type in regalloc: STRUCT DTAct
cgen.c:299 bad opcode in gmove INT -> STRUCT DTAct
cgen.c:302 unknown type in regalloc: STRUCT DTAct
cgen.c:302 bad opcode in gmove INT -> STRUCT DTAct
cgen.c:302 error in regfree: 0 [0]
REGISTERmk: qc -FTVw cgen.c  : exit status=rc 387386: qc 387392: error R0
 <11> STRUCT DTAct act.c:269

act.c:250 unknown type in regalloc: STRUCT DTAct
act.c:250 bad opcode in gmove INT -> STRUCT DTAct
act.c:266 unknown type in regalloc: STRUCT DTAct
act.c:266 bad opcode in gmove INT -> STRUCT DTAct
act.c:266 error in regfree: 0 [0]
act.c:269 unknown type in regalloc: STRUCT DTAct
act.c:269 bad opcode in gmove INT -> STRUCT DTAct
act.c:269 error in regfree: 0 [0]
act.c:274 unknown type in regalloc: STRUCT DTAct
act.c:274 bad opcode in gmove INT -> STRUCT DTAct
act.c:274 error in regfree: 0 [0]
too many errors
mk: for(i in cc ...  : exit status=rc 382748: rc 387379: mk 387381: error
mk: date for (i ...  : exit status=rc 373781: rc 382226: mk 382227: error
cpu%

The patch below skips over non-supported architectures.  Is that
something we want?  This way, 'mk kernels' should work without a
problem (tested on amd64).  Then if someone works on getting those
architectures supported again in the future, they can be added back
in.
front
unobe@cpan.org 2021-08-17 14:00:47 +00:00
parent 2eadf1fa17
commit 8c228a123f
3 changed files with 30 additions and 10 deletions

View File

@ -3,11 +3,13 @@ ARCH=\
bcm64\
cycv\
kw\
mtx\
# power arch:\
# mtx\
omap\
pc\
pc64\
ppc\
# power arch:\
# ppc\
sgi\
teg2\
xen\

View File

@ -7,6 +7,9 @@ TEXTBASE=0xfffc0000
all:V: $TARG
install:V:
echo install not supported >[1=2]
clean:V:
rm -rf $TARG *.$O
@{objtype=$cputype mk -f mkfile.port clean}

View File

@ -1,5 +1,12 @@
</$objtype/mkfile
SUPPORTED_OBJS=\
386\
amd64\
arm\
arm64\
mips\
LIBS=\
lib9p\
libString\
@ -52,21 +59,29 @@ none:VQ:
all install clean nuke:VQ:
date
for (i in $LIBS $SUBSYS $CMDS) @{
cd $i
mk $target
if (~ $objtype $SUPPORTED_OBJS) {
for (i in $LIBS $SUBSYS $CMDS) @{
cd $i
mk $target
}
}
if not
echo $objtype arch not supported by 9front >[1=2]
date
installall:V:
echo "installall not supported"
release:V:
mk nuke
rm -f /$objtype/lib/ape/*.a
rm -f /$objtype/lib/*.a
mk install
mk clean
if (~ $objtype $SUPPORTED_OBJS) {
mk nuke
rm -f /$objtype/lib/ape/*.a
rm -f /$objtype/lib/*.a
mk install
mk clean
}
if not
echo $objtype architecture not supported >[1=2]
kernels:V:
for (i in 9 boot) @{