Rough changes to add a cpmz80 platform, and an experiment with building from shell... nick-cpmz80
authorNick Downing <nick@ndcode.org>
Thu, 6 Jun 2019 13:15:45 +0000 (23:15 +1000)
committerNick Downing <nick@ndcode.org>
Thu, 6 Jun 2019 13:15:45 +0000 (23:15 +1000)
47 files changed:
Makefile
build.lua
build.sh [new file with mode: 0755]
first/ackbuilder.lua
mach/proto/fp/build.lua
mach/z80/libem/build.lua [new file with mode: 0644]
mach/z80/libend/build.lua [new file with mode: 0644]
plat/build.lua
plat/cpmz80/README [new file with mode: 0644]
plat/cpmz80/boot.s [new file with mode: 0644]
plat/cpmz80/build-pkg.lua [new file with mode: 0644]
plat/cpmz80/build-tools.lua [new file with mode: 0644]
plat/cpmz80/descr [new file with mode: 0644]
plat/cpmz80/emu/bdos.s [new file with mode: 0644]
plat/cpmz80/emu/biosbdos.c [new file with mode: 0644]
plat/cpmz80/emu/build.lua [new file with mode: 0644]
plat/cpmz80/emu/dis8080.c [new file with mode: 0644]
plat/cpmz80/emu/dis8080.h [new file with mode: 0644]
plat/cpmz80/emu/emulator.c [new file with mode: 0644]
plat/cpmz80/emu/fileio.c [new file with mode: 0644]
plat/cpmz80/emu/globals.h [new file with mode: 0644]
plat/cpmz80/emu/intel_8080_emulator.c [new file with mode: 0644]
plat/cpmz80/emu/intel_8080_emulator.h [new file with mode: 0644]
plat/cpmz80/emu/main.c [new file with mode: 0644]
plat/cpmz80/include/ack/plat.h [new file with mode: 0644]
plat/cpmz80/include/build.lua [new file with mode: 0644]
plat/cpmz80/include/cpm.h [new file with mode: 0644]
plat/cpmz80/include/sys/types.h [new file with mode: 0644]
plat/cpmz80/libsys/_bdos.s [new file with mode: 0644]
plat/cpmz80/libsys/_hol0.s [new file with mode: 0644]
plat/cpmz80/libsys/_inn2.s [new file with mode: 0644]
plat/cpmz80/libsys/_trap.s [new file with mode: 0644]
plat/cpmz80/libsys/brk.c [new file with mode: 0644]
plat/cpmz80/libsys/build.lua [new file with mode: 0644]
plat/cpmz80/libsys/close.c [new file with mode: 0644]
plat/cpmz80/libsys/creat.c [new file with mode: 0644]
plat/cpmz80/libsys/errno.s [new file with mode: 0644]
plat/cpmz80/libsys/getpid.c [new file with mode: 0644]
plat/cpmz80/libsys/isatty.c [new file with mode: 0644]
plat/cpmz80/libsys/kill.c [new file with mode: 0644]
plat/cpmz80/libsys/lseek.c [new file with mode: 0644]
plat/cpmz80/libsys/open.c [new file with mode: 0644]
plat/cpmz80/libsys/read.c [new file with mode: 0644]
plat/cpmz80/libsys/signal.c [new file with mode: 0644]
plat/cpmz80/libsys/time.c [new file with mode: 0644]
plat/cpmz80/libsys/write.c [new file with mode: 0644]
plat/cpmz80/tests/build.lua [new file with mode: 0644]

index d8fa040..88033be 100644 (file)
--- a/Makefile
+++ b/Makefile
@@ -5,7 +5,7 @@
 
 # What platform to build for by default?
 
-DEFAULT_PLATFORM = pc86
+DEFAULT_PLATFORM = cpmz80
 
 # Where should the ACK put its temporary files?
 
@@ -15,7 +15,7 @@ ACK_TEMP_DIR = /tmp
 # install it and just want to run the ACK from the build directory
 # (/tmp/ack-build/staging, by default), leave this as $(INSDIR).
 
-PREFIX = /usr/local
+PREFIX = /home/nick
 #PREFIX = $(INSDIR)
 
 # Where do you want to put the object files used when building?
@@ -80,7 +80,8 @@ our-lua = $(BUILDDIR)/lua
 # This handles commands like
 #     $ make util/opt+pkg util/ego+pkg
 
-all-goals = +ack +tests
+all-goals = +ack
+# +tests
 plus-goals := $(patsubst all,$(all-goals),$(or $(MAKECMDGOALS),all))
 plus-goals := $(foreach g,$(plus-goals),$(if $(findstring +,$(g)),$(g),))
 
@@ -99,7 +100,7 @@ ifeq ($(BUILDSYSTEM),ninja)
        @ninja $(NINJAFLAGS) -f $(build-file) $(plus-goals)
 else ifeq ($(BUILDSYSTEM),make)
 # GNU make passes MAKEFLAGS in environment.
-       @$(MAKE) -f $(build-file) $(plus-goals)
+       @$(MAKE) -n -f $(build-file) $(plus-goals) >$(build-file).cmds
 else
 $(error unknown BUILDSYSTEM = $(BUILDSYSTEM))
 endif
index d7eb082..72f2262 100644 (file)
--- a/build.lua
+++ b/build.lua
@@ -6,25 +6,27 @@ vars.ackcflags = {
 }
 vars.ackldflags = {}
 vars.plats = {
-       "cpm",
-       "linux386",
-       "linux68k",
-       "linuxppc",
-       "linuxmips",
-       "osx386",
-       "osxppc",
-       "pc86",
-       "rpi",
-       "pdpv7",
-       "em22",
+       --"cpm",
+       "cpmz80",
+       --"linux386",
+       --"linux68k",
+       --"linuxppc",
+       --"linuxmips",
+       --"osx386",
+       --"osxppc",
+       --"pc86",
+       --"rpi",
+       --"pdpv7",
+       --"em22",
 }
 vars.plats_with_tests = {
-       "cpm",
-       "linux68k",
-       "linux386",
-       "linuxppc",
-       "linuxmips",
-       "pc86",
+       --"cpm",
+       "cpmz80",
+       --"linux68k",
+       --"linux386",
+       --"linuxppc",
+       --"linuxmips",
+       --"pc86",
 }
 
 local plat_packages = {}
@@ -39,21 +41,21 @@ end
 installable {
        name = "ack",
        map = {
-               "lang/basic/src+pkg",
+               --"lang/basic/src+pkg",
                "lang/cem/cemcom.ansi+pkg",
-               "lang/m2/comp+pkg",
-               "lang/pc/comp+pkg",
-               "lang/b/compiler+pkg",
+               --"lang/m2/comp+pkg",
+               --"lang/pc/comp+pkg",
+               --"lang/b/compiler+pkg",
                "util/ack+pkg",
-               "util/amisc+pkg",
-               "util/arch+pkg",
-               "util/ass+pkg",
+               --"util/amisc+pkg",
+               --"util/arch+pkg",
+               --"util/ass+pkg",
                "util/ego+pkg",
-               "util/int+pkg",
-               "util/led+pkg",
+               --"util/int+pkg",
+               --"util/led+pkg",
                "util/misc+pkg",
-               "util/opt+pkg",
-               "examples+pkg",
+               --"util/opt+pkg",
+               --"examples+pkg",
                plat_packages
        },
 }
diff --git a/build.sh b/build.sh
new file mode 100755 (executable)
index 0000000..72038d6
--- /dev/null
+++ b/build.sh
@@ -0,0 +1,3129 @@
+#!/bin/sh
+ACK=`pwd`
+BUILD=${ACK}/build
+mkdir -p ${BUILD}/obj/util/LLgen/headers
+echo util/LLgen+headers
+cp util/LLgen/src/Lpars.h ${BUILD}/obj/util/LLgen/headers
+cp util/LLgen/src/alloc.h ${BUILD}/obj/util/LLgen/headers
+cp util/LLgen/src/cclass.h ${BUILD}/obj/util/LLgen/headers
+cp util/LLgen/src/extern.h ${BUILD}/obj/util/LLgen/headers
+cp util/LLgen/src/io.h ${BUILD}/obj/util/LLgen/headers
+cp util/LLgen/src/sets.h ${BUILD}/obj/util/LLgen/headers
+cp util/LLgen/src/types.h ${BUILD}/obj/util/LLgen/headers
+mkdir -p ${BUILD}/obj/util/LLgen/llgen/main/LLgen
+echo util/LLgen+llgen/main/LLgen
+gcc -c -o ${BUILD}/obj/util/LLgen/llgen/main/LLgen/LLgen.o util/LLgen/src/LLgen.c -I${BUILD}/obj/util/LLgen/headers -g -Wno-return-type -DLIBDIR=\"${ACK}/util/LLgen/lib\" -DNON_CORRECTING -Iutil/LLgen
+mkdir -p ${BUILD}/obj/util/LLgen/llgen/main/Lpars
+echo util/LLgen+llgen/main/Lpars
+gcc -c -o ${BUILD}/obj/util/LLgen/llgen/main/Lpars/Lpars.o util/LLgen/src/Lpars.c -I${BUILD}/obj/util/LLgen/headers -g -Wno-return-type -DLIBDIR=\"${ACK}/util/LLgen/lib\" -DNON_CORRECTING -Iutil/LLgen
+mkdir -p ${BUILD}/obj/util/LLgen/llgen/main/alloc
+echo util/LLgen+llgen/main/alloc
+gcc -c -o ${BUILD}/obj/util/LLgen/llgen/main/alloc/alloc.o util/LLgen/src/alloc.c -I${BUILD}/obj/util/LLgen/headers -g -Wno-return-type -DLIBDIR=\"${ACK}/util/LLgen/lib\" -DNON_CORRECTING -Iutil/LLgen
+mkdir -p ${BUILD}/obj/util/LLgen/llgen/main/cclass
+echo util/LLgen+llgen/main/cclass
+gcc -c -o ${BUILD}/obj/util/LLgen/llgen/main/cclass/cclass.o util/LLgen/src/cclass.c -I${BUILD}/obj/util/LLgen/headers -g -Wno-return-type -DLIBDIR=\"${ACK}/util/LLgen/lib\" -DNON_CORRECTING -Iutil/LLgen
+mkdir -p ${BUILD}/obj/util/LLgen/llgen/main/check
+echo util/LLgen+llgen/main/check
+gcc -c -o ${BUILD}/obj/util/LLgen/llgen/main/check/check.o util/LLgen/src/check.c -I${BUILD}/obj/util/LLgen/headers -g -Wno-return-type -DLIBDIR=\"${ACK}/util/LLgen/lib\" -DNON_CORRECTING -Iutil/LLgen
+mkdir -p ${BUILD}/obj/util/LLgen/llgen/main/compute
+echo util/LLgen+llgen/main/compute
+gcc -c -o ${BUILD}/obj/util/LLgen/llgen/main/compute/compute.o util/LLgen/src/compute.c -I${BUILD}/obj/util/LLgen/headers -g -Wno-return-type -DLIBDIR=\"${ACK}/util/LLgen/lib\" -DNON_CORRECTING -Iutil/LLgen
+mkdir -p ${BUILD}/obj/util/LLgen/llgen/main/gencode
+echo util/LLgen+llgen/main/gencode
+gcc -c -o ${BUILD}/obj/util/LLgen/llgen/main/gencode/gencode.o util/LLgen/src/gencode.c -I${BUILD}/obj/util/LLgen/headers -g -Wno-return-type -DLIBDIR=\"${ACK}/util/LLgen/lib\" -DNON_CORRECTING -Iutil/LLgen
+mkdir -p ${BUILD}/obj/util/LLgen/llgen/main/global
+echo util/LLgen+llgen/main/global
+gcc -c -o ${BUILD}/obj/util/LLgen/llgen/main/global/global.o util/LLgen/src/global.c -I${BUILD}/obj/util/LLgen/headers -g -Wno-return-type -DLIBDIR=\"${ACK}/util/LLgen/lib\" -DNON_CORRECTING -Iutil/LLgen
+mkdir -p ${BUILD}/obj/util/LLgen/llgen/main/machdep
+echo util/LLgen+llgen/main/machdep
+gcc -c -o ${BUILD}/obj/util/LLgen/llgen/main/machdep/machdep.o util/LLgen/src/machdep.c -I${BUILD}/obj/util/LLgen/headers -g -Wno-return-type -DLIBDIR=\"${ACK}/util/LLgen/lib\" -DNON_CORRECTING -Iutil/LLgen
+mkdir -p ${BUILD}/obj/util/LLgen/llgen/main/main
+echo util/LLgen+llgen/main/main
+gcc -c -o ${BUILD}/obj/util/LLgen/llgen/main/main/main.o util/LLgen/src/main.c -I${BUILD}/obj/util/LLgen/headers -g -Wno-return-type -DLIBDIR=\"${ACK}/util/LLgen/lib\" -DNON_CORRECTING -Iutil/LLgen
+mkdir -p ${BUILD}/obj/util/LLgen/llgen/main/name
+echo util/LLgen+llgen/main/name
+gcc -c -o ${BUILD}/obj/util/LLgen/llgen/main/name/name.o util/LLgen/src/name.c -I${BUILD}/obj/util/LLgen/headers -g -Wno-return-type -DLIBDIR=\"${ACK}/util/LLgen/lib\" -DNON_CORRECTING -Iutil/LLgen
+mkdir -p ${BUILD}/obj/util/LLgen/llgen/main/reach
+echo util/LLgen+llgen/main/reach
+gcc -c -o ${BUILD}/obj/util/LLgen/llgen/main/reach/reach.o util/LLgen/src/reach.c -I${BUILD}/obj/util/LLgen/headers -g -Wno-return-type -DLIBDIR=\"${ACK}/util/LLgen/lib\" -DNON_CORRECTING -Iutil/LLgen
+mkdir -p ${BUILD}/obj/util/LLgen/llgen/main/savegram
+echo util/LLgen+llgen/main/savegram
+gcc -c -o ${BUILD}/obj/util/LLgen/llgen/main/savegram/savegram.o util/LLgen/src/savegram.c -I${BUILD}/obj/util/LLgen/headers -g -Wno-return-type -DLIBDIR=\"${ACK}/util/LLgen/lib\" -DNON_CORRECTING -Iutil/LLgen
+mkdir -p ${BUILD}/obj/util/LLgen/llgen/main/sets
+echo util/LLgen+llgen/main/sets
+gcc -c -o ${BUILD}/obj/util/LLgen/llgen/main/sets/sets.o util/LLgen/src/sets.c -I${BUILD}/obj/util/LLgen/headers -g -Wno-return-type -DLIBDIR=\"${ACK}/util/LLgen/lib\" -DNON_CORRECTING -Iutil/LLgen
+mkdir -p ${BUILD}/obj/util/LLgen/llgen/main/tokens
+echo util/LLgen+llgen/main/tokens
+gcc -c -o ${BUILD}/obj/util/LLgen/llgen/main/tokens/tokens.o util/LLgen/src/tokens.c -I${BUILD}/obj/util/LLgen/headers -g -Wno-return-type -DLIBDIR=\"${ACK}/util/LLgen/lib\" -DNON_CORRECTING -Iutil/LLgen
+mkdir -p ${BUILD}/obj/util/LLgen/llgen/main/llgen
+echo util/LLgen+llgen/main
+rm -f ${BUILD}/obj/util/LLgen/llgen/main/llgen/main.a
+ar cqs ${BUILD}/obj/util/LLgen/llgen/main/llgen/main.a ${BUILD}/obj/util/LLgen/llgen/main/LLgen/LLgen.o ${BUILD}/obj/util/LLgen/llgen/main/Lpars/Lpars.o ${BUILD}/obj/util/LLgen/llgen/main/alloc/alloc.o ${BUILD}/obj/util/LLgen/llgen/main/cclass/cclass.o ${BUILD}/obj/util/LLgen/llgen/main/check/check.o ${BUILD}/obj/util/LLgen/llgen/main/compute/compute.o ${BUILD}/obj/util/LLgen/llgen/main/gencode/gencode.o ${BUILD}/obj/util/LLgen/llgen/main/global/global.o ${BUILD}/obj/util/LLgen/llgen/main/machdep/machdep.o ${BUILD}/obj/util/LLgen/llgen/main/main/main.o ${BUILD}/obj/util/LLgen/llgen/main/name/name.o ${BUILD}/obj/util/LLgen/llgen/main/reach/reach.o ${BUILD}/obj/util/LLgen/llgen/main/savegram/savegram.o ${BUILD}/obj/util/LLgen/llgen/main/sets/sets.o ${BUILD}/obj/util/LLgen/llgen/main/tokens/tokens.o
+mkdir -p ${BUILD}/obj/util/LLgen/llgen
+echo util/LLgen+llgen
+gcc -o ${BUILD}/obj/util/LLgen/llgen/llgen ${BUILD}/obj/util/LLgen/llgen/main/llgen/main.a ${BUILD}/obj/util/LLgen/llgen/main/llgen/main.a
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/tokenfile-g
+echo lang/cem/cemcom.ansi+tokenfile-g
+sh lang/cem/cemcom.ansi/make.tokfile < lang/cem/cemcom.ansi/tokenname.c > ${BUILD}/obj/lang/cem/cemcom.ansi/tokenfile-g/tokenfile.g
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/llgen
+echo lang/cem/cemcom.ansi+llgen
+(cd ${BUILD}/obj/lang/cem/cemcom.ansi/llgen && rm -f ${BUILD}/obj/lang/cem/cemcom.ansi/llgen/Lpars.c ${BUILD}/obj/lang/cem/cemcom.ansi/llgen/Lpars.h ${BUILD}/obj/lang/cem/cemcom.ansi/llgen/tokenfile.c ${BUILD}/obj/lang/cem/cemcom.ansi/llgen/declar.c ${BUILD}/obj/lang/cem/cemcom.ansi/llgen/expression.c ${BUILD}/obj/lang/cem/cemcom.ansi/llgen/ival.c ${BUILD}/obj/lang/cem/cemcom.ansi/llgen/program.c ${BUILD}/obj/lang/cem/cemcom.ansi/llgen/statement.c && ${BUILD}/obj/util/LLgen/llgen/llgen ${BUILD}/obj/lang/cem/cemcom.ansi/tokenfile-g/tokenfile.g ${ACK}/lang/cem/cemcom.ansi/declar.g ${ACK}/lang/cem/cemcom.ansi/expression.g ${ACK}/lang/cem/cemcom.ansi/ival.g ${ACK}/lang/cem/cemcom.ansi/program.g ${ACK}/lang/cem/cemcom.ansi/statement.g)
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/next-c
+echo lang/cem/cemcom.ansi+next-c
+lang/cem/cemcom.ansi/make.next lang/cem/cemcom.ansi/code.str lang/cem/cemcom.ansi/declar.str lang/cem/cemcom.ansi/def.str lang/cem/cemcom.ansi/estack.str lang/cem/cemcom.ansi/expr.str lang/cem/cemcom.ansi/field.str lang/cem/cemcom.ansi/idf.str lang/cem/cemcom.ansi/l_brace.str lang/cem/cemcom.ansi/l_outdef.str lang/cem/cemcom.ansi/l_state.str lang/cem/cemcom.ansi/macro.str lang/cem/cemcom.ansi/next.str lang/cem/cemcom.ansi/proto.str lang/cem/cemcom.ansi/stack.str lang/cem/cemcom.ansi/stmt.str lang/cem/cemcom.ansi/struct.str lang/cem/cemcom.ansi/switch.str lang/cem/cemcom.ansi/type.str lang/cem/cemcom.ansi/util.str > ${BUILD}/obj/lang/cem/cemcom.ansi/next-c/next.c
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/parameters
+echo lang/cem/cemcom.ansi+parameters
+echo '#ifndef PARAMETERS_H' > ${BUILD}/obj/lang/cem/cemcom.ansi/parameters/parameters.h
+echo '#define PARAMETERS_H' >> ${BUILD}/obj/lang/cem/cemcom.ansi/parameters/parameters.h
+grep -v '^!' < lang/cem/cemcom.ansi/BigPars >> ${BUILD}/obj/lang/cem/cemcom.ansi/parameters/parameters.h
+echo '#endif' >> ${BUILD}/obj/lang/cem/cemcom.ansi/parameters/parameters.h
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/code
+echo lang/cem/cemcom.ansi+allocd_header/code
+lang/cem/cemcom.ansi/make.allocd < lang/cem/cemcom.ansi/code.str > ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/code/code.h
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/declar
+echo lang/cem/cemcom.ansi+allocd_header/declar
+lang/cem/cemcom.ansi/make.allocd < lang/cem/cemcom.ansi/declar.str > ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/declar/declar.h
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/def
+echo lang/cem/cemcom.ansi+allocd_header/def
+lang/cem/cemcom.ansi/make.allocd < lang/cem/cemcom.ansi/def.str > ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/def/def.h
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/estack
+echo lang/cem/cemcom.ansi+allocd_header/estack
+lang/cem/cemcom.ansi/make.allocd < lang/cem/cemcom.ansi/estack.str > ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/estack/estack.h
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/expr
+echo lang/cem/cemcom.ansi+allocd_header/expr
+lang/cem/cemcom.ansi/make.allocd < lang/cem/cemcom.ansi/expr.str > ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/expr/expr.h
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/field
+echo lang/cem/cemcom.ansi+allocd_header/field
+lang/cem/cemcom.ansi/make.allocd < lang/cem/cemcom.ansi/field.str > ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/field/field.h
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/idf
+echo lang/cem/cemcom.ansi+allocd_header/idf
+lang/cem/cemcom.ansi/make.allocd < lang/cem/cemcom.ansi/idf.str > ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/idf/idf.h
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/l_brace
+echo lang/cem/cemcom.ansi+allocd_header/l_brace
+lang/cem/cemcom.ansi/make.allocd < lang/cem/cemcom.ansi/l_brace.str > ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/l_brace/l_brace.h
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/l_outdef
+echo lang/cem/cemcom.ansi+allocd_header/l_outdef
+lang/cem/cemcom.ansi/make.allocd < lang/cem/cemcom.ansi/l_outdef.str > ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/l_outdef/l_outdef.h
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/l_state
+echo lang/cem/cemcom.ansi+allocd_header/l_state
+lang/cem/cemcom.ansi/make.allocd < lang/cem/cemcom.ansi/l_state.str > ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/l_state/l_state.h
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/macro
+echo lang/cem/cemcom.ansi+allocd_header/macro
+lang/cem/cemcom.ansi/make.allocd < lang/cem/cemcom.ansi/macro.str > ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/macro/macro.h
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/next
+echo lang/cem/cemcom.ansi+allocd_header/next
+lang/cem/cemcom.ansi/make.allocd < lang/cem/cemcom.ansi/next.str > ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/next/next.h
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/proto
+echo lang/cem/cemcom.ansi+allocd_header/proto
+lang/cem/cemcom.ansi/make.allocd < lang/cem/cemcom.ansi/proto.str > ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/proto/proto.h
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/stack
+echo lang/cem/cemcom.ansi+allocd_header/stack
+lang/cem/cemcom.ansi/make.allocd < lang/cem/cemcom.ansi/stack.str > ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/stack/stack.h
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/stmt
+echo lang/cem/cemcom.ansi+allocd_header/stmt
+lang/cem/cemcom.ansi/make.allocd < lang/cem/cemcom.ansi/stmt.str > ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/stmt/stmt.h
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/struct
+echo lang/cem/cemcom.ansi+allocd_header/struct
+lang/cem/cemcom.ansi/make.allocd < lang/cem/cemcom.ansi/struct.str > ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/struct/struct.h
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/switch
+echo lang/cem/cemcom.ansi+allocd_header/switch
+lang/cem/cemcom.ansi/make.allocd < lang/cem/cemcom.ansi/switch.str > ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/switch/switch.h
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/type
+echo lang/cem/cemcom.ansi+allocd_header/type
+lang/cem/cemcom.ansi/make.allocd < lang/cem/cemcom.ansi/type.str > ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/type/type.h
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/util
+echo lang/cem/cemcom.ansi+allocd_header/util
+lang/cem/cemcom.ansi/make.allocd < lang/cem/cemcom.ansi/util.str > ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/util/util.h
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/nextlib/next
+echo lang/cem/cemcom.ansi+nextlib/next
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/nextlib/next/next.o ${BUILD}/obj/lang/cem/cemcom.ansi/next-c/next.c -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/code -I${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/declar -I${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/def -I${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/estack -I${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/expr -I${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/field -I${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/idf -I${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/l_brace -I${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/l_outdef -I${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/l_state -I${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/macro -I${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/next -I${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/proto -I${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/stack -I${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/stmt -I${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/struct -I${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/switch -I${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/type -I${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/util -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/nextlib
+echo lang/cem/cemcom.ansi+nextlib
+rm -f ${BUILD}/obj/lang/cem/cemcom.ansi/nextlib/nextlib.a
+ar cqs ${BUILD}/obj/lang/cem/cemcom.ansi/nextlib/nextlib.a ${BUILD}/obj/lang/cem/cemcom.ansi/nextlib/next/next.o
+cp ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/code/code.h ${BUILD}/obj/lang/cem/cemcom.ansi/nextlib
+cp ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/declar/declar.h ${BUILD}/obj/lang/cem/cemcom.ansi/nextlib
+cp ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/def/def.h ${BUILD}/obj/lang/cem/cemcom.ansi/nextlib
+cp ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/estack/estack.h ${BUILD}/obj/lang/cem/cemcom.ansi/nextlib
+cp ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/expr/expr.h ${BUILD}/obj/lang/cem/cemcom.ansi/nextlib
+cp ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/field/field.h ${BUILD}/obj/lang/cem/cemcom.ansi/nextlib
+cp ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/idf/idf.h ${BUILD}/obj/lang/cem/cemcom.ansi/nextlib
+cp ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/l_brace/l_brace.h ${BUILD}/obj/lang/cem/cemcom.ansi/nextlib
+cp ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/l_outdef/l_outdef.h ${BUILD}/obj/lang/cem/cemcom.ansi/nextlib
+cp ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/l_state/l_state.h ${BUILD}/obj/lang/cem/cemcom.ansi/nextlib
+cp ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/macro/macro.h ${BUILD}/obj/lang/cem/cemcom.ansi/nextlib
+cp ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/next/next.h ${BUILD}/obj/lang/cem/cemcom.ansi/nextlib
+cp ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/proto/proto.h ${BUILD}/obj/lang/cem/cemcom.ansi/nextlib
+cp ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/stack/stack.h ${BUILD}/obj/lang/cem/cemcom.ansi/nextlib
+cp ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/stmt/stmt.h ${BUILD}/obj/lang/cem/cemcom.ansi/nextlib
+cp ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/struct/struct.h ${BUILD}/obj/lang/cem/cemcom.ansi/nextlib
+cp ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/switch/switch.h ${BUILD}/obj/lang/cem/cemcom.ansi/nextlib
+cp ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/type/type.h ${BUILD}/obj/lang/cem/cemcom.ansi/nextlib
+cp ${BUILD}/obj/lang/cem/cemcom.ansi/allocd_header/util/util.h ${BUILD}/obj/lang/cem/cemcom.ansi/nextlib
+mkdir -p ${BUILD}/obj/h/em_path
+echo h+em_path
+echo '#define TMP_DIR "/tmp"' > ${BUILD}/obj/h/em_path/em_path.h
+echo '#define EM_DIR "/home/nick"' >> ${BUILD}/obj/h/em_path/em_path.h
+echo '#define ACK_PATH "share/ack/descr"' >> ${BUILD}/obj/h/em_path/em_path.h
+mkdir -p ${BUILD}/obj/h/local
+echo h+local
+echo '#define VERSION 3' > ${BUILD}/obj/h/local/local.h
+echo '#define ACKM "cpmz80"' >> ${BUILD}/obj/h/local/local.h
+echo '#define BIGMACHINE 1' >> ${BUILD}/obj/h/local/local.h
+echo '#define SYS_5' >> ${BUILD}/obj/h/local/local.h
+mkdir -p ${BUILD}/obj/h/emheaders
+echo h+emheaders
+cp h/arch.h ${BUILD}/obj/h/emheaders
+cp h/as_spec.h ${BUILD}/obj/h/emheaders
+cp h/cg_pattern.h ${BUILD}/obj/h/emheaders
+cp h/cgg_cg.h ${BUILD}/obj/h/emheaders
+cp h/em_abs.h ${BUILD}/obj/h/emheaders
+cp h/em_ego.h ${BUILD}/obj/h/emheaders
+cp h/em_flag.h ${BUILD}/obj/h/emheaders
+cp h/em_mes.h ${BUILD}/obj/h/emheaders
+cp h/em_ptyp.h ${BUILD}/obj/h/emheaders
+cp h/em_reg.h ${BUILD}/obj/h/emheaders
+cp h/ip_spec.h ${BUILD}/obj/h/emheaders
+cp h/ocm_chan.h ${BUILD}/obj/h/emheaders
+cp h/ocm_parco.h ${BUILD}/obj/h/emheaders
+cp h/ocm_proc.h ${BUILD}/obj/h/emheaders
+cp h/out.h ${BUILD}/obj/h/emheaders
+cp h/ranlib.h ${BUILD}/obj/h/emheaders
+cp h/stb.h ${BUILD}/obj/h/emheaders
+cp h/con_float ${BUILD}/obj/h/emheaders
+cp ${BUILD}/obj/h/em_path/em_path.h ${BUILD}/obj/h/emheaders
+cp ${BUILD}/obj/h/local/local.h ${BUILD}/obj/h/emheaders
+mkdir -p ${BUILD}/obj/modules/headers
+echo modules+headers
+cp modules/h/ansi.h ${BUILD}/obj/modules/headers
+cp modules/h/em.h ${BUILD}/obj/modules/headers
+cp modules/h/emO_code.h ${BUILD}/obj/modules/headers
+cp modules/h/em_arith.h ${BUILD}/obj/modules/headers
+cp modules/h/em_label.h ${BUILD}/obj/modules/headers
+cp modules/h/em_mesX.h ${BUILD}/obj/modules/headers
+mkdir -p ${BUILD}/obj/modules/src/system/lib/access
+echo modules/src/system+lib/access
+gcc -c -o ${BUILD}/obj/modules/src/system/lib/access/access.o modules/src/system/access.c  -g -Wno-return-type -Imodules/src/system
+mkdir -p ${BUILD}/obj/modules/src/system/lib/break
+echo modules/src/system+lib/break
+gcc -c -o ${BUILD}/obj/modules/src/system/lib/break/break.o modules/src/system/break.c  -g -Wno-return-type -Imodules/src/system
+mkdir -p ${BUILD}/obj/modules/src/system/lib/chmode
+echo modules/src/system+lib/chmode
+gcc -c -o ${BUILD}/obj/modules/src/system/lib/chmode/chmode.o modules/src/system/chmode.c  -g -Wno-return-type -Imodules/src/system
+mkdir -p ${BUILD}/obj/modules/src/system/lib/close
+echo modules/src/system+lib/close
+gcc -c -o ${BUILD}/obj/modules/src/system/lib/close/close.o modules/src/system/close.c  -g -Wno-return-type -Imodules/src/system
+mkdir -p ${BUILD}/obj/modules/src/system/lib/create
+echo modules/src/system+lib/create
+gcc -c -o ${BUILD}/obj/modules/src/system/lib/create/create.o modules/src/system/create.c  -g -Wno-return-type -Imodules/src/system
+mkdir -p ${BUILD}/obj/modules/src/system/lib/filesize
+echo modules/src/system+lib/filesize
+gcc -c -o ${BUILD}/obj/modules/src/system/lib/filesize/filesize.o modules/src/system/filesize.c  -g -Wno-return-type -Imodules/src/system
+mkdir -p ${BUILD}/obj/modules/src/system/lib/basename
+echo modules/src/system+lib/basename
+gcc -c -o ${BUILD}/obj/modules/src/system/lib/basename/basename.o modules/src/system/basename.c  -g -Wno-return-type -Imodules/src/system
+mkdir -p ${BUILD}/obj/modules/src/system/lib/tmpnam
+echo modules/src/system+lib/tmpnam
+gcc -c -o ${BUILD}/obj/modules/src/system/lib/tmpnam/tmpnam.o modules/src/system/tmpnam.c  -g -Wno-return-type -Imodules/src/system
+mkdir -p ${BUILD}/obj/modules/src/system/lib/modtime
+echo modules/src/system+lib/modtime
+gcc -c -o ${BUILD}/obj/modules/src/system/lib/modtime/modtime.o modules/src/system/modtime.c  -g -Wno-return-type -Imodules/src/system
+mkdir -p ${BUILD}/obj/modules/src/system/lib/open
+echo modules/src/system+lib/open
+gcc -c -o ${BUILD}/obj/modules/src/system/lib/open/open.o modules/src/system/open.c  -g -Wno-return-type -Imodules/src/system
+mkdir -p ${BUILD}/obj/modules/src/system/lib/read
+echo modules/src/system+lib/read
+gcc -c -o ${BUILD}/obj/modules/src/system/lib/read/read.o modules/src/system/read.c  -g -Wno-return-type -Imodules/src/system
+mkdir -p ${BUILD}/obj/modules/src/system/lib/remove
+echo modules/src/system+lib/remove
+gcc -c -o ${BUILD}/obj/modules/src/system/lib/remove/remove.o modules/src/system/remove.c  -g -Wno-return-type -Imodules/src/system
+mkdir -p ${BUILD}/obj/modules/src/system/lib/rename
+echo modules/src/system+lib/rename
+gcc -c -o ${BUILD}/obj/modules/src/system/lib/rename/rename.o modules/src/system/rename.c  -g -Wno-return-type -Imodules/src/system
+mkdir -p ${BUILD}/obj/modules/src/system/lib/seek
+echo modules/src/system+lib/seek
+gcc -c -o ${BUILD}/obj/modules/src/system/lib/seek/seek.o modules/src/system/seek.c  -g -Wno-return-type -Imodules/src/system
+mkdir -p ${BUILD}/obj/modules/src/system/lib/stop
+echo modules/src/system+lib/stop
+gcc -c -o ${BUILD}/obj/modules/src/system/lib/stop/stop.o modules/src/system/stop.c  -g -Wno-return-type -Imodules/src/system
+mkdir -p ${BUILD}/obj/modules/src/system/lib/system
+echo modules/src/system+lib/system
+gcc -c -o ${BUILD}/obj/modules/src/system/lib/system/system.o modules/src/system/system.c  -g -Wno-return-type -Imodules/src/system
+mkdir -p ${BUILD}/obj/modules/src/system/lib/write
+echo modules/src/system+lib/write
+gcc -c -o ${BUILD}/obj/modules/src/system/lib/write/write.o modules/src/system/write.c  -g -Wno-return-type -Imodules/src/system
+mkdir -p ${BUILD}/obj/modules/src/system/lib
+echo modules/src/system+lib
+rm -f ${BUILD}/obj/modules/src/system/lib/lib.a
+ar cqs ${BUILD}/obj/modules/src/system/lib/lib.a ${BUILD}/obj/modules/src/system/lib/access/access.o ${BUILD}/obj/modules/src/system/lib/break/break.o ${BUILD}/obj/modules/src/system/lib/chmode/chmode.o ${BUILD}/obj/modules/src/system/lib/close/close.o ${BUILD}/obj/modules/src/system/lib/create/create.o ${BUILD}/obj/modules/src/system/lib/filesize/filesize.o ${BUILD}/obj/modules/src/system/lib/basename/basename.o ${BUILD}/obj/modules/src/system/lib/tmpnam/tmpnam.o ${BUILD}/obj/modules/src/system/lib/modtime/modtime.o ${BUILD}/obj/modules/src/system/lib/open/open.o ${BUILD}/obj/modules/src/system/lib/read/read.o ${BUILD}/obj/modules/src/system/lib/remove/remove.o ${BUILD}/obj/modules/src/system/lib/rename/rename.o ${BUILD}/obj/modules/src/system/lib/seek/seek.o ${BUILD}/obj/modules/src/system/lib/stop/stop.o ${BUILD}/obj/modules/src/system/lib/system/system.o ${BUILD}/obj/modules/src/system/lib/write/write.o
+cp modules/src/system/system.h ${BUILD}/obj/modules/src/system/lib
+mkdir -p ${BUILD}/obj/modules/src/alloc/lib/Malloc
+echo modules/src/alloc+lib/Malloc
+gcc -c -o ${BUILD}/obj/modules/src/alloc/lib/Malloc/Malloc.o modules/src/alloc/Malloc.c -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/alloc
+mkdir -p ${BUILD}/obj/modules/src/alloc/lib/No_Mem
+echo modules/src/alloc+lib/No_Mem
+gcc -c -o ${BUILD}/obj/modules/src/alloc/lib/No_Mem/No_Mem.o modules/src/alloc/No_Mem.c -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/alloc
+mkdir -p ${BUILD}/obj/modules/src/alloc/lib/Realloc
+echo modules/src/alloc+lib/Realloc
+gcc -c -o ${BUILD}/obj/modules/src/alloc/lib/Realloc/Realloc.o modules/src/alloc/Realloc.c -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/alloc
+mkdir -p ${BUILD}/obj/modules/src/alloc/lib/Salloc
+echo modules/src/alloc+lib/Salloc
+gcc -c -o ${BUILD}/obj/modules/src/alloc/lib/Salloc/Salloc.o modules/src/alloc/Salloc.c -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/alloc
+mkdir -p ${BUILD}/obj/modules/src/alloc/lib/Srealloc
+echo modules/src/alloc+lib/Srealloc
+gcc -c -o ${BUILD}/obj/modules/src/alloc/lib/Srealloc/Srealloc.o modules/src/alloc/Srealloc.c -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/alloc
+mkdir -p ${BUILD}/obj/modules/src/alloc/lib/botch
+echo modules/src/alloc+lib/botch
+gcc -c -o ${BUILD}/obj/modules/src/alloc/lib/botch/botch.o modules/src/alloc/botch.c -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/alloc
+mkdir -p ${BUILD}/obj/modules/src/alloc/lib/clear
+echo modules/src/alloc+lib/clear
+gcc -c -o ${BUILD}/obj/modules/src/alloc/lib/clear/clear.o modules/src/alloc/clear.c -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/alloc
+mkdir -p ${BUILD}/obj/modules/src/alloc/lib/st_alloc
+echo modules/src/alloc+lib/st_alloc
+gcc -c -o ${BUILD}/obj/modules/src/alloc/lib/st_alloc/st_alloc.o modules/src/alloc/st_alloc.c -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/alloc
+mkdir -p ${BUILD}/obj/modules/src/alloc/lib/std_alloc
+echo modules/src/alloc+lib/std_alloc
+gcc -c -o ${BUILD}/obj/modules/src/alloc/lib/std_alloc/std_alloc.o modules/src/alloc/std_alloc.c -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/alloc
+mkdir -p ${BUILD}/obj/modules/src/alloc/lib
+echo modules/src/alloc+lib
+rm -f ${BUILD}/obj/modules/src/alloc/lib/lib.a
+ar cqs ${BUILD}/obj/modules/src/alloc/lib/lib.a ${BUILD}/obj/modules/src/alloc/lib/Malloc/Malloc.o ${BUILD}/obj/modules/src/alloc/lib/No_Mem/No_Mem.o ${BUILD}/obj/modules/src/alloc/lib/Realloc/Realloc.o ${BUILD}/obj/modules/src/alloc/lib/Salloc/Salloc.o ${BUILD}/obj/modules/src/alloc/lib/Srealloc/Srealloc.o ${BUILD}/obj/modules/src/alloc/lib/botch/botch.o ${BUILD}/obj/modules/src/alloc/lib/clear/clear.o ${BUILD}/obj/modules/src/alloc/lib/st_alloc/st_alloc.o ${BUILD}/obj/modules/src/alloc/lib/std_alloc/std_alloc.o
+cp modules/src/alloc/alloc.h ${BUILD}/obj/modules/src/alloc/lib
+mkdir -p ${BUILD}/obj/util/cmisc/ed/main/ed
+echo util/cmisc+ed/main/ed
+gcc -c -o ${BUILD}/obj/util/cmisc/ed/main/ed/ed.o util/cmisc/ed.c  -g -Wno-return-type -Iutil/cmisc
+mkdir -p ${BUILD}/obj/util/cmisc/ed/main/ed
+echo util/cmisc+ed/main
+rm -f ${BUILD}/obj/util/cmisc/ed/main/ed/main.a
+ar cqs ${BUILD}/obj/util/cmisc/ed/main/ed/main.a ${BUILD}/obj/util/cmisc/ed/main/ed/ed.o
+mkdir -p ${BUILD}/obj/util/cmisc/ed
+echo util/cmisc+ed
+gcc -o ${BUILD}/obj/util/cmisc/ed/ed ${BUILD}/obj/util/cmisc/ed/main/ed/main.a ${BUILD}/obj/util/cmisc/ed/main/ed/main.a
+mkdir -p ${BUILD}/obj/modules/src/em_code/em_code_ek_h
+echo modules/src/em_code+em_code_ek_h
+modules/src/em_code/make.em.gen ${BUILD}/obj/util/cmisc/ed/ed h/em_table > ${BUILD}/obj/modules/src/em_code/em_code_ek_h/em_codeEK.h
+cat modules/src/em_code/em.nogen >> ${BUILD}/obj/modules/src/em_code/em_code_ek_h/em_codeEK.h
+mkdir -p ${BUILD}/obj/modules/src/em_code/headers
+echo modules/src/em_code+headers
+cp ${BUILD}/obj/modules/src/em_code/em_code_ek_h/em_codeEK.h ${BUILD}/obj/modules/src/em_code/headers
+cp modules/src/em_code/em_code.h ${BUILD}/obj/modules/src/em_code/headers
+cp modules/src/em_code/em_codeCE.h ${BUILD}/obj/modules/src/em_code/headers
+cp modules/src/em_code/em_codeO.h ${BUILD}/obj/modules/src/em_code/headers
+mkdir -p ${BUILD}/obj/modules/src/em_data/generated
+echo modules/src/em_data+generated
+modules/src/em_data/new_table ${BUILD}/obj/util/cmisc/ed/ed h/em_table ${BUILD}/obj/modules/src/em_data/generated ${BUILD}/obj/modules/src/em_data/generated
+mkdir -p ${BUILD}/obj/modules/src/em_data/lib/em_ptyp
+echo modules/src/em_data+lib/em_ptyp
+gcc -c -o ${BUILD}/obj/modules/src/em_data/lib/em_ptyp/em_ptyp.o modules/src/em_data/em_ptyp.c -I${BUILD}/obj/modules/src/em_data/generated -I${BUILD}/obj/h/emheaders -g -Wno-return-type -Imodules/src/em_data
+mkdir -p ${BUILD}/obj/modules/src/em_data/lib/em_flag
+echo modules/src/em_data+lib/em_flag
+gcc -c -o ${BUILD}/obj/modules/src/em_data/lib/em_flag/em_flag.o ${BUILD}/obj/modules/src/em_data/generated/em_flag.c -I${BUILD}/obj/modules/src/em_data/generated -I${BUILD}/obj/h/emheaders -g -Wno-return-type -Imodules/src/em_data
+mkdir -p ${BUILD}/obj/modules/src/em_data/lib/em_pseu
+echo modules/src/em_data+lib/em_pseu
+gcc -c -o ${BUILD}/obj/modules/src/em_data/lib/em_pseu/em_pseu.o ${BUILD}/obj/modules/src/em_data/generated/em_pseu.c -I${BUILD}/obj/modules/src/em_data/generated -I${BUILD}/obj/h/emheaders -g -Wno-return-type -Imodules/src/em_data
+mkdir -p ${BUILD}/obj/modules/src/em_data/lib/em_mnem
+echo modules/src/em_data+lib/em_mnem
+gcc -c -o ${BUILD}/obj/modules/src/em_data/lib/em_mnem/em_mnem.o ${BUILD}/obj/modules/src/em_data/generated/em_mnem.c -I${BUILD}/obj/modules/src/em_data/generated -I${BUILD}/obj/h/emheaders -g -Wno-return-type -Imodules/src/em_data
+mkdir -p ${BUILD}/obj/modules/src/em_data/lib
+echo modules/src/em_data+lib
+rm -f ${BUILD}/obj/modules/src/em_data/lib/lib.a
+ar cqs ${BUILD}/obj/modules/src/em_data/lib/lib.a ${BUILD}/obj/modules/src/em_data/lib/em_ptyp/em_ptyp.o ${BUILD}/obj/modules/src/em_data/lib/em_flag/em_flag.o ${BUILD}/obj/modules/src/em_data/lib/em_pseu/em_pseu.o ${BUILD}/obj/modules/src/em_data/lib/em_mnem/em_mnem.o
+cp ${BUILD}/obj/modules/src/em_data/generated/em_flag.c ${BUILD}/obj/modules/src/em_data/lib
+cp ${BUILD}/obj/modules/src/em_data/generated/em_pseu.c ${BUILD}/obj/modules/src/em_data/lib
+cp ${BUILD}/obj/modules/src/em_data/generated/em_mnem.c ${BUILD}/obj/modules/src/em_data/lib
+cp ${BUILD}/obj/modules/src/em_data/generated/em_spec.h ${BUILD}/obj/modules/src/em_data/lib
+cp ${BUILD}/obj/modules/src/em_data/generated/em_pseu.h ${BUILD}/obj/modules/src/em_data/lib
+cp ${BUILD}/obj/modules/src/em_data/generated/em_mnem.h ${BUILD}/obj/modules/src/em_data/lib
+mkdir -p ${BUILD}/obj/modules/src/string/lib/bts2str
+echo modules/src/string+lib/bts2str
+gcc -c -o ${BUILD}/obj/modules/src/string/lib/bts2str/bts2str.o modules/src/string/bts2str.c  -g -Wno-return-type -Imodules/src/string
+mkdir -p ${BUILD}/obj/modules/src/string/lib/btscat
+echo modules/src/string+lib/btscat
+gcc -c -o ${BUILD}/obj/modules/src/string/lib/btscat/btscat.o modules/src/string/btscat.c  -g -Wno-return-type -Imodules/src/string
+mkdir -p ${BUILD}/obj/modules/src/string/lib/btscmp
+echo modules/src/string+lib/btscmp
+gcc -c -o ${BUILD}/obj/modules/src/string/lib/btscmp/btscmp.o modules/src/string/btscmp.c  -g -Wno-return-type -Imodules/src/string
+mkdir -p ${BUILD}/obj/modules/src/string/lib/btscpy
+echo modules/src/string+lib/btscpy
+gcc -c -o ${BUILD}/obj/modules/src/string/lib/btscpy/btscpy.o modules/src/string/btscpy.c  -g -Wno-return-type -Imodules/src/string
+mkdir -p ${BUILD}/obj/modules/src/string/lib/btszero
+echo modules/src/string+lib/btszero
+gcc -c -o ${BUILD}/obj/modules/src/string/lib/btszero/btszero.o modules/src/string/btszero.c  -g -Wno-return-type -Imodules/src/string
+mkdir -p ${BUILD}/obj/modules/src/string/lib/long2str
+echo modules/src/string+lib/long2str
+gcc -c -o ${BUILD}/obj/modules/src/string/lib/long2str/long2str.o modules/src/string/long2str.c  -g -Wno-return-type -Imodules/src/string
+mkdir -p ${BUILD}/obj/modules/src/string/lib/str2bts
+echo modules/src/string+lib/str2bts
+gcc -c -o ${BUILD}/obj/modules/src/string/lib/str2bts/str2bts.o modules/src/string/str2bts.c  -g -Wno-return-type -Imodules/src/string
+mkdir -p ${BUILD}/obj/modules/src/string/lib/str2long
+echo modules/src/string+lib/str2long
+gcc -c -o ${BUILD}/obj/modules/src/string/lib/str2long/str2long.o modules/src/string/str2long.c  -g -Wno-return-type -Imodules/src/string
+mkdir -p ${BUILD}/obj/modules/src/string/lib/strindex
+echo modules/src/string+lib/strindex
+gcc -c -o ${BUILD}/obj/modules/src/string/lib/strindex/strindex.o modules/src/string/strindex.c  -g -Wno-return-type -Imodules/src/string
+mkdir -p ${BUILD}/obj/modules/src/string/lib/strrindex
+echo modules/src/string+lib/strrindex
+gcc -c -o ${BUILD}/obj/modules/src/string/lib/strrindex/strrindex.o modules/src/string/strrindex.c  -g -Wno-return-type -Imodules/src/string
+mkdir -p ${BUILD}/obj/modules/src/string/lib/strzero
+echo modules/src/string+lib/strzero
+gcc -c -o ${BUILD}/obj/modules/src/string/lib/strzero/strzero.o modules/src/string/strzero.c  -g -Wno-return-type -Imodules/src/string
+mkdir -p ${BUILD}/obj/modules/src/string/lib
+echo modules/src/string+lib
+rm -f ${BUILD}/obj/modules/src/string/lib/lib.a
+ar cqs ${BUILD}/obj/modules/src/string/lib/lib.a ${BUILD}/obj/modules/src/string/lib/bts2str/bts2str.o ${BUILD}/obj/modules/src/string/lib/btscat/btscat.o ${BUILD}/obj/modules/src/string/lib/btscmp/btscmp.o ${BUILD}/obj/modules/src/string/lib/btscpy/btscpy.o ${BUILD}/obj/modules/src/string/lib/btszero/btszero.o ${BUILD}/obj/modules/src/string/lib/long2str/long2str.o ${BUILD}/obj/modules/src/string/lib/str2bts/str2bts.o ${BUILD}/obj/modules/src/string/lib/str2long/str2long.o ${BUILD}/obj/modules/src/string/lib/strindex/strindex.o ${BUILD}/obj/modules/src/string/lib/strrindex/strrindex.o ${BUILD}/obj/modules/src/string/lib/strzero/strzero.o
+cp modules/src/string/ack_string.h ${BUILD}/obj/modules/src/string/lib
+mkdir -p ${BUILD}/obj/modules/src/print/lib/doprnt
+echo modules/src/print+lib/doprnt
+gcc -c -o ${BUILD}/obj/modules/src/print/lib/doprnt/doprnt.o modules/src/print/doprnt.c -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/print
+mkdir -p ${BUILD}/obj/modules/src/print/lib/format
+echo modules/src/print+lib/format
+gcc -c -o ${BUILD}/obj/modules/src/print/lib/format/format.o modules/src/print/format.c -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/print
+mkdir -p ${BUILD}/obj/modules/src/print/lib/fprint
+echo modules/src/print+lib/fprint
+gcc -c -o ${BUILD}/obj/modules/src/print/lib/fprint/fprint.o modules/src/print/fprint.c -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/print
+mkdir -p ${BUILD}/obj/modules/src/print/lib/print
+echo modules/src/print+lib/print
+gcc -c -o ${BUILD}/obj/modules/src/print/lib/print/print.o modules/src/print/print.c -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/print
+mkdir -p ${BUILD}/obj/modules/src/print/lib/sprint
+echo modules/src/print+lib/sprint
+gcc -c -o ${BUILD}/obj/modules/src/print/lib/sprint/sprint.o modules/src/print/sprint.c -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/print
+mkdir -p ${BUILD}/obj/modules/src/print/lib
+echo modules/src/print+lib
+rm -f ${BUILD}/obj/modules/src/print/lib/lib.a
+ar cqs ${BUILD}/obj/modules/src/print/lib/lib.a ${BUILD}/obj/modules/src/print/lib/doprnt/doprnt.o ${BUILD}/obj/modules/src/print/lib/format/format.o ${BUILD}/obj/modules/src/print/lib/fprint/fprint.o ${BUILD}/obj/modules/src/print/lib/print/print.o ${BUILD}/obj/modules/src/print/lib/sprint/sprint.o
+cp modules/src/print/print.h ${BUILD}/obj/modules/src/print/lib
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/C_out
+echo modules/src/em_code+lib_k/C_out
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/C_out/C_out.o modules/src/em_code/C_out.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/bhcst
+echo modules/src/em_code+lib_k/bhcst
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/bhcst/bhcst.o modules/src/em_code/bhcst.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/bhdlb
+echo modules/src/em_code+lib_k/bhdlb
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/bhdlb/bhdlb.o modules/src/em_code/bhdlb.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/bhdnam
+echo modules/src/em_code+lib_k/bhdnam
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/bhdnam/bhdnam.o modules/src/em_code/bhdnam.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/bhfcon
+echo modules/src/em_code+lib_k/bhfcon
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/bhfcon/bhfcon.o modules/src/em_code/bhfcon.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/bhicon
+echo modules/src/em_code+lib_k/bhicon
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/bhicon/bhicon.o modules/src/em_code/bhicon.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/bhilb
+echo modules/src/em_code+lib_k/bhilb
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/bhilb/bhilb.o modules/src/em_code/bhilb.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/bhpnam
+echo modules/src/em_code+lib_k/bhpnam
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/bhpnam/bhpnam.o modules/src/em_code/bhpnam.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/bhucon
+echo modules/src/em_code+lib_k/bhucon
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/bhucon/bhucon.o modules/src/em_code/bhucon.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/crcst
+echo modules/src/em_code+lib_k/crcst
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/crcst/crcst.o modules/src/em_code/crcst.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/crdlb
+echo modules/src/em_code+lib_k/crdlb
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/crdlb/crdlb.o modules/src/em_code/crdlb.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/crdnam
+echo modules/src/em_code+lib_k/crdnam
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/crdnam/crdnam.o modules/src/em_code/crdnam.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/crilb
+echo modules/src/em_code+lib_k/crilb
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/crilb/crilb.o modules/src/em_code/crilb.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/crpnam
+echo modules/src/em_code+lib_k/crpnam
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/crpnam/crpnam.o modules/src/em_code/crpnam.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/crscon
+echo modules/src/em_code+lib_k/crscon
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/crscon/crscon.o modules/src/em_code/crscon.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/crxcon
+echo modules/src/em_code+lib_k/crxcon
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/crxcon/crxcon.o modules/src/em_code/crxcon.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/cst
+echo modules/src/em_code+lib_k/cst
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/cst/cst.o modules/src/em_code/cst.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/dfdlb
+echo modules/src/em_code+lib_k/dfdlb
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/dfdlb/dfdlb.o modules/src/em_code/dfdlb.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/dfdnam
+echo modules/src/em_code+lib_k/dfdnam
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/dfdnam/dfdnam.o modules/src/em_code/dfdnam.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/dfilb
+echo modules/src/em_code+lib_k/dfilb
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/dfilb/dfilb.o modules/src/em_code/dfilb.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/dlb
+echo modules/src/em_code+lib_k/dlb
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/dlb/dlb.o modules/src/em_code/dlb.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/dnam
+echo modules/src/em_code+lib_k/dnam
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/dnam/dnam.o modules/src/em_code/dnam.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/em
+echo modules/src/em_code+lib_k/em
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/em/em.o modules/src/em_code/em.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/end
+echo modules/src/em_code+lib_k/end
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/end/end.o modules/src/em_code/end.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/endarg
+echo modules/src/em_code+lib_k/endarg
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/endarg/endarg.o modules/src/em_code/endarg.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/exc
+echo modules/src/em_code+lib_k/exc
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/exc/exc.o modules/src/em_code/exc.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/failed
+echo modules/src/em_code+lib_k/failed
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/failed/failed.o modules/src/em_code/failed.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/fcon
+echo modules/src/em_code+lib_k/fcon
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/fcon/fcon.o modules/src/em_code/fcon.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/getid
+echo modules/src/em_code+lib_k/getid
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/getid/getid.o modules/src/em_code/getid.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/icon
+echo modules/src/em_code+lib_k/icon
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/icon/icon.o modules/src/em_code/icon.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/ilb
+echo modules/src/em_code+lib_k/ilb
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/ilb/ilb.o modules/src/em_code/ilb.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/insert
+echo modules/src/em_code+lib_k/insert
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/insert/insert.o modules/src/em_code/insert.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/internerr
+echo modules/src/em_code+lib_k/internerr
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/internerr/internerr.o modules/src/em_code/internerr.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/msend
+echo modules/src/em_code+lib_k/msend
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/msend/msend.o modules/src/em_code/msend.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/msstart
+echo modules/src/em_code+lib_k/msstart
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/msstart/msstart.o modules/src/em_code/msstart.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/op
+echo modules/src/em_code+lib_k/op
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/op/op.o modules/src/em_code/op.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/opcst
+echo modules/src/em_code+lib_k/opcst
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/opcst/opcst.o modules/src/em_code/opcst.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/opdlb
+echo modules/src/em_code+lib_k/opdlb
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/opdlb/opdlb.o modules/src/em_code/opdlb.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/opdnam
+echo modules/src/em_code+lib_k/opdnam
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/opdnam/opdnam.o modules/src/em_code/opdnam.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/opilb
+echo modules/src/em_code+lib_k/opilb
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/opilb/opilb.o modules/src/em_code/opilb.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/opnarg
+echo modules/src/em_code+lib_k/opnarg
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/opnarg/opnarg.o modules/src/em_code/opnarg.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/oppnam
+echo modules/src/em_code+lib_k/oppnam
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/oppnam/oppnam.o modules/src/em_code/oppnam.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/pnam
+echo modules/src/em_code+lib_k/pnam
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/pnam/pnam.o modules/src/em_code/pnam.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/pro
+echo modules/src/em_code+lib_k/pro
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/pro/pro.o modules/src/em_code/pro.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/pronarg
+echo modules/src/em_code+lib_k/pronarg
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/pronarg/pronarg.o modules/src/em_code/pronarg.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/psdlb
+echo modules/src/em_code+lib_k/psdlb
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/psdlb/psdlb.o modules/src/em_code/psdlb.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/psdnam
+echo modules/src/em_code+lib_k/psdnam
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/psdnam/psdnam.o modules/src/em_code/psdnam.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/pspnam
+echo modules/src/em_code+lib_k/pspnam
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/pspnam/pspnam.o modules/src/em_code/pspnam.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/scon
+echo modules/src/em_code+lib_k/scon
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/scon/scon.o modules/src/em_code/scon.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k/ucon
+echo modules/src/em_code+lib_k/ucon
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_k/ucon/ucon.o modules/src/em_code/ucon.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_k
+echo modules/src/em_code+lib_k
+rm -f ${BUILD}/obj/modules/src/em_code/lib_k/lib_k.a
+ar cqs ${BUILD}/obj/modules/src/em_code/lib_k/lib_k.a ${BUILD}/obj/modules/src/em_code/lib_k/C_out/C_out.o ${BUILD}/obj/modules/src/em_code/lib_k/bhcst/bhcst.o ${BUILD}/obj/modules/src/em_code/lib_k/bhdlb/bhdlb.o ${BUILD}/obj/modules/src/em_code/lib_k/bhdnam/bhdnam.o ${BUILD}/obj/modules/src/em_code/lib_k/bhfcon/bhfcon.o ${BUILD}/obj/modules/src/em_code/lib_k/bhicon/bhicon.o ${BUILD}/obj/modules/src/em_code/lib_k/bhilb/bhilb.o ${BUILD}/obj/modules/src/em_code/lib_k/bhpnam/bhpnam.o ${BUILD}/obj/modules/src/em_code/lib_k/bhucon/bhucon.o ${BUILD}/obj/modules/src/em_code/lib_k/crcst/crcst.o ${BUILD}/obj/modules/src/em_code/lib_k/crdlb/crdlb.o ${BUILD}/obj/modules/src/em_code/lib_k/crdnam/crdnam.o ${BUILD}/obj/modules/src/em_code/lib_k/crilb/crilb.o ${BUILD}/obj/modules/src/em_code/lib_k/crpnam/crpnam.o ${BUILD}/obj/modules/src/em_code/lib_k/crscon/crscon.o ${BUILD}/obj/modules/src/em_code/lib_k/crxcon/crxcon.o ${BUILD}/obj/modules/src/em_code/lib_k/cst/cst.o ${BUILD}/obj/modules/src/em_code/lib_k/dfdlb/dfdlb.o ${BUILD}/obj/modules/src/em_code/lib_k/dfdnam/dfdnam.o ${BUILD}/obj/modules/src/em_code/lib_k/dfilb/dfilb.o ${BUILD}/obj/modules/src/em_code/lib_k/dlb/dlb.o ${BUILD}/obj/modules/src/em_code/lib_k/dnam/dnam.o ${BUILD}/obj/modules/src/em_code/lib_k/em/em.o ${BUILD}/obj/modules/src/em_code/lib_k/end/end.o ${BUILD}/obj/modules/src/em_code/lib_k/endarg/endarg.o ${BUILD}/obj/modules/src/em_code/lib_k/exc/exc.o ${BUILD}/obj/modules/src/em_code/lib_k/failed/failed.o ${BUILD}/obj/modules/src/em_code/lib_k/fcon/fcon.o ${BUILD}/obj/modules/src/em_code/lib_k/getid/getid.o ${BUILD}/obj/modules/src/em_code/lib_k/icon/icon.o ${BUILD}/obj/modules/src/em_code/lib_k/ilb/ilb.o ${BUILD}/obj/modules/src/em_code/lib_k/insert/insert.o ${BUILD}/obj/modules/src/em_code/lib_k/internerr/internerr.o ${BUILD}/obj/modules/src/em_code/lib_k/msend/msend.o ${BUILD}/obj/modules/src/em_code/lib_k/msstart/msstart.o ${BUILD}/obj/modules/src/em_code/lib_k/op/op.o ${BUILD}/obj/modules/src/em_code/lib_k/opcst/opcst.o ${BUILD}/obj/modules/src/em_code/lib_k/opdlb/opdlb.o ${BUILD}/obj/modules/src/em_code/lib_k/opdnam/opdnam.o ${BUILD}/obj/modules/src/em_code/lib_k/opilb/opilb.o ${BUILD}/obj/modules/src/em_code/lib_k/opnarg/opnarg.o ${BUILD}/obj/modules/src/em_code/lib_k/oppnam/oppnam.o ${BUILD}/obj/modules/src/em_code/lib_k/pnam/pnam.o ${BUILD}/obj/modules/src/em_code/lib_k/pro/pro.o ${BUILD}/obj/modules/src/em_code/lib_k/pronarg/pronarg.o ${BUILD}/obj/modules/src/em_code/lib_k/psdlb/psdlb.o ${BUILD}/obj/modules/src/em_code/lib_k/psdnam/psdnam.o ${BUILD}/obj/modules/src/em_code/lib_k/pspnam/pspnam.o ${BUILD}/obj/modules/src/em_code/lib_k/scon/scon.o ${BUILD}/obj/modules/src/em_code/lib_k/ucon/ucon.o
+cp ${BUILD}/obj/modules/src/em_code/headers/em_codeEK.h ${BUILD}/obj/modules/src/em_code/lib_k
+cp ${BUILD}/obj/modules/src/em_code/headers/em_code.h ${BUILD}/obj/modules/src/em_code/lib_k
+cp ${BUILD}/obj/modules/src/em_code/headers/em_codeCE.h ${BUILD}/obj/modules/src/em_code/lib_k
+cp ${BUILD}/obj/modules/src/em_code/headers/em_codeO.h ${BUILD}/obj/modules/src/em_code/lib_k
+mkdir -p ${BUILD}/obj/modules/src/em_mes/lib/C_ms_com
+echo modules/src/em_mes+lib/C_ms_com
+gcc -c -o ${BUILD}/obj/modules/src/em_mes/lib/C_ms_com/C_ms_com.o modules/src/em_mes/C_ms_com.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -Imodules/src/em_mes
+mkdir -p ${BUILD}/obj/modules/src/em_mes/lib/C_ms_ego
+echo modules/src/em_mes+lib/C_ms_ego
+gcc -c -o ${BUILD}/obj/modules/src/em_mes/lib/C_ms_ego/C_ms_ego.o modules/src/em_mes/C_ms_ego.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -Imodules/src/em_mes
+mkdir -p ${BUILD}/obj/modules/src/em_mes/lib/C_ms_emx
+echo modules/src/em_mes+lib/C_ms_emx
+gcc -c -o ${BUILD}/obj/modules/src/em_mes/lib/C_ms_emx/C_ms_emx.o modules/src/em_mes/C_ms_emx.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -Imodules/src/em_mes
+mkdir -p ${BUILD}/obj/modules/src/em_mes/lib/C_ms_err
+echo modules/src/em_mes+lib/C_ms_err
+gcc -c -o ${BUILD}/obj/modules/src/em_mes/lib/C_ms_err/C_ms_err.o modules/src/em_mes/C_ms_err.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -Imodules/src/em_mes
+mkdir -p ${BUILD}/obj/modules/src/em_mes/lib/C_ms_flt
+echo modules/src/em_mes+lib/C_ms_flt
+gcc -c -o ${BUILD}/obj/modules/src/em_mes/lib/C_ms_flt/C_ms_flt.o modules/src/em_mes/C_ms_flt.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -Imodules/src/em_mes
+mkdir -p ${BUILD}/obj/modules/src/em_mes/lib/C_ms_gto
+echo modules/src/em_mes+lib/C_ms_gto
+gcc -c -o ${BUILD}/obj/modules/src/em_mes/lib/C_ms_gto/C_ms_gto.o modules/src/em_mes/C_ms_gto.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -Imodules/src/em_mes
+mkdir -p ${BUILD}/obj/modules/src/em_mes/lib/C_ms_opt
+echo modules/src/em_mes+lib/C_ms_opt
+gcc -c -o ${BUILD}/obj/modules/src/em_mes/lib/C_ms_opt/C_ms_opt.o modules/src/em_mes/C_ms_opt.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -Imodules/src/em_mes
+mkdir -p ${BUILD}/obj/modules/src/em_mes/lib/C_ms_par
+echo modules/src/em_mes+lib/C_ms_par
+gcc -c -o ${BUILD}/obj/modules/src/em_mes/lib/C_ms_par/C_ms_par.o modules/src/em_mes/C_ms_par.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -Imodules/src/em_mes
+mkdir -p ${BUILD}/obj/modules/src/em_mes/lib/C_ms_reg
+echo modules/src/em_mes+lib/C_ms_reg
+gcc -c -o ${BUILD}/obj/modules/src/em_mes/lib/C_ms_reg/C_ms_reg.o modules/src/em_mes/C_ms_reg.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -Imodules/src/em_mes
+mkdir -p ${BUILD}/obj/modules/src/em_mes/lib/C_ms_src
+echo modules/src/em_mes+lib/C_ms_src
+gcc -c -o ${BUILD}/obj/modules/src/em_mes/lib/C_ms_src/C_ms_src.o modules/src/em_mes/C_ms_src.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -Imodules/src/em_mes
+mkdir -p ${BUILD}/obj/modules/src/em_mes/lib/C_ms_stb
+echo modules/src/em_mes+lib/C_ms_stb
+gcc -c -o ${BUILD}/obj/modules/src/em_mes/lib/C_ms_stb/C_ms_stb.o modules/src/em_mes/C_ms_stb.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -Imodules/src/em_mes
+mkdir -p ${BUILD}/obj/modules/src/em_mes/lib/C_ms_std
+echo modules/src/em_mes+lib/C_ms_std
+gcc -c -o ${BUILD}/obj/modules/src/em_mes/lib/C_ms_std/C_ms_std.o modules/src/em_mes/C_ms_std.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -Imodules/src/em_mes
+mkdir -p ${BUILD}/obj/modules/src/em_mes/lib
+echo modules/src/em_mes+lib
+rm -f ${BUILD}/obj/modules/src/em_mes/lib/lib.a
+ar cqs ${BUILD}/obj/modules/src/em_mes/lib/lib.a ${BUILD}/obj/modules/src/em_mes/lib/C_ms_com/C_ms_com.o ${BUILD}/obj/modules/src/em_mes/lib/C_ms_ego/C_ms_ego.o ${BUILD}/obj/modules/src/em_mes/lib/C_ms_emx/C_ms_emx.o ${BUILD}/obj/modules/src/em_mes/lib/C_ms_err/C_ms_err.o ${BUILD}/obj/modules/src/em_mes/lib/C_ms_flt/C_ms_flt.o ${BUILD}/obj/modules/src/em_mes/lib/C_ms_gto/C_ms_gto.o ${BUILD}/obj/modules/src/em_mes/lib/C_ms_opt/C_ms_opt.o ${BUILD}/obj/modules/src/em_mes/lib/C_ms_par/C_ms_par.o ${BUILD}/obj/modules/src/em_mes/lib/C_ms_reg/C_ms_reg.o ${BUILD}/obj/modules/src/em_mes/lib/C_ms_src/C_ms_src.o ${BUILD}/obj/modules/src/em_mes/lib/C_ms_stb/C_ms_stb.o ${BUILD}/obj/modules/src/em_mes/lib/C_ms_std/C_ms_std.o
+mkdir -p ${BUILD}/obj/modules/src/flt_arith/lib/flt_ar2flt
+echo modules/src/flt_arith+lib/flt_ar2flt
+gcc -c -o ${BUILD}/obj/modules/src/flt_arith/lib/flt_ar2flt/flt_ar2flt.o modules/src/flt_arith/flt_ar2flt.c -I${BUILD}/obj/modules/headers -g -Wno-return-type -Imodules/src/flt_arith
+mkdir -p ${BUILD}/obj/modules/src/flt_arith/lib/flt_div
+echo modules/src/flt_arith+lib/flt_div
+gcc -c -o ${BUILD}/obj/modules/src/flt_arith/lib/flt_div/flt_div.o modules/src/flt_arith/flt_div.c -I${BUILD}/obj/modules/headers -g -Wno-return-type -Imodules/src/flt_arith
+mkdir -p ${BUILD}/obj/modules/src/flt_arith/lib/flt_flt2ar
+echo modules/src/flt_arith+lib/flt_flt2ar
+gcc -c -o ${BUILD}/obj/modules/src/flt_arith/lib/flt_flt2ar/flt_flt2ar.o modules/src/flt_arith/flt_flt2ar.c -I${BUILD}/obj/modules/headers -g -Wno-return-type -Imodules/src/flt_arith
+mkdir -p ${BUILD}/obj/modules/src/flt_arith/lib/flt_modf
+echo modules/src/flt_arith+lib/flt_modf
+gcc -c -o ${BUILD}/obj/modules/src/flt_arith/lib/flt_modf/flt_modf.o modules/src/flt_arith/flt_modf.c -I${BUILD}/obj/modules/headers -g -Wno-return-type -Imodules/src/flt_arith
+mkdir -p ${BUILD}/obj/modules/src/flt_arith/lib/flt_str2fl
+echo modules/src/flt_arith+lib/flt_str2fl
+gcc -c -o ${BUILD}/obj/modules/src/flt_arith/lib/flt_str2fl/flt_str2fl.o modules/src/flt_arith/flt_str2fl.c -I${BUILD}/obj/modules/headers -g -Wno-return-type -Imodules/src/flt_arith
+mkdir -p ${BUILD}/obj/modules/src/flt_arith/lib/flt_cmp
+echo modules/src/flt_arith+lib/flt_cmp
+gcc -c -o ${BUILD}/obj/modules/src/flt_arith/lib/flt_cmp/flt_cmp.o modules/src/flt_arith/flt_cmp.c -I${BUILD}/obj/modules/headers -g -Wno-return-type -Imodules/src/flt_arith
+mkdir -p ${BUILD}/obj/modules/src/flt_arith/lib/flt_add
+echo modules/src/flt_arith+lib/flt_add
+gcc -c -o ${BUILD}/obj/modules/src/flt_arith/lib/flt_add/flt_add.o modules/src/flt_arith/flt_add.c -I${BUILD}/obj/modules/headers -g -Wno-return-type -Imodules/src/flt_arith
+mkdir -p ${BUILD}/obj/modules/src/flt_arith/lib/b64_add
+echo modules/src/flt_arith+lib/b64_add
+gcc -c -o ${BUILD}/obj/modules/src/flt_arith/lib/b64_add/b64_add.o modules/src/flt_arith/b64_add.c -I${BUILD}/obj/modules/headers -g -Wno-return-type -Imodules/src/flt_arith
+mkdir -p ${BUILD}/obj/modules/src/flt_arith/lib/flt_mul
+echo modules/src/flt_arith+lib/flt_mul
+gcc -c -o ${BUILD}/obj/modules/src/flt_arith/lib/flt_mul/flt_mul.o modules/src/flt_arith/flt_mul.c -I${BUILD}/obj/modules/headers -g -Wno-return-type -Imodules/src/flt_arith
+mkdir -p ${BUILD}/obj/modules/src/flt_arith/lib/flt_nrm
+echo modules/src/flt_arith+lib/flt_nrm
+gcc -c -o ${BUILD}/obj/modules/src/flt_arith/lib/flt_nrm/flt_nrm.o modules/src/flt_arith/flt_nrm.c -I${BUILD}/obj/modules/headers -g -Wno-return-type -Imodules/src/flt_arith
+mkdir -p ${BUILD}/obj/modules/src/flt_arith/lib/b64_sft
+echo modules/src/flt_arith+lib/b64_sft
+gcc -c -o ${BUILD}/obj/modules/src/flt_arith/lib/b64_sft/b64_sft.o modules/src/flt_arith/b64_sft.c -I${BUILD}/obj/modules/headers -g -Wno-return-type -Imodules/src/flt_arith
+mkdir -p ${BUILD}/obj/modules/src/flt_arith/lib/flt_umin
+echo modules/src/flt_arith+lib/flt_umin
+gcc -c -o ${BUILD}/obj/modules/src/flt_arith/lib/flt_umin/flt_umin.o modules/src/flt_arith/flt_umin.c -I${BUILD}/obj/modules/headers -g -Wno-return-type -Imodules/src/flt_arith
+mkdir -p ${BUILD}/obj/modules/src/flt_arith/lib/flt_chk
+echo modules/src/flt_arith+lib/flt_chk
+gcc -c -o ${BUILD}/obj/modules/src/flt_arith/lib/flt_chk/flt_chk.o modules/src/flt_arith/flt_chk.c -I${BUILD}/obj/modules/headers -g -Wno-return-type -Imodules/src/flt_arith
+mkdir -p ${BUILD}/obj/modules/src/flt_arith/lib/split
+echo modules/src/flt_arith+lib/split
+gcc -c -o ${BUILD}/obj/modules/src/flt_arith/lib/split/split.o modules/src/flt_arith/split.c -I${BUILD}/obj/modules/headers -g -Wno-return-type -Imodules/src/flt_arith
+mkdir -p ${BUILD}/obj/modules/src/flt_arith/lib
+echo modules/src/flt_arith+lib
+rm -f ${BUILD}/obj/modules/src/flt_arith/lib/lib.a
+ar cqs ${BUILD}/obj/modules/src/flt_arith/lib/lib.a ${BUILD}/obj/modules/src/flt_arith/lib/flt_ar2flt/flt_ar2flt.o ${BUILD}/obj/modules/src/flt_arith/lib/flt_div/flt_div.o ${BUILD}/obj/modules/src/flt_arith/lib/flt_flt2ar/flt_flt2ar.o ${BUILD}/obj/modules/src/flt_arith/lib/flt_modf/flt_modf.o ${BUILD}/obj/modules/src/flt_arith/lib/flt_str2fl/flt_str2fl.o ${BUILD}/obj/modules/src/flt_arith/lib/flt_cmp/flt_cmp.o ${BUILD}/obj/modules/src/flt_arith/lib/flt_add/flt_add.o ${BUILD}/obj/modules/src/flt_arith/lib/b64_add/b64_add.o ${BUILD}/obj/modules/src/flt_arith/lib/flt_mul/flt_mul.o ${BUILD}/obj/modules/src/flt_arith/lib/flt_nrm/flt_nrm.o ${BUILD}/obj/modules/src/flt_arith/lib/b64_sft/b64_sft.o ${BUILD}/obj/modules/src/flt_arith/lib/flt_umin/flt_umin.o ${BUILD}/obj/modules/src/flt_arith/lib/flt_chk/flt_chk.o ${BUILD}/obj/modules/src/flt_arith/lib/split/split.o
+cp modules/src/flt_arith/flt_arith.h ${BUILD}/obj/modules/src/flt_arith/lib
+mkdir -p ${BUILD}/obj/modules/src/idf/lib
+echo modules/src/idf+lib
+cp modules/src/idf/idf_pkg.body ${BUILD}/obj/modules/src/idf/lib
+cp modules/src/idf/idf_pkg.spec ${BUILD}/obj/modules/src/idf/lib
+mkdir -p ${BUILD}/obj/modules/src/input/lib/AtEoIF
+echo modules/src/input+lib/AtEoIF
+gcc -c -o ${BUILD}/obj/modules/src/input/lib/AtEoIF/AtEoIF.o modules/src/input/AtEoIF.c  -g -Wno-return-type -Imodules/src/input
+mkdir -p ${BUILD}/obj/modules/src/input/lib/AtEoIT
+echo modules/src/input+lib/AtEoIT
+gcc -c -o ${BUILD}/obj/modules/src/input/lib/AtEoIT/AtEoIT.o modules/src/input/AtEoIT.c  -g -Wno-return-type -Imodules/src/input
+mkdir -p ${BUILD}/obj/modules/src/input/lib
+echo modules/src/input+lib
+rm -f ${BUILD}/obj/modules/src/input/lib/lib.a
+ar cqs ${BUILD}/obj/modules/src/input/lib/lib.a ${BUILD}/obj/modules/src/input/lib/AtEoIF/AtEoIF.o ${BUILD}/obj/modules/src/input/lib/AtEoIT/AtEoIT.o
+cp modules/src/input/inp_pkg.body ${BUILD}/obj/modules/src/input/lib
+cp modules/src/input/inp_pkg.spec ${BUILD}/obj/modules/src/input/lib
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/LLlex
+echo lang/cem/cemcom.ansi+cemcom/main/LLlex
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/LLlex/LLlex.o lang/cem/cemcom.ansi/LLlex.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/LLmessage
+echo lang/cem/cemcom.ansi+cemcom/main/LLmessage
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/LLmessage/LLmessage.o lang/cem/cemcom.ansi/LLmessage.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/arith
+echo lang/cem/cemcom.ansi+cemcom/main/arith
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/arith/arith.o lang/cem/cemcom.ansi/arith.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/blocks
+echo lang/cem/cemcom.ansi+cemcom/main/blocks
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/blocks/blocks.o lang/cem/cemcom.ansi/blocks.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/ch3
+echo lang/cem/cemcom.ansi+cemcom/main/ch3
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/ch3/ch3.o lang/cem/cemcom.ansi/ch3.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/ch3bin
+echo lang/cem/cemcom.ansi+cemcom/main/ch3bin
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/ch3bin/ch3bin.o lang/cem/cemcom.ansi/ch3bin.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/ch3mon
+echo lang/cem/cemcom.ansi+cemcom/main/ch3mon
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/ch3mon/ch3mon.o lang/cem/cemcom.ansi/ch3mon.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/code
+echo lang/cem/cemcom.ansi+cemcom/main/code
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/code/code.o lang/cem/cemcom.ansi/code.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/conversion
+echo lang/cem/cemcom.ansi+cemcom/main/conversion
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/conversion/conversion.o lang/cem/cemcom.ansi/conversion.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/cstoper
+echo lang/cem/cemcom.ansi+cemcom/main/cstoper
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/cstoper/cstoper.o lang/cem/cemcom.ansi/cstoper.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/dataflow
+echo lang/cem/cemcom.ansi+cemcom/main/dataflow
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/dataflow/dataflow.o lang/cem/cemcom.ansi/dataflow.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/declarator
+echo lang/cem/cemcom.ansi+cemcom/main/declarator
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/declarator/declarator.o lang/cem/cemcom.ansi/declarator.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/decspecs
+echo lang/cem/cemcom.ansi+cemcom/main/decspecs
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/decspecs/decspecs.o lang/cem/cemcom.ansi/decspecs.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/domacro
+echo lang/cem/cemcom.ansi+cemcom/main/domacro
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/domacro/domacro.o lang/cem/cemcom.ansi/domacro.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/dumpidf
+echo lang/cem/cemcom.ansi+cemcom/main/dumpidf
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/dumpidf/dumpidf.o lang/cem/cemcom.ansi/dumpidf.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/error
+echo lang/cem/cemcom.ansi+cemcom/main/error
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/error/error.o lang/cem/cemcom.ansi/error.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/eval
+echo lang/cem/cemcom.ansi+cemcom/main/eval
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/eval/eval.o lang/cem/cemcom.ansi/eval.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/expr
+echo lang/cem/cemcom.ansi+cemcom/main/expr
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/expr/expr.o lang/cem/cemcom.ansi/expr.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/field
+echo lang/cem/cemcom.ansi+cemcom/main/field
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/field/field.o lang/cem/cemcom.ansi/field.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/fltcstoper
+echo lang/cem/cemcom.ansi+cemcom/main/fltcstoper
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/fltcstoper/fltcstoper.o lang/cem/cemcom.ansi/fltcstoper.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/idf
+echo lang/cem/cemcom.ansi+cemcom/main/idf
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/idf/idf.o lang/cem/cemcom.ansi/idf.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/input
+echo lang/cem/cemcom.ansi+cemcom/main/input
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/input/input.o lang/cem/cemcom.ansi/input.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/l_comment
+echo lang/cem/cemcom.ansi+cemcom/main/l_comment
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/l_comment/l_comment.o lang/cem/cemcom.ansi/l_comment.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/l_ev_ord
+echo lang/cem/cemcom.ansi+cemcom/main/l_ev_ord
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/l_ev_ord/l_ev_ord.o lang/cem/cemcom.ansi/l_ev_ord.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/l_lint
+echo lang/cem/cemcom.ansi+cemcom/main/l_lint
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/l_lint/l_lint.o lang/cem/cemcom.ansi/l_lint.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/l_misc
+echo lang/cem/cemcom.ansi+cemcom/main/l_misc
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/l_misc/l_misc.o lang/cem/cemcom.ansi/l_misc.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/l_outdef
+echo lang/cem/cemcom.ansi+cemcom/main/l_outdef
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/l_outdef/l_outdef.o lang/cem/cemcom.ansi/l_outdef.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/l_states
+echo lang/cem/cemcom.ansi+cemcom/main/l_states
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/l_states/l_states.o lang/cem/cemcom.ansi/l_states.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/label
+echo lang/cem/cemcom.ansi+cemcom/main/label
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/label/label.o lang/cem/cemcom.ansi/label.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/main
+echo lang/cem/cemcom.ansi+cemcom/main/main
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/main/main.o lang/cem/cemcom.ansi/main.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/options
+echo lang/cem/cemcom.ansi+cemcom/main/options
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/options/options.o lang/cem/cemcom.ansi/options.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/pragma
+echo lang/cem/cemcom.ansi+cemcom/main/pragma
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/pragma/pragma.o lang/cem/cemcom.ansi/pragma.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/proto
+echo lang/cem/cemcom.ansi+cemcom/main/proto
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/proto/proto.o lang/cem/cemcom.ansi/proto.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/skip
+echo lang/cem/cemcom.ansi+cemcom/main/skip
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/skip/skip.o lang/cem/cemcom.ansi/skip.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/stab
+echo lang/cem/cemcom.ansi+cemcom/main/stab
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/stab/stab.o lang/cem/cemcom.ansi/stab.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/stack
+echo lang/cem/cemcom.ansi+cemcom/main/stack
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/stack/stack.o lang/cem/cemcom.ansi/stack.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/struct
+echo lang/cem/cemcom.ansi+cemcom/main/struct
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/struct/struct.o lang/cem/cemcom.ansi/struct.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/switch
+echo lang/cem/cemcom.ansi+cemcom/main/switch
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/switch/switch.o lang/cem/cemcom.ansi/switch.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/tokenname
+echo lang/cem/cemcom.ansi+cemcom/main/tokenname
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/tokenname/tokenname.o lang/cem/cemcom.ansi/tokenname.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/type
+echo lang/cem/cemcom.ansi+cemcom/main/type
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/type/type.o lang/cem/cemcom.ansi/type.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/util
+echo lang/cem/cemcom.ansi+cemcom/main/util
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/util/util.o lang/cem/cemcom.ansi/util.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/symbol2str-c
+echo lang/cem/cemcom.ansi+symbol2str-c
+sh lang/cem/cemcom.ansi/make.tokcase < lang/cem/cemcom.ansi/tokenname.c > ${BUILD}/obj/lang/cem/cemcom.ansi/symbol2str-c/symbol2str.c
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/symbol2str
+echo lang/cem/cemcom.ansi+cemcom/main/symbol2str
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/symbol2str/symbol2str.o ${BUILD}/obj/lang/cem/cemcom.ansi/symbol2str-c/symbol2str.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/util/cmisc/tabgen/main/tabgen
+echo util/cmisc+tabgen/main/tabgen
+gcc -c -o ${BUILD}/obj/util/cmisc/tabgen/main/tabgen/tabgen.o util/cmisc/tabgen.c  -g -Wno-return-type -Iutil/cmisc
+mkdir -p ${BUILD}/obj/util/cmisc/tabgen/main/tabgen
+echo util/cmisc+tabgen/main
+rm -f ${BUILD}/obj/util/cmisc/tabgen/main/tabgen/main.a
+ar cqs ${BUILD}/obj/util/cmisc/tabgen/main/tabgen/main.a ${BUILD}/obj/util/cmisc/tabgen/main/tabgen/tabgen.o
+mkdir -p ${BUILD}/obj/util/cmisc/tabgen
+echo util/cmisc+tabgen
+gcc -o ${BUILD}/obj/util/cmisc/tabgen/tabgen ${BUILD}/obj/util/cmisc/tabgen/main/tabgen/main.a ${BUILD}/obj/util/cmisc/tabgen/main/tabgen/main.a
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/tabgen
+echo lang/cem/cemcom.ansi+tabgen
+${BUILD}/obj/util/cmisc/tabgen/tabgen -flang/cem/cemcom.ansi/char.tab > ${BUILD}/obj/lang/cem/cemcom.ansi/tabgen/char.c
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/char
+echo lang/cem/cemcom.ansi+cemcom/main/char
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/char/char.o ${BUILD}/obj/lang/cem/cemcom.ansi/tabgen/char.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/Lpars
+echo lang/cem/cemcom.ansi+cemcom/main/Lpars
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/Lpars/Lpars.o ${BUILD}/obj/lang/cem/cemcom.ansi/llgen/Lpars.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/tokenfile
+echo lang/cem/cemcom.ansi+cemcom/main/tokenfile
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/tokenfile/tokenfile.o ${BUILD}/obj/lang/cem/cemcom.ansi/llgen/tokenfile.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/declar
+echo lang/cem/cemcom.ansi+cemcom/main/declar
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/declar/declar.o ${BUILD}/obj/lang/cem/cemcom.ansi/llgen/declar.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/expression
+echo lang/cem/cemcom.ansi+cemcom/main/expression
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/expression/expression.o ${BUILD}/obj/lang/cem/cemcom.ansi/llgen/expression.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/ival
+echo lang/cem/cemcom.ansi+cemcom/main/ival
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/ival/ival.o ${BUILD}/obj/lang/cem/cemcom.ansi/llgen/ival.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/program
+echo lang/cem/cemcom.ansi+cemcom/main/program
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/program/program.o ${BUILD}/obj/lang/cem/cemcom.ansi/llgen/program.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/statement
+echo lang/cem/cemcom.ansi+cemcom/main/statement
+gcc -c -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/statement/statement.o ${BUILD}/obj/lang/cem/cemcom.ansi/llgen/statement.c -I${BUILD}/obj/lang/cem/cemcom.ansi/llgen -I${BUILD}/obj/lang/cem/cemcom.ansi/nextlib -I${BUILD}/obj/lang/cem/cemcom.ansi/parameters -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/em_mes/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cemcom.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/cemcom
+echo lang/cem/cemcom.ansi+cemcom/main
+rm -f ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/cemcom/main.a
+ar cqs ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/cemcom/main.a ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/LLlex/LLlex.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/LLmessage/LLmessage.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/arith/arith.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/blocks/blocks.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/ch3/ch3.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/ch3bin/ch3bin.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/ch3mon/ch3mon.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/code/code.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/conversion/conversion.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/cstoper/cstoper.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/dataflow/dataflow.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/declarator/declarator.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/decspecs/decspecs.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/domacro/domacro.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/dumpidf/dumpidf.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/error/error.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/eval/eval.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/expr/expr.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/field/field.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/fltcstoper/fltcstoper.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/idf/idf.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/input/input.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/l_comment/l_comment.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/l_ev_ord/l_ev_ord.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/l_lint/l_lint.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/l_misc/l_misc.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/l_outdef/l_outdef.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/l_states/l_states.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/label/label.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/main/main.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/options/options.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/pragma/pragma.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/proto/proto.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/skip/skip.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/stab/stab.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/stack/stack.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/struct/struct.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/switch/switch.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/tokenname/tokenname.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/type/type.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/util/util.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/symbol2str/symbol2str.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/char/char.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/Lpars/Lpars.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/tokenfile/tokenfile.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/declar/declar.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/expression/expression.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/ival/ival.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/program/program.o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/statement/statement.o
+mkdir -p ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom
+echo lang/cem/cemcom.ansi+cemcom
+gcc -o ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/cemcom ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/cemcom/main.a ${BUILD}/obj/lang/cem/cemcom.ansi/nextlib/nextlib.a ${BUILD}/obj/modules/src/alloc/lib/lib.a ${BUILD}/obj/modules/src/em_code/lib_k/lib_k.a ${BUILD}/obj/modules/src/em_data/lib/lib.a ${BUILD}/obj/modules/src/em_mes/lib/lib.a ${BUILD}/obj/modules/src/flt_arith/lib/lib.a ${BUILD}/obj/modules/src/input/lib/lib.a ${BUILD}/obj/modules/src/print/lib/lib.a ${BUILD}/obj/modules/src/string/lib/lib.a ${BUILD}/obj/modules/src/system/lib/lib.a ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/main/cemcom/main.a ${BUILD}/obj/lang/cem/cemcom.ansi/nextlib/nextlib.a ${BUILD}/obj/modules/src/alloc/lib/lib.a ${BUILD}/obj/modules/src/em_code/lib_k/lib_k.a ${BUILD}/obj/modules/src/em_data/lib/lib.a ${BUILD}/obj/modules/src/em_mes/lib/lib.a ${BUILD}/obj/modules/src/flt_arith/lib/lib.a ${BUILD}/obj/modules/src/input/lib/lib.a ${BUILD}/obj/modules/src/print/lib/lib.a ${BUILD}/obj/modules/src/string/lib/lib.a ${BUILD}/obj/modules/src/system/lib/lib.a
+mkdir -p ${BUILD}/staging/lib/ack
+echo lang/cem/cemcom.ansi+pkg
+cp ${BUILD}/obj/lang/cem/cemcom.ansi/cemcom/cemcom ${BUILD}/staging/lib/ack/em_cemcom.ansi
+mkdir -p ${BUILD}/obj/util/ack/ack/main/data
+echo util/ack+ack/main/data
+gcc -c -o ${BUILD}/obj/util/ack/ack/main/data/data.o util/ack/data.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -g -Wno-return-type -Iutil/ack
+mkdir -p ${BUILD}/obj/util/ack/ack/main/files
+echo util/ack+ack/main/files
+gcc -c -o ${BUILD}/obj/util/ack/ack/main/files/files.o util/ack/files.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -g -Wno-return-type -Iutil/ack
+mkdir -p ${BUILD}/obj/util/ack/ack/main/grows
+echo util/ack+ack/main/grows
+gcc -c -o ${BUILD}/obj/util/ack/ack/main/grows/grows.o util/ack/grows.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -g -Wno-return-type -Iutil/ack
+mkdir -p ${BUILD}/obj/util/ack/ack/main/list
+echo util/ack+ack/main/list
+gcc -c -o ${BUILD}/obj/util/ack/ack/main/list/list.o util/ack/list.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -g -Wno-return-type -Iutil/ack
+mkdir -p ${BUILD}/obj/util/ack/ack/main/main
+echo util/ack+ack/main/main
+gcc -c -o ${BUILD}/obj/util/ack/ack/main/main/main.o util/ack/main.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -g -Wno-return-type -Iutil/ack
+mkdir -p ${BUILD}/obj/util/ack/ack/main/rmach
+echo util/ack+ack/main/rmach
+gcc -c -o ${BUILD}/obj/util/ack/ack/main/rmach/rmach.o util/ack/rmach.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -g -Wno-return-type -Iutil/ack
+mkdir -p ${BUILD}/obj/util/ack/ack/main/run
+echo util/ack+ack/main/run
+gcc -c -o ${BUILD}/obj/util/ack/ack/main/run/run.o util/ack/run.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -g -Wno-return-type -Iutil/ack
+mkdir -p ${BUILD}/obj/util/ack/ack/main/scan
+echo util/ack+ack/main/scan
+gcc -c -o ${BUILD}/obj/util/ack/ack/main/scan/scan.o util/ack/scan.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -g -Wno-return-type -Iutil/ack
+mkdir -p ${BUILD}/obj/util/ack/ack/main/svars
+echo util/ack+ack/main/svars
+gcc -c -o ${BUILD}/obj/util/ack/ack/main/svars/svars.o util/ack/svars.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -g -Wno-return-type -Iutil/ack
+mkdir -p ${BUILD}/obj/util/ack/ack/main/trans
+echo util/ack+ack/main/trans
+gcc -c -o ${BUILD}/obj/util/ack/ack/main/trans/trans.o util/ack/trans.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -g -Wno-return-type -Iutil/ack
+mkdir -p ${BUILD}/obj/util/ack/ack/main/util
+echo util/ack+ack/main/util
+gcc -c -o ${BUILD}/obj/util/ack/ack/main/util/util.o util/ack/util.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -g -Wno-return-type -Iutil/ack
+mkdir -p ${BUILD}/obj/util/ack/mktables/main/mktables
+echo util/ack+mktables/main/mktables
+gcc -c -o ${BUILD}/obj/util/ack/mktables/main/mktables/mktables.o util/ack/mktables.c  -g -Wno-return-type -Iutil/ack
+mkdir -p ${BUILD}/obj/util/ack/mktables/main/mktables
+echo util/ack+mktables/main
+rm -f ${BUILD}/obj/util/ack/mktables/main/mktables/main.a
+ar cqs ${BUILD}/obj/util/ack/mktables/main/mktables/main.a ${BUILD}/obj/util/ack/mktables/main/mktables/mktables.o
+mkdir -p ${BUILD}/obj/util/ack/mktables
+echo util/ack+mktables
+gcc -o ${BUILD}/obj/util/ack/mktables/mktables ${BUILD}/obj/util/ack/mktables/main/mktables/main.a ${BUILD}/obj/util/ack/mktables/main/mktables/main.a
+mkdir -p ${BUILD}/obj/util/ack/tables
+echo util/ack+tables
+(cd ${BUILD}/obj/util/ack/tables && ${BUILD}/obj/util/ack/mktables/mktables lib)
+mkdir -p ${BUILD}/obj/util/ack/ack/main/dmach
+echo util/ack+ack/main/dmach
+gcc -c -o ${BUILD}/obj/util/ack/ack/main/dmach/dmach.o ${BUILD}/obj/util/ack/tables/dmach.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -g -Wno-return-type -Iutil/ack
+mkdir -p ${BUILD}/obj/util/ack/ack/main/intable
+echo util/ack+ack/main/intable
+gcc -c -o ${BUILD}/obj/util/ack/ack/main/intable/intable.o ${BUILD}/obj/util/ack/tables/intable.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -g -Wno-return-type -Iutil/ack
+mkdir -p ${BUILD}/obj/util/ack/ack/main/ack
+echo util/ack+ack/main
+rm -f ${BUILD}/obj/util/ack/ack/main/ack/main.a
+ar cqs ${BUILD}/obj/util/ack/ack/main/ack/main.a ${BUILD}/obj/util/ack/ack/main/data/data.o ${BUILD}/obj/util/ack/ack/main/files/files.o ${BUILD}/obj/util/ack/ack/main/grows/grows.o ${BUILD}/obj/util/ack/ack/main/list/list.o ${BUILD}/obj/util/ack/ack/main/main/main.o ${BUILD}/obj/util/ack/ack/main/rmach/rmach.o ${BUILD}/obj/util/ack/ack/main/run/run.o ${BUILD}/obj/util/ack/ack/main/scan/scan.o ${BUILD}/obj/util/ack/ack/main/svars/svars.o ${BUILD}/obj/util/ack/ack/main/trans/trans.o ${BUILD}/obj/util/ack/ack/main/util/util.o ${BUILD}/obj/util/ack/ack/main/dmach/dmach.o ${BUILD}/obj/util/ack/ack/main/intable/intable.o
+mkdir -p ${BUILD}/obj/util/ack/ack
+echo util/ack+ack
+gcc -o ${BUILD}/obj/util/ack/ack/ack ${BUILD}/obj/util/ack/ack/main/ack/main.a ${BUILD}/obj/util/ack/ack/main/ack/main.a
+mkdir -p ${BUILD}/staging/bin ${BUILD}/staging/share/ack/descr ${BUILD}/staging/share/man/man1
+echo util/ack+pkg
+cp ${BUILD}/obj/util/ack/ack/ack ${BUILD}/staging/bin/ack
+cp lib/descr/fe ${BUILD}/staging/share/ack/descr/fe
+cp util/ack/ack.1.X ${BUILD}/staging/share/man/man1/ack.1
+mkdir -p ${BUILD}/obj/lang/cem/cpp.ansi/tokenfile_g
+echo lang/cem/cpp.ansi+tokenfile_g
+sh lang/cem/cpp.ansi/make.tokfile < lang/cem/cpp.ansi/tokenname.c > ${BUILD}/obj/lang/cem/cpp.ansi/tokenfile_g/tokenfile.g
+mkdir -p ${BUILD}/obj/lang/cem/cpp.ansi/llgen
+echo lang/cem/cpp.ansi+llgen
+(cd ${BUILD}/obj/lang/cem/cpp.ansi/llgen && rm -f ${BUILD}/obj/lang/cem/cpp.ansi/llgen/Lpars.c ${BUILD}/obj/lang/cem/cpp.ansi/llgen/Lpars.h ${BUILD}/obj/lang/cem/cpp.ansi/llgen/tokenfile.c ${BUILD}/obj/lang/cem/cpp.ansi/llgen/expression.c && ${BUILD}/obj/util/LLgen/llgen/llgen ${BUILD}/obj/lang/cem/cpp.ansi/tokenfile_g/tokenfile.g ${ACK}/lang/cem/cpp.ansi/expression.g)
+mkdir -p ${BUILD}/obj/lang/cem/cpp.ansi/macro_h
+echo lang/cem/cpp.ansi+macro_h
+lang/cem/cpp.ansi/make.allocd < lang/cem/cpp.ansi/macro.str > ${BUILD}/obj/lang/cem/cpp.ansi/macro_h/macro.h
+mkdir -p ${BUILD}/obj/lang/cem/cpp.ansi/replace_h
+echo lang/cem/cpp.ansi+replace_h
+lang/cem/cpp.ansi/make.allocd < lang/cem/cpp.ansi/replace.str > ${BUILD}/obj/lang/cem/cpp.ansi/replace_h/replace.h
+mkdir -p ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/LLlex
+echo lang/cem/cpp.ansi+cpp/main/LLlex
+gcc -c -o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/LLlex/LLlex.o lang/cem/cpp.ansi/LLlex.c -I${BUILD}/obj/lang/cem/cpp.ansi/llgen -I${BUILD}/obj/lang/cem/cpp.ansi/macro_h -I${BUILD}/obj/lang/cem/cpp.ansi/replace_h -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cpp.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/LLmessage
+echo lang/cem/cpp.ansi+cpp/main/LLmessage
+gcc -c -o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/LLmessage/LLmessage.o lang/cem/cpp.ansi/LLmessage.c -I${BUILD}/obj/lang/cem/cpp.ansi/llgen -I${BUILD}/obj/lang/cem/cpp.ansi/macro_h -I${BUILD}/obj/lang/cem/cpp.ansi/replace_h -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cpp.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/ch3bin
+echo lang/cem/cpp.ansi+cpp/main/ch3bin
+gcc -c -o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/ch3bin/ch3bin.o lang/cem/cpp.ansi/ch3bin.c -I${BUILD}/obj/lang/cem/cpp.ansi/llgen -I${BUILD}/obj/lang/cem/cpp.ansi/macro_h -I${BUILD}/obj/lang/cem/cpp.ansi/replace_h -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cpp.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/ch3mon
+echo lang/cem/cpp.ansi+cpp/main/ch3mon
+gcc -c -o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/ch3mon/ch3mon.o lang/cem/cpp.ansi/ch3mon.c -I${BUILD}/obj/lang/cem/cpp.ansi/llgen -I${BUILD}/obj/lang/cem/cpp.ansi/macro_h -I${BUILD}/obj/lang/cem/cpp.ansi/replace_h -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cpp.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/domacro
+echo lang/cem/cpp.ansi+cpp/main/domacro
+gcc -c -o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/domacro/domacro.o lang/cem/cpp.ansi/domacro.c -I${BUILD}/obj/lang/cem/cpp.ansi/llgen -I${BUILD}/obj/lang/cem/cpp.ansi/macro_h -I${BUILD}/obj/lang/cem/cpp.ansi/replace_h -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cpp.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/error
+echo lang/cem/cpp.ansi+cpp/main/error
+gcc -c -o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/error/error.o lang/cem/cpp.ansi/error.c -I${BUILD}/obj/lang/cem/cpp.ansi/llgen -I${BUILD}/obj/lang/cem/cpp.ansi/macro_h -I${BUILD}/obj/lang/cem/cpp.ansi/replace_h -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cpp.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/expr
+echo lang/cem/cpp.ansi+cpp/main/expr
+gcc -c -o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/expr/expr.o lang/cem/cpp.ansi/expr.c -I${BUILD}/obj/lang/cem/cpp.ansi/llgen -I${BUILD}/obj/lang/cem/cpp.ansi/macro_h -I${BUILD}/obj/lang/cem/cpp.ansi/replace_h -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cpp.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/idf
+echo lang/cem/cpp.ansi+cpp/main/idf
+gcc -c -o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/idf/idf.o lang/cem/cpp.ansi/idf.c -I${BUILD}/obj/lang/cem/cpp.ansi/llgen -I${BUILD}/obj/lang/cem/cpp.ansi/macro_h -I${BUILD}/obj/lang/cem/cpp.ansi/replace_h -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cpp.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/init
+echo lang/cem/cpp.ansi+cpp/main/init
+gcc -c -o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/init/init.o lang/cem/cpp.ansi/init.c -I${BUILD}/obj/lang/cem/cpp.ansi/llgen -I${BUILD}/obj/lang/cem/cpp.ansi/macro_h -I${BUILD}/obj/lang/cem/cpp.ansi/replace_h -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cpp.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/input
+echo lang/cem/cpp.ansi+cpp/main/input
+gcc -c -o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/input/input.o lang/cem/cpp.ansi/input.c -I${BUILD}/obj/lang/cem/cpp.ansi/llgen -I${BUILD}/obj/lang/cem/cpp.ansi/macro_h -I${BUILD}/obj/lang/cem/cpp.ansi/replace_h -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cpp.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/main
+echo lang/cem/cpp.ansi+cpp/main/main
+gcc -c -o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/main/main.o lang/cem/cpp.ansi/main.c -I${BUILD}/obj/lang/cem/cpp.ansi/llgen -I${BUILD}/obj/lang/cem/cpp.ansi/macro_h -I${BUILD}/obj/lang/cem/cpp.ansi/replace_h -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cpp.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/options
+echo lang/cem/cpp.ansi+cpp/main/options
+gcc -c -o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/options/options.o lang/cem/cpp.ansi/options.c -I${BUILD}/obj/lang/cem/cpp.ansi/llgen -I${BUILD}/obj/lang/cem/cpp.ansi/macro_h -I${BUILD}/obj/lang/cem/cpp.ansi/replace_h -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cpp.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/preprocess
+echo lang/cem/cpp.ansi+cpp/main/preprocess
+gcc -c -o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/preprocess/preprocess.o lang/cem/cpp.ansi/preprocess.c -I${BUILD}/obj/lang/cem/cpp.ansi/llgen -I${BUILD}/obj/lang/cem/cpp.ansi/macro_h -I${BUILD}/obj/lang/cem/cpp.ansi/replace_h -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cpp.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/replace
+echo lang/cem/cpp.ansi+cpp/main/replace
+gcc -c -o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/replace/replace.o lang/cem/cpp.ansi/replace.c -I${BUILD}/obj/lang/cem/cpp.ansi/llgen -I${BUILD}/obj/lang/cem/cpp.ansi/macro_h -I${BUILD}/obj/lang/cem/cpp.ansi/replace_h -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cpp.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/skip
+echo lang/cem/cpp.ansi+cpp/main/skip
+gcc -c -o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/skip/skip.o lang/cem/cpp.ansi/skip.c -I${BUILD}/obj/lang/cem/cpp.ansi/llgen -I${BUILD}/obj/lang/cem/cpp.ansi/macro_h -I${BUILD}/obj/lang/cem/cpp.ansi/replace_h -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cpp.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/tokenname
+echo lang/cem/cpp.ansi+cpp/main/tokenname
+gcc -c -o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/tokenname/tokenname.o lang/cem/cpp.ansi/tokenname.c -I${BUILD}/obj/lang/cem/cpp.ansi/llgen -I${BUILD}/obj/lang/cem/cpp.ansi/macro_h -I${BUILD}/obj/lang/cem/cpp.ansi/replace_h -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cpp.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/Lpars
+echo lang/cem/cpp.ansi+cpp/main/Lpars
+gcc -c -o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/Lpars/Lpars.o ${BUILD}/obj/lang/cem/cpp.ansi/llgen/Lpars.c -I${BUILD}/obj/lang/cem/cpp.ansi/llgen -I${BUILD}/obj/lang/cem/cpp.ansi/macro_h -I${BUILD}/obj/lang/cem/cpp.ansi/replace_h -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cpp.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/tokenfile
+echo lang/cem/cpp.ansi+cpp/main/tokenfile
+gcc -c -o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/tokenfile/tokenfile.o ${BUILD}/obj/lang/cem/cpp.ansi/llgen/tokenfile.c -I${BUILD}/obj/lang/cem/cpp.ansi/llgen -I${BUILD}/obj/lang/cem/cpp.ansi/macro_h -I${BUILD}/obj/lang/cem/cpp.ansi/replace_h -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cpp.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/expression
+echo lang/cem/cpp.ansi+cpp/main/expression
+gcc -c -o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/expression/expression.o ${BUILD}/obj/lang/cem/cpp.ansi/llgen/expression.c -I${BUILD}/obj/lang/cem/cpp.ansi/llgen -I${BUILD}/obj/lang/cem/cpp.ansi/macro_h -I${BUILD}/obj/lang/cem/cpp.ansi/replace_h -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cpp.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cpp.ansi/next_c
+echo lang/cem/cpp.ansi+next_c
+sh lang/cem/cpp.ansi/make.next lang/cem/cpp.ansi/macro.str lang/cem/cpp.ansi/replace.str > ${BUILD}/obj/lang/cem/cpp.ansi/next_c/next.c
+mkdir -p ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/next
+echo lang/cem/cpp.ansi+cpp/main/next
+gcc -c -o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/next/next.o ${BUILD}/obj/lang/cem/cpp.ansi/next_c/next.c -I${BUILD}/obj/lang/cem/cpp.ansi/llgen -I${BUILD}/obj/lang/cem/cpp.ansi/macro_h -I${BUILD}/obj/lang/cem/cpp.ansi/replace_h -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cpp.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cpp.ansi/symbol2str_c
+echo lang/cem/cpp.ansi+symbol2str_c
+sh lang/cem/cpp.ansi/make.tokcase < lang/cem/cpp.ansi/tokenname.c > ${BUILD}/obj/lang/cem/cpp.ansi/symbol2str_c/symbol2str.c
+mkdir -p ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/symbol2str
+echo lang/cem/cpp.ansi+cpp/main/symbol2str
+gcc -c -o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/symbol2str/symbol2str.o ${BUILD}/obj/lang/cem/cpp.ansi/symbol2str_c/symbol2str.c -I${BUILD}/obj/lang/cem/cpp.ansi/llgen -I${BUILD}/obj/lang/cem/cpp.ansi/macro_h -I${BUILD}/obj/lang/cem/cpp.ansi/replace_h -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cpp.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cpp.ansi/tabgen_c
+echo lang/cem/cpp.ansi+tabgen_c
+${BUILD}/obj/util/cmisc/tabgen/tabgen -flang/cem/cpp.ansi/char.tab > ${BUILD}/obj/lang/cem/cpp.ansi/tabgen_c/char.c
+mkdir -p ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/char
+echo lang/cem/cpp.ansi+cpp/main/char
+gcc -c -o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/char/char.o ${BUILD}/obj/lang/cem/cpp.ansi/tabgen_c/char.c -I${BUILD}/obj/lang/cem/cpp.ansi/llgen -I${BUILD}/obj/lang/cem/cpp.ansi/macro_h -I${BUILD}/obj/lang/cem/cpp.ansi/replace_h -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/idf/lib -I${BUILD}/obj/modules/src/input/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -Ilang/cem/cpp.ansi
+mkdir -p ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/cpp
+echo lang/cem/cpp.ansi+cpp/main
+rm -f ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/cpp/main.a
+ar cqs ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/cpp/main.a ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/LLlex/LLlex.o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/LLmessage/LLmessage.o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/ch3bin/ch3bin.o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/ch3mon/ch3mon.o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/domacro/domacro.o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/error/error.o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/expr/expr.o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/idf/idf.o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/init/init.o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/input/input.o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/main/main.o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/options/options.o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/preprocess/preprocess.o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/replace/replace.o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/skip/skip.o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/tokenname/tokenname.o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/Lpars/Lpars.o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/tokenfile/tokenfile.o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/expression/expression.o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/next/next.o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/symbol2str/symbol2str.o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/char/char.o
+mkdir -p ${BUILD}/obj/lang/cem/cpp.ansi/cpp
+echo lang/cem/cpp.ansi+cpp
+gcc -o ${BUILD}/obj/lang/cem/cpp.ansi/cpp/cpp ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/cpp/main.a ${BUILD}/obj/modules/src/alloc/lib/lib.a ${BUILD}/obj/modules/src/input/lib/lib.a ${BUILD}/obj/modules/src/print/lib/lib.a ${BUILD}/obj/modules/src/string/lib/lib.a ${BUILD}/obj/modules/src/system/lib/lib.a ${BUILD}/obj/lang/cem/cpp.ansi/cpp/main/cpp/main.a ${BUILD}/obj/modules/src/alloc/lib/lib.a ${BUILD}/obj/modules/src/input/lib/lib.a ${BUILD}/obj/modules/src/print/lib/lib.a ${BUILD}/obj/modules/src/string/lib/lib.a ${BUILD}/obj/modules/src/system/lib/lib.a
+mkdir -p ${BUILD}/obj/util/ego/descr/i386
+echo util/ego/descr+i386
+${BUILD}/obj/lang/cem/cpp.ansi/cpp/cpp -P -I${BUILD}/obj/modules/src/em_data/lib util/ego/descr/i386.descr > ${BUILD}/obj/util/ego/descr/i386/temp
+sed -f util/ego/descr/descr.sed < ${BUILD}/obj/util/ego/descr/i386/temp > ${BUILD}/obj/util/ego/descr/i386/i386.descr
+mkdir -p ${BUILD}/obj/util/ego/descr/i86
+echo util/ego/descr+i86
+${BUILD}/obj/lang/cem/cpp.ansi/cpp/cpp -P -I${BUILD}/obj/modules/src/em_data/lib util/ego/descr/i86.descr > ${BUILD}/obj/util/ego/descr/i86/temp
+sed -f util/ego/descr/descr.sed < ${BUILD}/obj/util/ego/descr/i86/temp > ${BUILD}/obj/util/ego/descr/i86/i86.descr
+mkdir -p ${BUILD}/obj/util/ego/descr/powerpc
+echo util/ego/descr+powerpc
+${BUILD}/obj/lang/cem/cpp.ansi/cpp/cpp -P -I${BUILD}/obj/modules/src/em_data/lib util/ego/descr/powerpc.descr > ${BUILD}/obj/util/ego/descr/powerpc/temp
+sed -f util/ego/descr/descr.sed < ${BUILD}/obj/util/ego/descr/powerpc/temp > ${BUILD}/obj/util/ego/descr/powerpc/powerpc.descr
+mkdir -p ${BUILD}/obj/util/ego/descr/m68020
+echo util/ego/descr+m68020
+${BUILD}/obj/lang/cem/cpp.ansi/cpp/cpp -P -I${BUILD}/obj/modules/src/em_data/lib util/ego/descr/m68020.descr > ${BUILD}/obj/util/ego/descr/m68020/temp
+sed -f util/ego/descr/descr.sed < ${BUILD}/obj/util/ego/descr/m68020/temp > ${BUILD}/obj/util/ego/descr/m68020/m68020.descr
+mkdir -p ${BUILD}/staging/share/ack/ego
+echo util/ego/descr+pkg
+cp ${BUILD}/obj/util/ego/descr/i386/i386.descr ${BUILD}/staging/share/ack/ego/i386.descr
+cp ${BUILD}/obj/util/ego/descr/i86/i86.descr ${BUILD}/staging/share/ack/ego/i86.descr
+cp ${BUILD}/obj/util/ego/descr/powerpc/powerpc.descr ${BUILD}/staging/share/ack/ego/powerpc.descr
+cp ${BUILD}/obj/util/ego/descr/m68020/m68020.descr ${BUILD}/staging/share/ack/ego/m68020.descr
+mkdir -p ${BUILD}/obj/util/ego/share/makecldef/main/makecldef
+echo util/ego/share+makecldef/main/makecldef
+gcc -c -o ${BUILD}/obj/util/ego/share/makecldef/main/makecldef/makecldef.o util/ego/share/makecldef.c  -g -Wno-return-type -Iutil/ego/share
+mkdir -p ${BUILD}/obj/util/ego/share/makecldef/main/makecldef
+echo util/ego/share+makecldef/main
+rm -f ${BUILD}/obj/util/ego/share/makecldef/main/makecldef/main.a
+ar cqs ${BUILD}/obj/util/ego/share/makecldef/main/makecldef/main.a ${BUILD}/obj/util/ego/share/makecldef/main/makecldef/makecldef.o
+mkdir -p ${BUILD}/obj/util/ego/share/makecldef
+echo util/ego/share+makecldef
+gcc -o ${BUILD}/obj/util/ego/share/makecldef/makecldef ${BUILD}/obj/util/ego/share/makecldef/main/makecldef/main.a ${BUILD}/obj/util/ego/share/makecldef/main/makecldef/main.a
+mkdir -p ${BUILD}/obj/util/ego/share/classdefs_h
+echo util/ego/share+classdefs_h
+${BUILD}/obj/util/ego/share/makecldef/makecldef ${BUILD}/obj/modules/src/em_data/lib/em_mnem.h util/ego/share/cldefs.src > ${BUILD}/obj/util/ego/share/classdefs_h/classdefs.h
+mkdir -p ${BUILD}/obj/util/ego/share/pop_push_h
+echo util/ego/share+pop_push_h
+awk -f util/ego/share/pop_push.awk < h/em_table > ${BUILD}/obj/util/ego/share/pop_push_h/pop_push.h
+mkdir -p ${BUILD}/obj/util/ego/share/lib/debug
+echo util/ego/share+lib/debug
+gcc -c -o ${BUILD}/obj/util/ego/share/lib/debug/debug.o util/ego/share/debug.c -I${BUILD}/obj/util/ego/share/classdefs_h -I${BUILD}/obj/util/ego/share/pop_push_h -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego/share
+mkdir -p ${BUILD}/obj/util/ego/share/lib/global
+echo util/ego/share+lib/global
+gcc -c -o ${BUILD}/obj/util/ego/share/lib/global/global.o util/ego/share/global.c -I${BUILD}/obj/util/ego/share/classdefs_h -I${BUILD}/obj/util/ego/share/pop_push_h -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego/share
+mkdir -p ${BUILD}/obj/util/ego/share/lib/files
+echo util/ego/share+lib/files
+gcc -c -o ${BUILD}/obj/util/ego/share/lib/files/files.o util/ego/share/files.c -I${BUILD}/obj/util/ego/share/classdefs_h -I${BUILD}/obj/util/ego/share/pop_push_h -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego/share
+mkdir -p ${BUILD}/obj/util/ego/share/lib/go
+echo util/ego/share+lib/go
+gcc -c -o ${BUILD}/obj/util/ego/share/lib/go/go.o util/ego/share/go.c -I${BUILD}/obj/util/ego/share/classdefs_h -I${BUILD}/obj/util/ego/share/pop_push_h -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego/share
+mkdir -p ${BUILD}/obj/util/ego/share/lib/map
+echo util/ego/share+lib/map
+gcc -c -o ${BUILD}/obj/util/ego/share/lib/map/map.o util/ego/share/map.c -I${BUILD}/obj/util/ego/share/classdefs_h -I${BUILD}/obj/util/ego/share/pop_push_h -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego/share
+mkdir -p ${BUILD}/obj/util/ego/share/lib/utils
+echo util/ego/share+lib/utils
+gcc -c -o ${BUILD}/obj/util/ego/share/lib/utils/utils.o util/ego/share/utils.c -I${BUILD}/obj/util/ego/share/classdefs_h -I${BUILD}/obj/util/ego/share/pop_push_h -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego/share
+mkdir -p ${BUILD}/obj/util/ego/share/lib/get
+echo util/ego/share+lib/get
+gcc -c -o ${BUILD}/obj/util/ego/share/lib/get/get.o util/ego/share/get.c -I${BUILD}/obj/util/ego/share/classdefs_h -I${BUILD}/obj/util/ego/share/pop_push_h -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego/share
+mkdir -p ${BUILD}/obj/util/ego/share/lib/put
+echo util/ego/share+lib/put
+gcc -c -o ${BUILD}/obj/util/ego/share/lib/put/put.o util/ego/share/put.c -I${BUILD}/obj/util/ego/share/classdefs_h -I${BUILD}/obj/util/ego/share/pop_push_h -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego/share
+mkdir -p ${BUILD}/obj/util/ego/share/lib/alloc
+echo util/ego/share+lib/alloc
+gcc -c -o ${BUILD}/obj/util/ego/share/lib/alloc/alloc.o util/ego/share/alloc.c -I${BUILD}/obj/util/ego/share/classdefs_h -I${BUILD}/obj/util/ego/share/pop_push_h -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego/share
+mkdir -p ${BUILD}/obj/util/ego/share/lib/lset
+echo util/ego/share+lib/lset
+gcc -c -o ${BUILD}/obj/util/ego/share/lib/lset/lset.o util/ego/share/lset.c -I${BUILD}/obj/util/ego/share/classdefs_h -I${BUILD}/obj/util/ego/share/pop_push_h -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego/share
+mkdir -p ${BUILD}/obj/util/ego/share/lib/cset
+echo util/ego/share+lib/cset
+gcc -c -o ${BUILD}/obj/util/ego/share/lib/cset/cset.o util/ego/share/cset.c -I${BUILD}/obj/util/ego/share/classdefs_h -I${BUILD}/obj/util/ego/share/pop_push_h -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego/share
+mkdir -p ${BUILD}/obj/util/ego/share/lib/parser
+echo util/ego/share+lib/parser
+gcc -c -o ${BUILD}/obj/util/ego/share/lib/parser/parser.o util/ego/share/parser.c -I${BUILD}/obj/util/ego/share/classdefs_h -I${BUILD}/obj/util/ego/share/pop_push_h -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego/share
+mkdir -p ${BUILD}/obj/util/ego/share/lib/stack_chg
+echo util/ego/share+lib/stack_chg
+gcc -c -o ${BUILD}/obj/util/ego/share/lib/stack_chg/stack_chg.o util/ego/share/stack_chg.c -I${BUILD}/obj/util/ego/share/classdefs_h -I${BUILD}/obj/util/ego/share/pop_push_h -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego/share
+mkdir -p ${BUILD}/obj/util/ego/share/lib/locals
+echo util/ego/share+lib/locals
+gcc -c -o ${BUILD}/obj/util/ego/share/lib/locals/locals.o util/ego/share/locals.c -I${BUILD}/obj/util/ego/share/classdefs_h -I${BUILD}/obj/util/ego/share/pop_push_h -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego/share
+mkdir -p ${BUILD}/obj/util/ego/share/lib/init_glob
+echo util/ego/share+lib/init_glob
+gcc -c -o ${BUILD}/obj/util/ego/share/lib/init_glob/init_glob.o util/ego/share/init_glob.c -I${BUILD}/obj/util/ego/share/classdefs_h -I${BUILD}/obj/util/ego/share/pop_push_h -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego/share
+mkdir -p ${BUILD}/obj/util/ego/share/lib
+echo util/ego/share+lib
+rm -f ${BUILD}/obj/util/ego/share/lib/lib.a
+ar cqs ${BUILD}/obj/util/ego/share/lib/lib.a ${BUILD}/obj/util/ego/share/lib/debug/debug.o ${BUILD}/obj/util/ego/share/lib/global/global.o ${BUILD}/obj/util/ego/share/lib/files/files.o ${BUILD}/obj/util/ego/share/lib/go/go.o ${BUILD}/obj/util/ego/share/lib/map/map.o ${BUILD}/obj/util/ego/share/lib/utils/utils.o ${BUILD}/obj/util/ego/share/lib/get/get.o ${BUILD}/obj/util/ego/share/lib/put/put.o ${BUILD}/obj/util/ego/share/lib/alloc/alloc.o ${BUILD}/obj/util/ego/share/lib/lset/lset.o ${BUILD}/obj/util/ego/share/lib/cset/cset.o ${BUILD}/obj/util/ego/share/lib/parser/parser.o ${BUILD}/obj/util/ego/share/lib/stack_chg/stack_chg.o ${BUILD}/obj/util/ego/share/lib/locals/locals.o ${BUILD}/obj/util/ego/share/lib/init_glob/init_glob.o
+mkdir -p ${BUILD}/obj/util/ego/ud/main/ud
+echo util/ego+ud/main/ud
+gcc -c -o ${BUILD}/obj/util/ego/ud/main/ud/ud.o util/ego/ud/ud.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/ud/main/ud_aux
+echo util/ego+ud/main/ud_aux
+gcc -c -o ${BUILD}/obj/util/ego/ud/main/ud_aux/ud_aux.o util/ego/ud/ud_aux.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/ud/main/ud_const
+echo util/ego+ud/main/ud_const
+gcc -c -o ${BUILD}/obj/util/ego/ud/main/ud_const/ud_const.o util/ego/ud/ud_const.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/ud/main/ud_copy
+echo util/ego+ud/main/ud_copy
+gcc -c -o ${BUILD}/obj/util/ego/ud/main/ud_copy/ud_copy.o util/ego/ud/ud_copy.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/ud/main/ud_defs
+echo util/ego+ud/main/ud_defs
+gcc -c -o ${BUILD}/obj/util/ego/ud/main/ud_defs/ud_defs.o util/ego/ud/ud_defs.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/ud/main/ud
+echo util/ego+ud/main
+rm -f ${BUILD}/obj/util/ego/ud/main/ud/main.a
+ar cqs ${BUILD}/obj/util/ego/ud/main/ud/main.a ${BUILD}/obj/util/ego/ud/main/ud/ud.o ${BUILD}/obj/util/ego/ud/main/ud_aux/ud_aux.o ${BUILD}/obj/util/ego/ud/main/ud_const/ud_const.o ${BUILD}/obj/util/ego/ud/main/ud_copy/ud_copy.o ${BUILD}/obj/util/ego/ud/main/ud_defs/ud_defs.o
+mkdir -p ${BUILD}/obj/util/ego/ud
+echo util/ego+ud
+gcc -o ${BUILD}/obj/util/ego/ud/ud ${BUILD}/obj/util/ego/ud/main/ud/main.a ${BUILD}/obj/util/ego/share/lib/lib.a ${BUILD}/obj/modules/src/em_data/lib/lib.a ${BUILD}/obj/util/ego/ud/main/ud/main.a ${BUILD}/obj/util/ego/share/lib/lib.a ${BUILD}/obj/modules/src/em_data/lib/lib.a
+mkdir -p ${BUILD}/obj/util/ego/ic/main/ic
+echo util/ego+ic/main/ic
+gcc -c -o ${BUILD}/obj/util/ego/ic/main/ic/ic.o util/ego/ic/ic.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/ic/main/ic_aux
+echo util/ego+ic/main/ic_aux
+gcc -c -o ${BUILD}/obj/util/ego/ic/main/ic_aux/ic_aux.o util/ego/ic/ic_aux.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/ic/main/ic_io
+echo util/ego+ic/main/ic_io
+gcc -c -o ${BUILD}/obj/util/ego/ic/main/ic_io/ic_io.o util/ego/ic/ic_io.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/ic/main/ic_lib
+echo util/ego+ic/main/ic_lib
+gcc -c -o ${BUILD}/obj/util/ego/ic/main/ic_lib/ic_lib.o util/ego/ic/ic_lib.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/ic/main/ic_lookup
+echo util/ego+ic/main/ic_lookup
+gcc -c -o ${BUILD}/obj/util/ego/ic/main/ic_lookup/ic_lookup.o util/ego/ic/ic_lookup.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/ic/main/ic
+echo util/ego+ic/main
+rm -f ${BUILD}/obj/util/ego/ic/main/ic/main.a
+ar cqs ${BUILD}/obj/util/ego/ic/main/ic/main.a ${BUILD}/obj/util/ego/ic/main/ic/ic.o ${BUILD}/obj/util/ego/ic/main/ic_aux/ic_aux.o ${BUILD}/obj/util/ego/ic/main/ic_io/ic_io.o ${BUILD}/obj/util/ego/ic/main/ic_lib/ic_lib.o ${BUILD}/obj/util/ego/ic/main/ic_lookup/ic_lookup.o
+mkdir -p ${BUILD}/obj/util/ego/ic
+echo util/ego+ic
+gcc -o ${BUILD}/obj/util/ego/ic/ic ${BUILD}/obj/util/ego/ic/main/ic/main.a ${BUILD}/obj/util/ego/share/lib/lib.a ${BUILD}/obj/modules/src/em_data/lib/lib.a ${BUILD}/obj/util/ego/ic/main/ic/main.a ${BUILD}/obj/util/ego/share/lib/lib.a ${BUILD}/obj/modules/src/em_data/lib/lib.a
+mkdir -p ${BUILD}/obj/util/ego/bo/main/bo
+echo util/ego+bo/main/bo
+gcc -c -o ${BUILD}/obj/util/ego/bo/main/bo/bo.o util/ego/bo/bo.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/bo/main/bo
+echo util/ego+bo/main
+rm -f ${BUILD}/obj/util/ego/bo/main/bo/main.a
+ar cqs ${BUILD}/obj/util/ego/bo/main/bo/main.a ${BUILD}/obj/util/ego/bo/main/bo/bo.o
+mkdir -p ${BUILD}/obj/util/ego/bo
+echo util/ego+bo
+gcc -o ${BUILD}/obj/util/ego/bo/bo ${BUILD}/obj/util/ego/bo/main/bo/main.a ${BUILD}/obj/util/ego/share/lib/lib.a ${BUILD}/obj/modules/src/em_data/lib/lib.a ${BUILD}/obj/util/ego/bo/main/bo/main.a ${BUILD}/obj/util/ego/share/lib/lib.a ${BUILD}/obj/modules/src/em_data/lib/lib.a
+mkdir -p ${BUILD}/obj/util/ego/cf/main/cf
+echo util/ego+cf/main/cf
+gcc -c -o ${BUILD}/obj/util/ego/cf/main/cf/cf.o util/ego/cf/cf.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/cf/main/cf_idom
+echo util/ego+cf/main/cf_idom
+gcc -c -o ${BUILD}/obj/util/ego/cf/main/cf_idom/cf_idom.o util/ego/cf/cf_idom.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/cf/main/cf_loop
+echo util/ego+cf/main/cf_loop
+gcc -c -o ${BUILD}/obj/util/ego/cf/main/cf_loop/cf_loop.o util/ego/cf/cf_loop.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/cf/main/cf_succ
+echo util/ego+cf/main/cf_succ
+gcc -c -o ${BUILD}/obj/util/ego/cf/main/cf_succ/cf_succ.o util/ego/cf/cf_succ.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/cf/main/cf
+echo util/ego+cf/main
+rm -f ${BUILD}/obj/util/ego/cf/main/cf/main.a
+ar cqs ${BUILD}/obj/util/ego/cf/main/cf/main.a ${BUILD}/obj/util/ego/cf/main/cf/cf.o ${BUILD}/obj/util/ego/cf/main/cf_idom/cf_idom.o ${BUILD}/obj/util/ego/cf/main/cf_loop/cf_loop.o ${BUILD}/obj/util/ego/cf/main/cf_succ/cf_succ.o
+mkdir -p ${BUILD}/obj/util/ego/cf
+echo util/ego+cf
+gcc -o ${BUILD}/obj/util/ego/cf/cf ${BUILD}/obj/util/ego/cf/main/cf/main.a ${BUILD}/obj/util/ego/share/lib/lib.a ${BUILD}/obj/modules/src/em_data/lib/lib.a ${BUILD}/obj/util/ego/cf/main/cf/main.a ${BUILD}/obj/util/ego/share/lib/lib.a ${BUILD}/obj/modules/src/em_data/lib/lib.a
+mkdir -p ${BUILD}/obj/util/ego/ca/main/ca
+echo util/ego+ca/main/ca
+gcc -c -o ${BUILD}/obj/util/ego/ca/main/ca/ca.o util/ego/ca/ca.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/ca/main/ca_put
+echo util/ego+ca/main/ca_put
+gcc -c -o ${BUILD}/obj/util/ego/ca/main/ca_put/ca_put.o util/ego/ca/ca_put.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/ca/main/ca
+echo util/ego+ca/main
+rm -f ${BUILD}/obj/util/ego/ca/main/ca/main.a
+ar cqs ${BUILD}/obj/util/ego/ca/main/ca/main.a ${BUILD}/obj/util/ego/ca/main/ca/ca.o ${BUILD}/obj/util/ego/ca/main/ca_put/ca_put.o
+mkdir -p ${BUILD}/obj/util/ego/ca
+echo util/ego+ca
+gcc -o ${BUILD}/obj/util/ego/ca/ca ${BUILD}/obj/util/ego/ca/main/ca/main.a ${BUILD}/obj/util/ego/share/lib/lib.a ${BUILD}/obj/modules/src/em_data/lib/lib.a ${BUILD}/obj/util/ego/ca/main/ca/main.a ${BUILD}/obj/util/ego/share/lib/lib.a ${BUILD}/obj/modules/src/em_data/lib/lib.a
+mkdir -p ${BUILD}/obj/util/ego/cj/main/cj
+echo util/ego+cj/main/cj
+gcc -c -o ${BUILD}/obj/util/ego/cj/main/cj/cj.o util/ego/cj/cj.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/cj/main/cj
+echo util/ego+cj/main
+rm -f ${BUILD}/obj/util/ego/cj/main/cj/main.a
+ar cqs ${BUILD}/obj/util/ego/cj/main/cj/main.a ${BUILD}/obj/util/ego/cj/main/cj/cj.o
+mkdir -p ${BUILD}/obj/util/ego/cj
+echo util/ego+cj
+gcc -o ${BUILD}/obj/util/ego/cj/cj ${BUILD}/obj/util/ego/cj/main/cj/main.a ${BUILD}/obj/util/ego/share/lib/lib.a ${BUILD}/obj/modules/src/em_data/lib/lib.a ${BUILD}/obj/util/ego/cj/main/cj/main.a ${BUILD}/obj/util/ego/share/lib/lib.a ${BUILD}/obj/modules/src/em_data/lib/lib.a
+mkdir -p ${BUILD}/obj/util/ego/ra/makeitems/main/makeitems
+echo util/ego/ra+makeitems/main/makeitems
+gcc -c -o ${BUILD}/obj/util/ego/ra/makeitems/main/makeitems/makeitems.o util/ego/ra/makeitems.c  -g -Wno-return-type -Iutil/ego/ra
+mkdir -p ${BUILD}/obj/util/ego/ra/makeitems/main/makeitems
+echo util/ego/ra+makeitems/main
+rm -f ${BUILD}/obj/util/ego/ra/makeitems/main/makeitems/main.a
+ar cqs ${BUILD}/obj/util/ego/ra/makeitems/main/makeitems/main.a ${BUILD}/obj/util/ego/ra/makeitems/main/makeitems/makeitems.o
+mkdir -p ${BUILD}/obj/util/ego/ra/makeitems
+echo util/ego/ra+makeitems
+gcc -o ${BUILD}/obj/util/ego/ra/makeitems/makeitems ${BUILD}/obj/util/ego/ra/makeitems/main/makeitems/main.a ${BUILD}/obj/util/ego/ra/makeitems/main/makeitems/main.a
+mkdir -p ${BUILD}/obj/util/ego/ra/itemtab_h
+echo util/ego/ra+itemtab_h
+${BUILD}/obj/util/ego/ra/makeitems/makeitems ${BUILD}/obj/modules/src/em_data/lib/em_mnem.h util/ego/ra/itemtab.src > ${BUILD}/obj/util/ego/ra/itemtab_h/itemtab.h
+mkdir -p ${BUILD}/obj/util/ego/ra/ra/main/ra
+echo util/ego/ra+ra/main/ra
+gcc -c -o ${BUILD}/obj/util/ego/ra/ra/main/ra/ra.o util/ego/ra/ra.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/util/ego/ra/itemtab_h -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego/ra
+mkdir -p ${BUILD}/obj/util/ego/ra/ra/main/ra_allocl
+echo util/ego/ra+ra/main/ra_allocl
+gcc -c -o ${BUILD}/obj/util/ego/ra/ra/main/ra_allocl/ra_allocl.o util/ego/ra/ra_allocl.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/util/ego/ra/itemtab_h -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego/ra
+mkdir -p ${BUILD}/obj/util/ego/ra/ra/main/ra_aux
+echo util/ego/ra+ra/main/ra_aux
+gcc -c -o ${BUILD}/obj/util/ego/ra/ra/main/ra_aux/ra_aux.o util/ego/ra/ra_aux.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/util/ego/ra/itemtab_h -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego/ra
+mkdir -p ${BUILD}/obj/util/ego/ra/ra/main/ra_interv
+echo util/ego/ra+ra/main/ra_interv
+gcc -c -o ${BUILD}/obj/util/ego/ra/ra/main/ra_interv/ra_interv.o util/ego/ra/ra_interv.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/util/ego/ra/itemtab_h -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego/ra
+mkdir -p ${BUILD}/obj/util/ego/ra/ra/main/ra_items
+echo util/ego/ra+ra/main/ra_items
+gcc -c -o ${BUILD}/obj/util/ego/ra/ra/main/ra_items/ra_items.o util/ego/ra/ra_items.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/util/ego/ra/itemtab_h -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego/ra
+mkdir -p ${BUILD}/obj/util/ego/ra/ra/main/ra_lifet
+echo util/ego/ra+ra/main/ra_lifet
+gcc -c -o ${BUILD}/obj/util/ego/ra/ra/main/ra_lifet/ra_lifet.o util/ego/ra/ra_lifet.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/util/ego/ra/itemtab_h -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego/ra
+mkdir -p ${BUILD}/obj/util/ego/ra/ra/main/ra_pack
+echo util/ego/ra+ra/main/ra_pack
+gcc -c -o ${BUILD}/obj/util/ego/ra/ra/main/ra_pack/ra_pack.o util/ego/ra/ra_pack.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/util/ego/ra/itemtab_h -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego/ra
+mkdir -p ${BUILD}/obj/util/ego/ra/ra/main/ra_profits
+echo util/ego/ra+ra/main/ra_profits
+gcc -c -o ${BUILD}/obj/util/ego/ra/ra/main/ra_profits/ra_profits.o util/ego/ra/ra_profits.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/util/ego/ra/itemtab_h -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego/ra
+mkdir -p ${BUILD}/obj/util/ego/ra/ra/main/ra_xform
+echo util/ego/ra+ra/main/ra_xform
+gcc -c -o ${BUILD}/obj/util/ego/ra/ra/main/ra_xform/ra_xform.o util/ego/ra/ra_xform.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/util/ego/ra/itemtab_h -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego/ra
+mkdir -p ${BUILD}/obj/util/ego/ra/ra/main/ra
+echo util/ego/ra+ra/main
+rm -f ${BUILD}/obj/util/ego/ra/ra/main/ra/main.a
+ar cqs ${BUILD}/obj/util/ego/ra/ra/main/ra/main.a ${BUILD}/obj/util/ego/ra/ra/main/ra/ra.o ${BUILD}/obj/util/ego/ra/ra/main/ra_allocl/ra_allocl.o ${BUILD}/obj/util/ego/ra/ra/main/ra_aux/ra_aux.o ${BUILD}/obj/util/ego/ra/ra/main/ra_interv/ra_interv.o ${BUILD}/obj/util/ego/ra/ra/main/ra_items/ra_items.o ${BUILD}/obj/util/ego/ra/ra/main/ra_lifet/ra_lifet.o ${BUILD}/obj/util/ego/ra/ra/main/ra_pack/ra_pack.o ${BUILD}/obj/util/ego/ra/ra/main/ra_profits/ra_profits.o ${BUILD}/obj/util/ego/ra/ra/main/ra_xform/ra_xform.o
+mkdir -p ${BUILD}/obj/util/ego/ra/ra
+echo util/ego/ra+ra
+gcc -o ${BUILD}/obj/util/ego/ra/ra/ra ${BUILD}/obj/util/ego/ra/ra/main/ra/main.a ${BUILD}/obj/util/ego/share/lib/lib.a ${BUILD}/obj/modules/src/em_data/lib/lib.a ${BUILD}/obj/util/ego/ra/ra/main/ra/main.a ${BUILD}/obj/util/ego/share/lib/lib.a ${BUILD}/obj/modules/src/em_data/lib/lib.a
+mkdir -p ${BUILD}/obj/util/ego/em_ego/main/em_ego
+echo util/ego+em_ego/main/em_ego
+gcc -c -o ${BUILD}/obj/util/ego/em_ego/main/em_ego/em_ego.o util/ego/em_ego/em_ego.c -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/headers -I${BUILD}/obj/h/emheaders -g -Wno-return-type -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/em_ego/main/em_ego
+echo util/ego+em_ego/main
+rm -f ${BUILD}/obj/util/ego/em_ego/main/em_ego/main.a
+ar cqs ${BUILD}/obj/util/ego/em_ego/main/em_ego/main.a ${BUILD}/obj/util/ego/em_ego/main/em_ego/em_ego.o
+mkdir -p ${BUILD}/obj/util/ego/em_ego
+echo util/ego+em_ego
+gcc -o ${BUILD}/obj/util/ego/em_ego/em_ego ${BUILD}/obj/util/ego/em_ego/main/em_ego/main.a ${BUILD}/obj/modules/src/print/lib/lib.a ${BUILD}/obj/modules/src/string/lib/lib.a ${BUILD}/obj/modules/src/system/lib/lib.a ${BUILD}/obj/util/ego/em_ego/main/em_ego/main.a ${BUILD}/obj/modules/src/print/lib/lib.a ${BUILD}/obj/modules/src/string/lib/lib.a ${BUILD}/obj/modules/src/system/lib/lib.a
+mkdir -p ${BUILD}/obj/util/ego/sr/main/sr
+echo util/ego+sr/main/sr
+gcc -c -o ${BUILD}/obj/util/ego/sr/main/sr/sr.o util/ego/sr/sr.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/sr/main/sr_aux
+echo util/ego+sr/main/sr_aux
+gcc -c -o ${BUILD}/obj/util/ego/sr/main/sr_aux/sr_aux.o util/ego/sr/sr_aux.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/sr/main/sr_cand
+echo util/ego+sr/main/sr_cand
+gcc -c -o ${BUILD}/obj/util/ego/sr/main/sr_cand/sr_cand.o util/ego/sr/sr_cand.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/sr/main/sr_expr
+echo util/ego+sr/main/sr_expr
+gcc -c -o ${BUILD}/obj/util/ego/sr/main/sr_expr/sr_expr.o util/ego/sr/sr_expr.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/sr/main/sr_iv
+echo util/ego+sr/main/sr_iv
+gcc -c -o ${BUILD}/obj/util/ego/sr/main/sr_iv/sr_iv.o util/ego/sr/sr_iv.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/sr/main/sr_reduce
+echo util/ego+sr/main/sr_reduce
+gcc -c -o ${BUILD}/obj/util/ego/sr/main/sr_reduce/sr_reduce.o util/ego/sr/sr_reduce.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/sr/main/sr_xform
+echo util/ego+sr/main/sr_xform
+gcc -c -o ${BUILD}/obj/util/ego/sr/main/sr_xform/sr_xform.o util/ego/sr/sr_xform.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/sr/main/sr
+echo util/ego+sr/main
+rm -f ${BUILD}/obj/util/ego/sr/main/sr/main.a
+ar cqs ${BUILD}/obj/util/ego/sr/main/sr/main.a ${BUILD}/obj/util/ego/sr/main/sr/sr.o ${BUILD}/obj/util/ego/sr/main/sr_aux/sr_aux.o ${BUILD}/obj/util/ego/sr/main/sr_cand/sr_cand.o ${BUILD}/obj/util/ego/sr/main/sr_expr/sr_expr.o ${BUILD}/obj/util/ego/sr/main/sr_iv/sr_iv.o ${BUILD}/obj/util/ego/sr/main/sr_reduce/sr_reduce.o ${BUILD}/obj/util/ego/sr/main/sr_xform/sr_xform.o
+mkdir -p ${BUILD}/obj/util/ego/sr
+echo util/ego+sr
+gcc -o ${BUILD}/obj/util/ego/sr/sr ${BUILD}/obj/util/ego/sr/main/sr/main.a ${BUILD}/obj/util/ego/share/lib/lib.a ${BUILD}/obj/modules/src/em_data/lib/lib.a ${BUILD}/obj/util/ego/sr/main/sr/main.a ${BUILD}/obj/util/ego/share/lib/lib.a ${BUILD}/obj/modules/src/em_data/lib/lib.a
+mkdir -p ${BUILD}/obj/util/ego/sp/main/sp
+echo util/ego+sp/main/sp
+gcc -c -o ${BUILD}/obj/util/ego/sp/main/sp/sp.o util/ego/sp/sp.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/sp/main/sp
+echo util/ego+sp/main
+rm -f ${BUILD}/obj/util/ego/sp/main/sp/main.a
+ar cqs ${BUILD}/obj/util/ego/sp/main/sp/main.a ${BUILD}/obj/util/ego/sp/main/sp/sp.o
+mkdir -p ${BUILD}/obj/util/ego/sp
+echo util/ego+sp
+gcc -o ${BUILD}/obj/util/ego/sp/sp ${BUILD}/obj/util/ego/sp/main/sp/main.a ${BUILD}/obj/util/ego/share/lib/lib.a ${BUILD}/obj/modules/src/em_data/lib/lib.a ${BUILD}/obj/util/ego/sp/main/sp/main.a ${BUILD}/obj/util/ego/share/lib/lib.a ${BUILD}/obj/modules/src/em_data/lib/lib.a
+mkdir -p ${BUILD}/obj/util/ego/il/main/il
+echo util/ego+il/main/il
+gcc -c -o ${BUILD}/obj/util/ego/il/main/il/il.o util/ego/il/il.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/il/main/il1_anal
+echo util/ego+il/main/il1_anal
+gcc -c -o ${BUILD}/obj/util/ego/il/main/il1_anal/il1_anal.o util/ego/il/il1_anal.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/il/main/il1_aux
+echo util/ego+il/main/il1_aux
+gcc -c -o ${BUILD}/obj/util/ego/il/main/il1_aux/il1_aux.o util/ego/il/il1_aux.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/il/main/il1_cal
+echo util/ego+il/main/il1_cal
+gcc -c -o ${BUILD}/obj/util/ego/il/main/il1_cal/il1_cal.o util/ego/il/il1_cal.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/il/main/il1_formal
+echo util/ego+il/main/il1_formal
+gcc -c -o ${BUILD}/obj/util/ego/il/main/il1_formal/il1_formal.o util/ego/il/il1_formal.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/il/main/il2_aux
+echo util/ego+il/main/il2_aux
+gcc -c -o ${BUILD}/obj/util/ego/il/main/il2_aux/il2_aux.o util/ego/il/il2_aux.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/il/main/il3_aux
+echo util/ego+il/main/il3_aux
+gcc -c -o ${BUILD}/obj/util/ego/il/main/il3_aux/il3_aux.o util/ego/il/il3_aux.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/il/main/il3_change
+echo util/ego+il/main/il3_change
+gcc -c -o ${BUILD}/obj/util/ego/il/main/il3_change/il3_change.o util/ego/il/il3_change.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/il/main/il3_subst
+echo util/ego+il/main/il3_subst
+gcc -c -o ${BUILD}/obj/util/ego/il/main/il3_subst/il3_subst.o util/ego/il/il3_subst.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/il/main/il_aux
+echo util/ego+il/main/il_aux
+gcc -c -o ${BUILD}/obj/util/ego/il/main/il_aux/il_aux.o util/ego/il/il_aux.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/il/main/il
+echo util/ego+il/main
+rm -f ${BUILD}/obj/util/ego/il/main/il/main.a
+ar cqs ${BUILD}/obj/util/ego/il/main/il/main.a ${BUILD}/obj/util/ego/il/main/il/il.o ${BUILD}/obj/util/ego/il/main/il1_anal/il1_anal.o ${BUILD}/obj/util/ego/il/main/il1_aux/il1_aux.o ${BUILD}/obj/util/ego/il/main/il1_cal/il1_cal.o ${BUILD}/obj/util/ego/il/main/il1_formal/il1_formal.o ${BUILD}/obj/util/ego/il/main/il2_aux/il2_aux.o ${BUILD}/obj/util/ego/il/main/il3_aux/il3_aux.o ${BUILD}/obj/util/ego/il/main/il3_change/il3_change.o ${BUILD}/obj/util/ego/il/main/il3_subst/il3_subst.o ${BUILD}/obj/util/ego/il/main/il_aux/il_aux.o
+mkdir -p ${BUILD}/obj/util/ego/il
+echo util/ego+il
+gcc -o ${BUILD}/obj/util/ego/il/il ${BUILD}/obj/util/ego/il/main/il/main.a ${BUILD}/obj/util/ego/share/lib/lib.a ${BUILD}/obj/modules/src/em_data/lib/lib.a ${BUILD}/obj/util/ego/il/main/il/main.a ${BUILD}/obj/util/ego/share/lib/lib.a ${BUILD}/obj/modules/src/em_data/lib/lib.a
+mkdir -p ${BUILD}/obj/util/ego/cs/main/cs
+echo util/ego+cs/main/cs
+gcc -c -o ${BUILD}/obj/util/ego/cs/main/cs/cs.o util/ego/cs/cs.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/cs/main/cs_alloc
+echo util/ego+cs/main/cs_alloc
+gcc -c -o ${BUILD}/obj/util/ego/cs/main/cs_alloc/cs_alloc.o util/ego/cs/cs_alloc.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/cs/main/cs_aux
+echo util/ego+cs/main/cs_aux
+gcc -c -o ${BUILD}/obj/util/ego/cs/main/cs_aux/cs_aux.o util/ego/cs/cs_aux.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/cs/main/cs_avail
+echo util/ego+cs/main/cs_avail
+gcc -c -o ${BUILD}/obj/util/ego/cs/main/cs_avail/cs_avail.o util/ego/cs/cs_avail.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/cs/main/cs_debug
+echo util/ego+cs/main/cs_debug
+gcc -c -o ${BUILD}/obj/util/ego/cs/main/cs_debug/cs_debug.o util/ego/cs/cs_debug.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/cs/main/cs_elim
+echo util/ego+cs/main/cs_elim
+gcc -c -o ${BUILD}/obj/util/ego/cs/main/cs_elim/cs_elim.o util/ego/cs/cs_elim.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/cs/main/cs_entity
+echo util/ego+cs/main/cs_entity
+gcc -c -o ${BUILD}/obj/util/ego/cs/main/cs_entity/cs_entity.o util/ego/cs/cs_entity.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/cs/main/cs_getent
+echo util/ego+cs/main/cs_getent
+gcc -c -o ${BUILD}/obj/util/ego/cs/main/cs_getent/cs_getent.o util/ego/cs/cs_getent.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/cs/main/cs_kill
+echo util/ego+cs/main/cs_kill
+gcc -c -o ${BUILD}/obj/util/ego/cs/main/cs_kill/cs_kill.o util/ego/cs/cs_kill.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/cs/main/cs_partit
+echo util/ego+cs/main/cs_partit
+gcc -c -o ${BUILD}/obj/util/ego/cs/main/cs_partit/cs_partit.o util/ego/cs/cs_partit.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/cs/main/cs_profit
+echo util/ego+cs/main/cs_profit
+gcc -c -o ${BUILD}/obj/util/ego/cs/main/cs_profit/cs_profit.o util/ego/cs/cs_profit.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/cs/main/cs_stack
+echo util/ego+cs/main/cs_stack
+gcc -c -o ${BUILD}/obj/util/ego/cs/main/cs_stack/cs_stack.o util/ego/cs/cs_stack.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/cs/main/cs_vnm
+echo util/ego+cs/main/cs_vnm
+gcc -c -o ${BUILD}/obj/util/ego/cs/main/cs_vnm/cs_vnm.o util/ego/cs/cs_vnm.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/cs/main/cs
+echo util/ego+cs/main
+rm -f ${BUILD}/obj/util/ego/cs/main/cs/main.a
+ar cqs ${BUILD}/obj/util/ego/cs/main/cs/main.a ${BUILD}/obj/util/ego/cs/main/cs/cs.o ${BUILD}/obj/util/ego/cs/main/cs_alloc/cs_alloc.o ${BUILD}/obj/util/ego/cs/main/cs_aux/cs_aux.o ${BUILD}/obj/util/ego/cs/main/cs_avail/cs_avail.o ${BUILD}/obj/util/ego/cs/main/cs_debug/cs_debug.o ${BUILD}/obj/util/ego/cs/main/cs_elim/cs_elim.o ${BUILD}/obj/util/ego/cs/main/cs_entity/cs_entity.o ${BUILD}/obj/util/ego/cs/main/cs_getent/cs_getent.o ${BUILD}/obj/util/ego/cs/main/cs_kill/cs_kill.o ${BUILD}/obj/util/ego/cs/main/cs_partit/cs_partit.o ${BUILD}/obj/util/ego/cs/main/cs_profit/cs_profit.o ${BUILD}/obj/util/ego/cs/main/cs_stack/cs_stack.o ${BUILD}/obj/util/ego/cs/main/cs_vnm/cs_vnm.o
+mkdir -p ${BUILD}/obj/util/ego/cs
+echo util/ego+cs
+gcc -o ${BUILD}/obj/util/ego/cs/cs ${BUILD}/obj/util/ego/cs/main/cs/main.a ${BUILD}/obj/util/ego/share/lib/lib.a ${BUILD}/obj/modules/src/em_data/lib/lib.a ${BUILD}/obj/util/ego/cs/main/cs/main.a ${BUILD}/obj/util/ego/share/lib/lib.a ${BUILD}/obj/modules/src/em_data/lib/lib.a
+mkdir -p ${BUILD}/obj/util/ego/lv/main/lv
+echo util/ego+lv/main/lv
+gcc -c -o ${BUILD}/obj/util/ego/lv/main/lv/lv.o util/ego/lv/lv.c -I${BUILD}/obj/util/ego/share/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/h/emheaders -g -Wno-return-type -DVERBOSE -DNOTCOMPACT -Iutil/ego
+mkdir -p ${BUILD}/obj/util/ego/lv/main/lv
+echo util/ego+lv/main
+rm -f ${BUILD}/obj/util/ego/lv/main/lv/main.a
+ar cqs ${BUILD}/obj/util/ego/lv/main/lv/main.a ${BUILD}/obj/util/ego/lv/main/lv/lv.o
+mkdir -p ${BUILD}/obj/util/ego/lv
+echo util/ego+lv
+gcc -o ${BUILD}/obj/util/ego/lv/lv ${BUILD}/obj/util/ego/lv/main/lv/main.a ${BUILD}/obj/util/ego/share/lib/lib.a ${BUILD}/obj/modules/src/em_data/lib/lib.a ${BUILD}/obj/util/ego/lv/main/lv/main.a ${BUILD}/obj/util/ego/share/lib/lib.a ${BUILD}/obj/modules/src/em_data/lib/lib.a
+mkdir -p ${BUILD}/staging/lib/ack/ego ${BUILD}/staging/lib/ack
+echo util/ego+pkg
+cp ${BUILD}/obj/util/ego/ud/ud ${BUILD}/staging/lib/ack/ego/ud
+cp ${BUILD}/obj/util/ego/ic/ic ${BUILD}/staging/lib/ack/ego/ic
+cp ${BUILD}/obj/util/ego/bo/bo ${BUILD}/staging/lib/ack/ego/bo
+cp ${BUILD}/obj/util/ego/cf/cf ${BUILD}/staging/lib/ack/ego/cf
+cp ${BUILD}/obj/util/ego/ca/ca ${BUILD}/staging/lib/ack/ego/ca
+cp ${BUILD}/obj/util/ego/cj/cj ${BUILD}/staging/lib/ack/ego/cj
+cp ${BUILD}/obj/util/ego/ra/ra/ra ${BUILD}/staging/lib/ack/ego/ra
+cp ${BUILD}/obj/util/ego/em_ego/em_ego ${BUILD}/staging/lib/ack/em_ego
+cp ${BUILD}/obj/util/ego/sr/sr ${BUILD}/staging/lib/ack/ego/sr
+cp ${BUILD}/obj/util/ego/sp/sp ${BUILD}/staging/lib/ack/ego/sp
+cp ${BUILD}/obj/util/ego/il/il ${BUILD}/staging/lib/ack/ego/il
+cp ${BUILD}/obj/util/ego/cs/cs ${BUILD}/staging/lib/ack/ego/cs
+cp ${BUILD}/obj/util/ego/lv/lv ${BUILD}/staging/lib/ack/ego/lv
+mkdir -p ${BUILD}/obj/modules/src/read_em/c_mnem_h
+echo modules/src/read_em+c_mnem_h
+modules/src/read_em/m_C_mnem ${BUILD}/obj/util/cmisc/ed/ed h/em_table modules/src/read_em/argtype > ${BUILD}/obj/modules/src/read_em/c_mnem_h/C_mnem.h
+mkdir -p ${BUILD}/obj/modules/src/read_em/c_mnem_narg_h
+echo modules/src/read_em+c_mnem_narg_h
+modules/src/read_em/m_C_mnem_na ${BUILD}/obj/util/cmisc/ed/ed h/em_table modules/src/read_em/argtype > ${BUILD}/obj/modules/src/read_em/c_mnem_narg_h/C_mnem_narg.h
+mkdir -p ${BUILD}/obj/modules/src/read_em/lib_ev/EM_vars
+echo modules/src/read_em+lib_ev/EM_vars
+gcc -c -o ${BUILD}/obj/modules/src/read_em/lib_ev/EM_vars/EM_vars.o modules/src/read_em/EM_vars.c -I${BUILD}/obj/modules/src/read_em/c_mnem_h -I${BUILD}/obj/modules/src/read_em/c_mnem_narg_h -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DPRIVATE=static -DEXPORT= -DNDEBUG -DCHECKING -Imodules/src/read_em
+mkdir -p ${BUILD}/obj/modules/src/read_em/lib_ev/read_em
+echo modules/src/read_em+lib_ev/read_em
+gcc -c -o ${BUILD}/obj/modules/src/read_em/lib_ev/read_em/read_em.o modules/src/read_em/read_em.c -I${BUILD}/obj/modules/src/read_em/c_mnem_h -I${BUILD}/obj/modules/src/read_em/c_mnem_narg_h -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DPRIVATE=static -DEXPORT= -DNDEBUG -DCHECKING -Imodules/src/read_em
+mkdir -p ${BUILD}/obj/modules/src/read_em/lib_ev/mkcalls
+echo modules/src/read_em+lib_ev/mkcalls
+gcc -c -o ${BUILD}/obj/modules/src/read_em/lib_ev/mkcalls/mkcalls.o modules/src/read_em/mkcalls.c -I${BUILD}/obj/modules/src/read_em/c_mnem_h -I${BUILD}/obj/modules/src/read_em/c_mnem_narg_h -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DPRIVATE=static -DEXPORT= -DNDEBUG -DCHECKING -Imodules/src/read_em
+mkdir -p ${BUILD}/obj/modules/src/read_em/lib_ev
+echo modules/src/read_em+lib_ev
+rm -f ${BUILD}/obj/modules/src/read_em/lib_ev/lib_ev.a
+ar cqs ${BUILD}/obj/modules/src/read_em/lib_ev/lib_ev.a ${BUILD}/obj/modules/src/read_em/lib_ev/EM_vars/EM_vars.o ${BUILD}/obj/modules/src/read_em/lib_ev/read_em/read_em.o ${BUILD}/obj/modules/src/read_em/lib_ev/mkcalls/mkcalls.o
+cp modules/src/read_em/em_comp.h ${BUILD}/obj/modules/src/read_em/lib_ev
+mkdir -p ${BUILD}/obj/util/misc/encode/main/convert
+echo util/misc+encode/main/convert
+gcc -c -o ${BUILD}/obj/util/misc/encode/main/convert/convert.o util/misc/convert.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_k -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/read_em/lib_ev -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -Iutil/misc
+mkdir -p ${BUILD}/obj/util/misc/encode/main/encode
+echo util/misc+encode/main
+rm -f ${BUILD}/obj/util/misc/encode/main/encode/main.a
+ar cqs ${BUILD}/obj/util/misc/encode/main/encode/main.a ${BUILD}/obj/util/misc/encode/main/convert/convert.o
+mkdir -p ${BUILD}/obj/util/misc/encode
+echo util/misc+encode
+gcc -o ${BUILD}/obj/util/misc/encode/encode ${BUILD}/obj/util/misc/encode/main/encode/main.a ${BUILD}/obj/modules/src/alloc/lib/lib.a ${BUILD}/obj/modules/src/em_code/lib_k/lib_k.a ${BUILD}/obj/modules/src/print/lib/lib.a ${BUILD}/obj/modules/src/read_em/lib_ev/lib_ev.a ${BUILD}/obj/modules/src/string/lib/lib.a ${BUILD}/obj/modules/src/system/lib/lib.a ${BUILD}/obj/modules/src/em_data/lib/lib.a ${BUILD}/obj/util/misc/encode/main/encode/main.a ${BUILD}/obj/modules/src/alloc/lib/lib.a ${BUILD}/obj/modules/src/em_code/lib_k/lib_k.a ${BUILD}/obj/modules/src/print/lib/lib.a ${BUILD}/obj/modules/src/read_em/lib_ev/lib_ev.a ${BUILD}/obj/modules/src/string/lib/lib.a ${BUILD}/obj/modules/src/system/lib/lib.a ${BUILD}/obj/modules/src/em_data/lib/lib.a
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/C_out
+echo modules/src/em_code+lib_e/C_out
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/C_out/C_out.o modules/src/em_code/C_out.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/bhcst
+echo modules/src/em_code+lib_e/bhcst
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/bhcst/bhcst.o modules/src/em_code/bhcst.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/bhdlb
+echo modules/src/em_code+lib_e/bhdlb
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/bhdlb/bhdlb.o modules/src/em_code/bhdlb.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/bhdnam
+echo modules/src/em_code+lib_e/bhdnam
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/bhdnam/bhdnam.o modules/src/em_code/bhdnam.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/bhfcon
+echo modules/src/em_code+lib_e/bhfcon
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/bhfcon/bhfcon.o modules/src/em_code/bhfcon.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/bhicon
+echo modules/src/em_code+lib_e/bhicon
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/bhicon/bhicon.o modules/src/em_code/bhicon.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/bhilb
+echo modules/src/em_code+lib_e/bhilb
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/bhilb/bhilb.o modules/src/em_code/bhilb.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/bhpnam
+echo modules/src/em_code+lib_e/bhpnam
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/bhpnam/bhpnam.o modules/src/em_code/bhpnam.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/bhucon
+echo modules/src/em_code+lib_e/bhucon
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/bhucon/bhucon.o modules/src/em_code/bhucon.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/crcst
+echo modules/src/em_code+lib_e/crcst
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/crcst/crcst.o modules/src/em_code/crcst.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/crdlb
+echo modules/src/em_code+lib_e/crdlb
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/crdlb/crdlb.o modules/src/em_code/crdlb.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/crdnam
+echo modules/src/em_code+lib_e/crdnam
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/crdnam/crdnam.o modules/src/em_code/crdnam.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/crilb
+echo modules/src/em_code+lib_e/crilb
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/crilb/crilb.o modules/src/em_code/crilb.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/crpnam
+echo modules/src/em_code+lib_e/crpnam
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/crpnam/crpnam.o modules/src/em_code/crpnam.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/crscon
+echo modules/src/em_code+lib_e/crscon
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/crscon/crscon.o modules/src/em_code/crscon.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/crxcon
+echo modules/src/em_code+lib_e/crxcon
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/crxcon/crxcon.o modules/src/em_code/crxcon.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/cst
+echo modules/src/em_code+lib_e/cst
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/cst/cst.o modules/src/em_code/cst.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/dfdlb
+echo modules/src/em_code+lib_e/dfdlb
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/dfdlb/dfdlb.o modules/src/em_code/dfdlb.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/dfdnam
+echo modules/src/em_code+lib_e/dfdnam
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/dfdnam/dfdnam.o modules/src/em_code/dfdnam.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/dfilb
+echo modules/src/em_code+lib_e/dfilb
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/dfilb/dfilb.o modules/src/em_code/dfilb.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/dlb
+echo modules/src/em_code+lib_e/dlb
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/dlb/dlb.o modules/src/em_code/dlb.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/dnam
+echo modules/src/em_code+lib_e/dnam
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/dnam/dnam.o modules/src/em_code/dnam.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/em
+echo modules/src/em_code+lib_e/em
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/em/em.o modules/src/em_code/em.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/end
+echo modules/src/em_code+lib_e/end
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/end/end.o modules/src/em_code/end.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/endarg
+echo modules/src/em_code+lib_e/endarg
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/endarg/endarg.o modules/src/em_code/endarg.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/exc
+echo modules/src/em_code+lib_e/exc
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/exc/exc.o modules/src/em_code/exc.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/failed
+echo modules/src/em_code+lib_e/failed
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/failed/failed.o modules/src/em_code/failed.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/fcon
+echo modules/src/em_code+lib_e/fcon
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/fcon/fcon.o modules/src/em_code/fcon.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/getid
+echo modules/src/em_code+lib_e/getid
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/getid/getid.o modules/src/em_code/getid.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/icon
+echo modules/src/em_code+lib_e/icon
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/icon/icon.o modules/src/em_code/icon.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/ilb
+echo modules/src/em_code+lib_e/ilb
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/ilb/ilb.o modules/src/em_code/ilb.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/insert
+echo modules/src/em_code+lib_e/insert
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/insert/insert.o modules/src/em_code/insert.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/internerr
+echo modules/src/em_code+lib_e/internerr
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/internerr/internerr.o modules/src/em_code/internerr.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/msend
+echo modules/src/em_code+lib_e/msend
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/msend/msend.o modules/src/em_code/msend.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/msstart
+echo modules/src/em_code+lib_e/msstart
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/msstart/msstart.o modules/src/em_code/msstart.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/op
+echo modules/src/em_code+lib_e/op
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/op/op.o modules/src/em_code/op.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/opcst
+echo modules/src/em_code+lib_e/opcst
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/opcst/opcst.o modules/src/em_code/opcst.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/opdlb
+echo modules/src/em_code+lib_e/opdlb
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/opdlb/opdlb.o modules/src/em_code/opdlb.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/opdnam
+echo modules/src/em_code+lib_e/opdnam
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/opdnam/opdnam.o modules/src/em_code/opdnam.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/opilb
+echo modules/src/em_code+lib_e/opilb
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/opilb/opilb.o modules/src/em_code/opilb.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/opnarg
+echo modules/src/em_code+lib_e/opnarg
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/opnarg/opnarg.o modules/src/em_code/opnarg.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/oppnam
+echo modules/src/em_code+lib_e/oppnam
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/oppnam/oppnam.o modules/src/em_code/oppnam.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/pnam
+echo modules/src/em_code+lib_e/pnam
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/pnam/pnam.o modules/src/em_code/pnam.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/pro
+echo modules/src/em_code+lib_e/pro
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/pro/pro.o modules/src/em_code/pro.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/pronarg
+echo modules/src/em_code+lib_e/pronarg
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/pronarg/pronarg.o modules/src/em_code/pronarg.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/psdlb
+echo modules/src/em_code+lib_e/psdlb
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/psdlb/psdlb.o modules/src/em_code/psdlb.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/psdnam
+echo modules/src/em_code+lib_e/psdnam
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/psdnam/psdnam.o modules/src/em_code/psdnam.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/pspnam
+echo modules/src/em_code+lib_e/pspnam
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/pspnam/pspnam.o modules/src/em_code/pspnam.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/scon
+echo modules/src/em_code+lib_e/scon
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/scon/scon.o modules/src/em_code/scon.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e/ucon
+echo modules/src/em_code+lib_e/ucon
+gcc -c -o ${BUILD}/obj/modules/src/em_code/lib_e/ucon/ucon.o modules/src/em_code/ucon.c -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/h/local -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DREADABLE_EM -Imodules/src/em_code
+mkdir -p ${BUILD}/obj/modules/src/em_code/lib_e
+echo modules/src/em_code+lib_e
+rm -f ${BUILD}/obj/modules/src/em_code/lib_e/lib_e.a
+ar cqs ${BUILD}/obj/modules/src/em_code/lib_e/lib_e.a ${BUILD}/obj/modules/src/em_code/lib_e/C_out/C_out.o ${BUILD}/obj/modules/src/em_code/lib_e/bhcst/bhcst.o ${BUILD}/obj/modules/src/em_code/lib_e/bhdlb/bhdlb.o ${BUILD}/obj/modules/src/em_code/lib_e/bhdnam/bhdnam.o ${BUILD}/obj/modules/src/em_code/lib_e/bhfcon/bhfcon.o ${BUILD}/obj/modules/src/em_code/lib_e/bhicon/bhicon.o ${BUILD}/obj/modules/src/em_code/lib_e/bhilb/bhilb.o ${BUILD}/obj/modules/src/em_code/lib_e/bhpnam/bhpnam.o ${BUILD}/obj/modules/src/em_code/lib_e/bhucon/bhucon.o ${BUILD}/obj/modules/src/em_code/lib_e/crcst/crcst.o ${BUILD}/obj/modules/src/em_code/lib_e/crdlb/crdlb.o ${BUILD}/obj/modules/src/em_code/lib_e/crdnam/crdnam.o ${BUILD}/obj/modules/src/em_code/lib_e/crilb/crilb.o ${BUILD}/obj/modules/src/em_code/lib_e/crpnam/crpnam.o ${BUILD}/obj/modules/src/em_code/lib_e/crscon/crscon.o ${BUILD}/obj/modules/src/em_code/lib_e/crxcon/crxcon.o ${BUILD}/obj/modules/src/em_code/lib_e/cst/cst.o ${BUILD}/obj/modules/src/em_code/lib_e/dfdlb/dfdlb.o ${BUILD}/obj/modules/src/em_code/lib_e/dfdnam/dfdnam.o ${BUILD}/obj/modules/src/em_code/lib_e/dfilb/dfilb.o ${BUILD}/obj/modules/src/em_code/lib_e/dlb/dlb.o ${BUILD}/obj/modules/src/em_code/lib_e/dnam/dnam.o ${BUILD}/obj/modules/src/em_code/lib_e/em/em.o ${BUILD}/obj/modules/src/em_code/lib_e/end/end.o ${BUILD}/obj/modules/src/em_code/lib_e/endarg/endarg.o ${BUILD}/obj/modules/src/em_code/lib_e/exc/exc.o ${BUILD}/obj/modules/src/em_code/lib_e/failed/failed.o ${BUILD}/obj/modules/src/em_code/lib_e/fcon/fcon.o ${BUILD}/obj/modules/src/em_code/lib_e/getid/getid.o ${BUILD}/obj/modules/src/em_code/lib_e/icon/icon.o ${BUILD}/obj/modules/src/em_code/lib_e/ilb/ilb.o ${BUILD}/obj/modules/src/em_code/lib_e/insert/insert.o ${BUILD}/obj/modules/src/em_code/lib_e/internerr/internerr.o ${BUILD}/obj/modules/src/em_code/lib_e/msend/msend.o ${BUILD}/obj/modules/src/em_code/lib_e/msstart/msstart.o ${BUILD}/obj/modules/src/em_code/lib_e/op/op.o ${BUILD}/obj/modules/src/em_code/lib_e/opcst/opcst.o ${BUILD}/obj/modules/src/em_code/lib_e/opdlb/opdlb.o ${BUILD}/obj/modules/src/em_code/lib_e/opdnam/opdnam.o ${BUILD}/obj/modules/src/em_code/lib_e/opilb/opilb.o ${BUILD}/obj/modules/src/em_code/lib_e/opnarg/opnarg.o ${BUILD}/obj/modules/src/em_code/lib_e/oppnam/oppnam.o ${BUILD}/obj/modules/src/em_code/lib_e/pnam/pnam.o ${BUILD}/obj/modules/src/em_code/lib_e/pro/pro.o ${BUILD}/obj/modules/src/em_code/lib_e/pronarg/pronarg.o ${BUILD}/obj/modules/src/em_code/lib_e/psdlb/psdlb.o ${BUILD}/obj/modules/src/em_code/lib_e/psdnam/psdnam.o ${BUILD}/obj/modules/src/em_code/lib_e/pspnam/pspnam.o ${BUILD}/obj/modules/src/em_code/lib_e/scon/scon.o ${BUILD}/obj/modules/src/em_code/lib_e/ucon/ucon.o
+cp ${BUILD}/obj/modules/src/em_code/headers/em_codeEK.h ${BUILD}/obj/modules/src/em_code/lib_e
+cp ${BUILD}/obj/modules/src/em_code/headers/em_code.h ${BUILD}/obj/modules/src/em_code/lib_e
+cp ${BUILD}/obj/modules/src/em_code/headers/em_codeCE.h ${BUILD}/obj/modules/src/em_code/lib_e
+cp ${BUILD}/obj/modules/src/em_code/headers/em_codeO.h ${BUILD}/obj/modules/src/em_code/lib_e
+mkdir -p ${BUILD}/obj/modules/src/read_em/lib_kv/EM_vars
+echo modules/src/read_em+lib_kv/EM_vars
+gcc -c -o ${BUILD}/obj/modules/src/read_em/lib_kv/EM_vars/EM_vars.o modules/src/read_em/EM_vars.c -I${BUILD}/obj/modules/src/read_em/c_mnem_h -I${BUILD}/obj/modules/src/read_em/c_mnem_narg_h -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DPRIVATE=static -DEXPORT= -DNDEBUG -DCHECKING -DCOMPACT -Imodules/src/read_em
+mkdir -p ${BUILD}/obj/modules/src/read_em/lib_kv/read_em
+echo modules/src/read_em+lib_kv/read_em
+gcc -c -o ${BUILD}/obj/modules/src/read_em/lib_kv/read_em/read_em.o modules/src/read_em/read_em.c -I${BUILD}/obj/modules/src/read_em/c_mnem_h -I${BUILD}/obj/modules/src/read_em/c_mnem_narg_h -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DPRIVATE=static -DEXPORT= -DNDEBUG -DCHECKING -DCOMPACT -Imodules/src/read_em
+mkdir -p ${BUILD}/obj/modules/src/read_em/lib_kv/mkcalls
+echo modules/src/read_em+lib_kv/mkcalls
+gcc -c -o ${BUILD}/obj/modules/src/read_em/lib_kv/mkcalls/mkcalls.o modules/src/read_em/mkcalls.c -I${BUILD}/obj/modules/src/read_em/c_mnem_h -I${BUILD}/obj/modules/src/read_em/c_mnem_narg_h -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/headers -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DPRIVATE=static -DEXPORT= -DNDEBUG -DCHECKING -DCOMPACT -Imodules/src/read_em
+mkdir -p ${BUILD}/obj/modules/src/read_em/lib_kv
+echo modules/src/read_em+lib_kv
+rm -f ${BUILD}/obj/modules/src/read_em/lib_kv/lib_kv.a
+ar cqs ${BUILD}/obj/modules/src/read_em/lib_kv/lib_kv.a ${BUILD}/obj/modules/src/read_em/lib_kv/EM_vars/EM_vars.o ${BUILD}/obj/modules/src/read_em/lib_kv/read_em/read_em.o ${BUILD}/obj/modules/src/read_em/lib_kv/mkcalls/mkcalls.o
+cp modules/src/read_em/em_comp.h ${BUILD}/obj/modules/src/read_em/lib_kv
+mkdir -p ${BUILD}/obj/util/misc/decode/main/convert
+echo util/misc+decode/main/convert
+gcc -c -o ${BUILD}/obj/util/misc/decode/main/convert/convert.o util/misc/convert.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/em_code/lib_e -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/read_em/lib_kv -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -Iutil/misc
+mkdir -p ${BUILD}/obj/util/misc/decode/main/decode
+echo util/misc+decode/main
+rm -f ${BUILD}/obj/util/misc/decode/main/decode/main.a
+ar cqs ${BUILD}/obj/util/misc/decode/main/decode/main.a ${BUILD}/obj/util/misc/decode/main/convert/convert.o
+mkdir -p ${BUILD}/obj/util/misc/decode
+echo util/misc+decode
+gcc -o ${BUILD}/obj/util/misc/decode/decode ${BUILD}/obj/util/misc/decode/main/decode/main.a ${BUILD}/obj/modules/src/alloc/lib/lib.a ${BUILD}/obj/modules/src/em_code/lib_e/lib_e.a ${BUILD}/obj/modules/src/print/lib/lib.a ${BUILD}/obj/modules/src/read_em/lib_kv/lib_kv.a ${BUILD}/obj/modules/src/string/lib/lib.a ${BUILD}/obj/modules/src/system/lib/lib.a ${BUILD}/obj/modules/src/em_data/lib/lib.a ${BUILD}/obj/util/misc/decode/main/decode/main.a ${BUILD}/obj/modules/src/alloc/lib/lib.a ${BUILD}/obj/modules/src/em_code/lib_e/lib_e.a ${BUILD}/obj/modules/src/print/lib/lib.a ${BUILD}/obj/modules/src/read_em/lib_kv/lib_kv.a ${BUILD}/obj/modules/src/string/lib/lib.a ${BUILD}/obj/modules/src/system/lib/lib.a ${BUILD}/obj/modules/src/em_data/lib/lib.a
+mkdir -p ${BUILD}/obj/util/misc/esize/main/esize
+echo util/misc+esize/main/esize
+gcc -c -o ${BUILD}/obj/util/misc/esize/main/esize/esize.o util/misc/esize.c  -g -Wno-return-type -Iutil/misc
+mkdir -p ${BUILD}/obj/util/misc/esize/main/esize
+echo util/misc+esize/main
+rm -f ${BUILD}/obj/util/misc/esize/main/esize/main.a
+ar cqs ${BUILD}/obj/util/misc/esize/main/esize/main.a ${BUILD}/obj/util/misc/esize/main/esize/esize.o
+mkdir -p ${BUILD}/obj/util/misc/esize
+echo util/misc+esize
+gcc -o ${BUILD}/obj/util/misc/esize/esize ${BUILD}/obj/util/misc/esize/main/esize/main.a ${BUILD}/obj/util/misc/esize/main/esize/main.a
+mkdir -p ${BUILD}/staging/lib/ack ${BUILD}/staging/share/man/man6 ${BUILD}/staging/bin ${BUILD}/staging/share/man/man1
+echo util/misc+pkg
+cp ${BUILD}/obj/util/misc/encode/encode ${BUILD}/staging/lib/ack/em_encode
+cp util/misc/em_decode.6 ${BUILD}/staging/share/man/man6/em_decode.6
+cp ${BUILD}/obj/util/misc/decode/decode ${BUILD}/staging/lib/ack/em_decode
+cp ${BUILD}/obj/util/misc/esize/esize ${BUILD}/staging/bin/esize
+cp util/misc/esize.1 ${BUILD}/staging/share/man/man1/esize.1
+mkdir -p ${BUILD}/obj/util/opt/yacc
+echo util/opt+yacc
+yacc -t -b ${BUILD}/obj/util/opt/yacc/y -d util/opt/mktab.y
+mkdir -p ${BUILD}/obj/util/opt/flex
+echo util/opt+flex
+flex -s -t util/opt/scan.l > ${BUILD}/obj/util/opt/flex/lex.yy.c
+mkdir -p ${BUILD}/obj/util/opt/mktab/main/y.tab
+echo util/opt+mktab/main/y.tab
+gcc -c -o ${BUILD}/obj/util/opt/mktab/main/y.tab/y.tab.o ${BUILD}/obj/util/opt/yacc/y.tab.c -I${BUILD}/obj/util/opt/flex -I${BUILD}/obj/util/opt/yacc -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -Iutil/opt
+mkdir -p ${BUILD}/obj/util/opt/mktab/main/lex.yy
+echo util/opt+mktab/main/lex.yy
+gcc -c -o ${BUILD}/obj/util/opt/mktab/main/lex.yy/lex.yy.o ${BUILD}/obj/util/opt/flex/lex.yy.c -I${BUILD}/obj/util/opt/flex -I${BUILD}/obj/util/opt/yacc -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -Iutil/opt
+mkdir -p ${BUILD}/obj/util/opt/mktab/main/mktab
+echo util/opt+mktab/main
+rm -f ${BUILD}/obj/util/opt/mktab/main/mktab/main.a
+ar cqs ${BUILD}/obj/util/opt/mktab/main/mktab/main.a ${BUILD}/obj/util/opt/mktab/main/y.tab/y.tab.o ${BUILD}/obj/util/opt/mktab/main/lex.yy/lex.yy.o
+mkdir -p ${BUILD}/obj/util/opt/mktab
+echo util/opt+mktab
+gcc -o ${BUILD}/obj/util/opt/mktab/mktab ${BUILD}/obj/util/opt/mktab/main/mktab/main.a ${BUILD}/obj/modules/src/em_data/lib/lib.a ${BUILD}/obj/util/opt/mktab/main/mktab/main.a ${BUILD}/obj/modules/src/em_data/lib/lib.a
+mkdir -p ${BUILD}/obj/util/opt/pattern_c
+echo util/opt+pattern_c
+${BUILD}/obj/lang/cem/cpp.ansi/cpp/cpp < util/opt/patterns | ${BUILD}/obj/util/opt/mktab/mktab > ${BUILD}/obj/util/opt/pattern_c/pattern.c
+mkdir -p ${BUILD}/obj/util/opt/em_opt2/main/pattern
+echo util/opt+em_opt2/main/pattern
+gcc -c -o ${BUILD}/obj/util/opt/em_opt2/main/pattern/pattern.o ${BUILD}/obj/util/opt/pattern_c/pattern.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -DGLOBAL_OPT -Iutil/opt
+mkdir -p ${BUILD}/obj/util/opt/pop_push_c
+echo util/opt+pop_push_c
+awk -f util/opt/pop_push.awk < h/em_table > ${BUILD}/obj/util/opt/pop_push_c/pop_push.c
+mkdir -p ${BUILD}/obj/util/opt/em_opt2/main/pop_push
+echo util/opt+em_opt2/main/pop_push
+gcc -c -o ${BUILD}/obj/util/opt/em_opt2/main/pop_push/pop_push.o ${BUILD}/obj/util/opt/pop_push_c/pop_push.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -DGLOBAL_OPT -Iutil/opt
+mkdir -p ${BUILD}/obj/util/opt/em_opt2/main/alloc
+echo util/opt+em_opt2/main/alloc
+gcc -c -o ${BUILD}/obj/util/opt/em_opt2/main/alloc/alloc.o util/opt/alloc.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -DGLOBAL_OPT -Iutil/opt
+mkdir -p ${BUILD}/obj/util/opt/em_opt2/main/backward
+echo util/opt+em_opt2/main/backward
+gcc -c -o ${BUILD}/obj/util/opt/em_opt2/main/backward/backward.o util/opt/backward.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -DGLOBAL_OPT -Iutil/opt
+mkdir -p ${BUILD}/obj/util/opt/em_opt2/main/cleanup
+echo util/opt+em_opt2/main/cleanup
+gcc -c -o ${BUILD}/obj/util/opt/em_opt2/main/cleanup/cleanup.o util/opt/cleanup.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -DGLOBAL_OPT -Iutil/opt
+mkdir -p ${BUILD}/obj/util/opt/em_opt2/main/flow
+echo util/opt+em_opt2/main/flow
+gcc -c -o ${BUILD}/obj/util/opt/em_opt2/main/flow/flow.o util/opt/flow.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -DGLOBAL_OPT -Iutil/opt
+mkdir -p ${BUILD}/obj/util/opt/em_opt2/main/getline
+echo util/opt+em_opt2/main/getline
+gcc -c -o ${BUILD}/obj/util/opt/em_opt2/main/getline/getline.o util/opt/getline.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -DGLOBAL_OPT -Iutil/opt
+mkdir -p ${BUILD}/obj/util/opt/em_opt2/main/lookup
+echo util/opt+em_opt2/main/lookup
+gcc -c -o ${BUILD}/obj/util/opt/em_opt2/main/lookup/lookup.o util/opt/lookup.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -DGLOBAL_OPT -Iutil/opt
+mkdir -p ${BUILD}/obj/util/opt/em_opt2/main/main
+echo util/opt+em_opt2/main/main
+gcc -c -o ${BUILD}/obj/util/opt/em_opt2/main/main/main.o util/opt/main.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -DGLOBAL_OPT -Iutil/opt
+mkdir -p ${BUILD}/obj/util/opt/em_opt2/main/peephole
+echo util/opt+em_opt2/main/peephole
+gcc -c -o ${BUILD}/obj/util/opt/em_opt2/main/peephole/peephole.o util/opt/peephole.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -DGLOBAL_OPT -Iutil/opt
+mkdir -p ${BUILD}/obj/util/opt/em_opt2/main/process
+echo util/opt+em_opt2/main/process
+gcc -c -o ${BUILD}/obj/util/opt/em_opt2/main/process/process.o util/opt/process.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -DGLOBAL_OPT -Iutil/opt
+mkdir -p ${BUILD}/obj/util/opt/em_opt2/main/putline
+echo util/opt+em_opt2/main/putline
+gcc -c -o ${BUILD}/obj/util/opt/em_opt2/main/putline/putline.o util/opt/putline.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -DGLOBAL_OPT -Iutil/opt
+mkdir -p ${BUILD}/obj/util/opt/em_opt2/main/reg
+echo util/opt+em_opt2/main/reg
+gcc -c -o ${BUILD}/obj/util/opt/em_opt2/main/reg/reg.o util/opt/reg.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -DGLOBAL_OPT -Iutil/opt
+mkdir -p ${BUILD}/obj/util/opt/em_opt2/main/special
+echo util/opt+em_opt2/main/special
+gcc -c -o ${BUILD}/obj/util/opt/em_opt2/main/special/special.o util/opt/special.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -DGLOBAL_OPT -Iutil/opt
+mkdir -p ${BUILD}/obj/util/opt/em_opt2/main/tes
+echo util/opt+em_opt2/main/tes
+gcc -c -o ${BUILD}/obj/util/opt/em_opt2/main/tes/tes.o util/opt/tes.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -DGLOBAL_OPT -Iutil/opt
+mkdir -p ${BUILD}/obj/util/opt/em_opt2/main/util
+echo util/opt+em_opt2/main/util
+gcc -c -o ${BUILD}/obj/util/opt/em_opt2/main/util/util.o util/opt/util.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -DGLOBAL_OPT -Iutil/opt
+mkdir -p ${BUILD}/obj/util/opt/em_opt2/main/var
+echo util/opt+em_opt2/main/var
+gcc -c -o ${BUILD}/obj/util/opt/em_opt2/main/var/var.o util/opt/var.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -DGLOBAL_OPT -Iutil/opt
+mkdir -p ${BUILD}/obj/util/opt/em_opt2/main/em_opt2
+echo util/opt+em_opt2/main
+rm -f ${BUILD}/obj/util/opt/em_opt2/main/em_opt2/main.a
+ar cqs ${BUILD}/obj/util/opt/em_opt2/main/em_opt2/main.a ${BUILD}/obj/util/opt/em_opt2/main/pattern/pattern.o ${BUILD}/obj/util/opt/em_opt2/main/pop_push/pop_push.o ${BUILD}/obj/util/opt/em_opt2/main/alloc/alloc.o ${BUILD}/obj/util/opt/em_opt2/main/backward/backward.o ${BUILD}/obj/util/opt/em_opt2/main/cleanup/cleanup.o ${BUILD}/obj/util/opt/em_opt2/main/flow/flow.o ${BUILD}/obj/util/opt/em_opt2/main/getline/getline.o ${BUILD}/obj/util/opt/em_opt2/main/lookup/lookup.o ${BUILD}/obj/util/opt/em_opt2/main/main/main.o ${BUILD}/obj/util/opt/em_opt2/main/peephole/peephole.o ${BUILD}/obj/util/opt/em_opt2/main/process/process.o ${BUILD}/obj/util/opt/em_opt2/main/putline/putline.o ${BUILD}/obj/util/opt/em_opt2/main/reg/reg.o ${BUILD}/obj/util/opt/em_opt2/main/special/special.o ${BUILD}/obj/util/opt/em_opt2/main/tes/tes.o ${BUILD}/obj/util/opt/em_opt2/main/util/util.o ${BUILD}/obj/util/opt/em_opt2/main/var/var.o
+mkdir -p ${BUILD}/obj/util/opt/em_opt2
+echo util/opt+em_opt2
+gcc -o ${BUILD}/obj/util/opt/em_opt2/em_opt2 ${BUILD}/obj/util/opt/em_opt2/main/em_opt2/main.a ${BUILD}/obj/modules/src/alloc/lib/lib.a ${BUILD}/obj/modules/src/print/lib/lib.a ${BUILD}/obj/modules/src/string/lib/lib.a ${BUILD}/obj/modules/src/system/lib/lib.a ${BUILD}/obj/modules/src/em_data/lib/lib.a ${BUILD}/obj/util/opt/em_opt2/main/em_opt2/main.a ${BUILD}/obj/modules/src/alloc/lib/lib.a ${BUILD}/obj/modules/src/print/lib/lib.a ${BUILD}/obj/modules/src/string/lib/lib.a ${BUILD}/obj/modules/src/system/lib/lib.a ${BUILD}/obj/modules/src/em_data/lib/lib.a
+mkdir -p ${BUILD}/obj/util/opt/em_opt/main/pattern
+echo util/opt+em_opt/main/pattern
+gcc -c -o ${BUILD}/obj/util/opt/em_opt/main/pattern/pattern.o ${BUILD}/obj/util/opt/pattern_c/pattern.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -Iutil/opt
+mkdir -p ${BUILD}/obj/util/opt/em_opt/main/pop_push
+echo util/opt+em_opt/main/pop_push
+gcc -c -o ${BUILD}/obj/util/opt/em_opt/main/pop_push/pop_push.o ${BUILD}/obj/util/opt/pop_push_c/pop_push.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -Iutil/opt
+mkdir -p ${BUILD}/obj/util/opt/em_opt/main/alloc
+echo util/opt+em_opt/main/alloc
+gcc -c -o ${BUILD}/obj/util/opt/em_opt/main/alloc/alloc.o util/opt/alloc.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -Iutil/opt
+mkdir -p ${BUILD}/obj/util/opt/em_opt/main/backward
+echo util/opt+em_opt/main/backward
+gcc -c -o ${BUILD}/obj/util/opt/em_opt/main/backward/backward.o util/opt/backward.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -Iutil/opt
+mkdir -p ${BUILD}/obj/util/opt/em_opt/main/cleanup
+echo util/opt+em_opt/main/cleanup
+gcc -c -o ${BUILD}/obj/util/opt/em_opt/main/cleanup/cleanup.o util/opt/cleanup.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -Iutil/opt
+mkdir -p ${BUILD}/obj/util/opt/em_opt/main/flow
+echo util/opt+em_opt/main/flow
+gcc -c -o ${BUILD}/obj/util/opt/em_opt/main/flow/flow.o util/opt/flow.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -Iutil/opt
+mkdir -p ${BUILD}/obj/util/opt/em_opt/main/getline
+echo util/opt+em_opt/main/getline
+gcc -c -o ${BUILD}/obj/util/opt/em_opt/main/getline/getline.o util/opt/getline.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -Iutil/opt
+mkdir -p ${BUILD}/obj/util/opt/em_opt/main/lookup
+echo util/opt+em_opt/main/lookup
+gcc -c -o ${BUILD}/obj/util/opt/em_opt/main/lookup/lookup.o util/opt/lookup.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -Iutil/opt
+mkdir -p ${BUILD}/obj/util/opt/em_opt/main/main
+echo util/opt+em_opt/main/main
+gcc -c -o ${BUILD}/obj/util/opt/em_opt/main/main/main.o util/opt/main.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -Iutil/opt
+mkdir -p ${BUILD}/obj/util/opt/em_opt/main/peephole
+echo util/opt+em_opt/main/peephole
+gcc -c -o ${BUILD}/obj/util/opt/em_opt/main/peephole/peephole.o util/opt/peephole.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -Iutil/opt
+mkdir -p ${BUILD}/obj/util/opt/em_opt/main/process
+echo util/opt+em_opt/main/process
+gcc -c -o ${BUILD}/obj/util/opt/em_opt/main/process/process.o util/opt/process.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -Iutil/opt
+mkdir -p ${BUILD}/obj/util/opt/em_opt/main/putline
+echo util/opt+em_opt/main/putline
+gcc -c -o ${BUILD}/obj/util/opt/em_opt/main/putline/putline.o util/opt/putline.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -Iutil/opt
+mkdir -p ${BUILD}/obj/util/opt/em_opt/main/reg
+echo util/opt+em_opt/main/reg
+gcc -c -o ${BUILD}/obj/util/opt/em_opt/main/reg/reg.o util/opt/reg.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -Iutil/opt
+mkdir -p ${BUILD}/obj/util/opt/em_opt/main/special
+echo util/opt+em_opt/main/special
+gcc -c -o ${BUILD}/obj/util/opt/em_opt/main/special/special.o util/opt/special.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -Iutil/opt
+mkdir -p ${BUILD}/obj/util/opt/em_opt/main/tes
+echo util/opt+em_opt/main/tes
+gcc -c -o ${BUILD}/obj/util/opt/em_opt/main/tes/tes.o util/opt/tes.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -Iutil/opt
+mkdir -p ${BUILD}/obj/util/opt/em_opt/main/util
+echo util/opt+em_opt/main/util
+gcc -c -o ${BUILD}/obj/util/opt/em_opt/main/util/util.o util/opt/util.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -Iutil/opt
+mkdir -p ${BUILD}/obj/util/opt/em_opt/main/var
+echo util/opt+em_opt/main/var
+gcc -c -o ${BUILD}/obj/util/opt/em_opt/main/var/var.o util/opt/var.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/alloc/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -Iutil/opt
+mkdir -p ${BUILD}/obj/util/opt/em_opt/main/em_opt
+echo util/opt+em_opt/main
+rm -f ${BUILD}/obj/util/opt/em_opt/main/em_opt/main.a
+ar cqs ${BUILD}/obj/util/opt/em_opt/main/em_opt/main.a ${BUILD}/obj/util/opt/em_opt/main/pattern/pattern.o ${BUILD}/obj/util/opt/em_opt/main/pop_push/pop_push.o ${BUILD}/obj/util/opt/em_opt/main/alloc/alloc.o ${BUILD}/obj/util/opt/em_opt/main/backward/backward.o ${BUILD}/obj/util/opt/em_opt/main/cleanup/cleanup.o ${BUILD}/obj/util/opt/em_opt/main/flow/flow.o ${BUILD}/obj/util/opt/em_opt/main/getline/getline.o ${BUILD}/obj/util/opt/em_opt/main/lookup/lookup.o ${BUILD}/obj/util/opt/em_opt/main/main/main.o ${BUILD}/obj/util/opt/em_opt/main/peephole/peephole.o ${BUILD}/obj/util/opt/em_opt/main/process/process.o ${BUILD}/obj/util/opt/em_opt/main/putline/putline.o ${BUILD}/obj/util/opt/em_opt/main/reg/reg.o ${BUILD}/obj/util/opt/em_opt/main/special/special.o ${BUILD}/obj/util/opt/em_opt/main/tes/tes.o ${BUILD}/obj/util/opt/em_opt/main/util/util.o ${BUILD}/obj/util/opt/em_opt/main/var/var.o
+mkdir -p ${BUILD}/obj/util/opt/em_opt
+echo util/opt+em_opt
+gcc -o ${BUILD}/obj/util/opt/em_opt/em_opt ${BUILD}/obj/util/opt/em_opt/main/em_opt/main.a ${BUILD}/obj/modules/src/alloc/lib/lib.a ${BUILD}/obj/modules/src/print/lib/lib.a ${BUILD}/obj/modules/src/string/lib/lib.a ${BUILD}/obj/modules/src/system/lib/lib.a ${BUILD}/obj/modules/src/em_data/lib/lib.a ${BUILD}/obj/util/opt/em_opt/main/em_opt/main.a ${BUILD}/obj/modules/src/alloc/lib/lib.a ${BUILD}/obj/modules/src/print/lib/lib.a ${BUILD}/obj/modules/src/string/lib/lib.a ${BUILD}/obj/modules/src/system/lib/lib.a ${BUILD}/obj/modules/src/em_data/lib/lib.a
+mkdir -p ${BUILD}/staging/share/man/man6 ${BUILD}/staging/lib/ack
+echo util/opt+pkg
+cp util/opt/em_opt.6 ${BUILD}/staging/share/man/man6/em_opt.6
+cp ${BUILD}/obj/util/opt/em_opt2/em_opt2 ${BUILD}/staging/lib/ack/em_opt2
+cp ${BUILD}/obj/util/opt/em_opt/em_opt ${BUILD}/staging/lib/ack/em_opt
+mkdir -p ${BUILD}/obj/modules/src/object/lib/rd
+echo modules/src/object+lib/rd
+gcc -c -o ${BUILD}/obj/modules/src/object/lib/rd/rd.o modules/src/object/rd.c -I${BUILD}/obj/modules/headers -I${BUILD}/obj/h/local -I${BUILD}/obj/h/emheaders -g -Wno-return-type -Imodules/src/object
+mkdir -p ${BUILD}/obj/modules/src/object/lib/rd_arhdr
+echo modules/src/object+lib/rd_arhdr
+gcc -c -o ${BUILD}/obj/modules/src/object/lib/rd_arhdr/rd_arhdr.o modules/src/object/rd_arhdr.c -I${BUILD}/obj/modules/headers -I${BUILD}/obj/h/local -I${BUILD}/obj/h/emheaders -g -Wno-return-type -Imodules/src/object
+mkdir -p ${BUILD}/obj/modules/src/object/lib/rd_bytes
+echo modules/src/object+lib/rd_bytes
+gcc -c -o ${BUILD}/obj/modules/src/object/lib/rd_bytes/rd_bytes.o modules/src/object/rd_bytes.c -I${BUILD}/obj/modules/headers -I${BUILD}/obj/h/local -I${BUILD}/obj/h/emheaders -g -Wno-return-type -Imodules/src/object
+mkdir -p ${BUILD}/obj/modules/src/object/lib/rd_int2
+echo modules/src/object+lib/rd_int2
+gcc -c -o ${BUILD}/obj/modules/src/object/lib/rd_int2/rd_int2.o modules/src/object/rd_int2.c -I${BUILD}/obj/modules/headers -I${BUILD}/obj/h/local -I${BUILD}/obj/h/emheaders -g -Wno-return-type -Imodules/src/object
+mkdir -p ${BUILD}/obj/modules/src/object/lib/rd_long
+echo modules/src/object+lib/rd_long
+gcc -c -o ${BUILD}/obj/modules/src/object/lib/rd_long/rd_long.o modules/src/object/rd_long.c -I${BUILD}/obj/modules/headers -I${BUILD}/obj/h/local -I${BUILD}/obj/h/emheaders -g -Wno-return-type -Imodules/src/object
+mkdir -p ${BUILD}/obj/modules/src/object/lib/rd_ranlib
+echo modules/src/object+lib/rd_ranlib
+gcc -c -o ${BUILD}/obj/modules/src/object/lib/rd_ranlib/rd_ranlib.o modules/src/object/rd_ranlib.c -I${BUILD}/obj/modules/headers -I${BUILD}/obj/h/local -I${BUILD}/obj/h/emheaders -g -Wno-return-type -Imodules/src/object
+mkdir -p ${BUILD}/obj/modules/src/object/lib/rd_unsig2
+echo modules/src/object+lib/rd_unsig2
+gcc -c -o ${BUILD}/obj/modules/src/object/lib/rd_unsig2/rd_unsig2.o modules/src/object/rd_unsig2.c -I${BUILD}/obj/modules/headers -I${BUILD}/obj/h/local -I${BUILD}/obj/h/emheaders -g -Wno-return-type -Imodules/src/object
+mkdir -p ${BUILD}/obj/modules/src/object/lib/wr
+echo modules/src/object+lib/wr
+gcc -c -o ${BUILD}/obj/modules/src/object/lib/wr/wr.o modules/src/object/wr.c -I${BUILD}/obj/modules/headers -I${BUILD}/obj/h/local -I${BUILD}/obj/h/emheaders -g -Wno-return-type -Imodules/src/object
+mkdir -p ${BUILD}/obj/modules/src/object/lib/wr_arhdr
+echo modules/src/object+lib/wr_arhdr
+gcc -c -o ${BUILD}/obj/modules/src/object/lib/wr_arhdr/wr_arhdr.o modules/src/object/wr_arhdr.c -I${BUILD}/obj/modules/headers -I${BUILD}/obj/h/local -I${BUILD}/obj/h/emheaders -g -Wno-return-type -Imodules/src/object
+mkdir -p ${BUILD}/obj/modules/src/object/lib/wr_bytes
+echo modules/src/object+lib/wr_bytes
+gcc -c -o ${BUILD}/obj/modules/src/object/lib/wr_bytes/wr_bytes.o modules/src/object/wr_bytes.c -I${BUILD}/obj/modules/headers -I${BUILD}/obj/h/local -I${BUILD}/obj/h/emheaders -g -Wno-return-type -Imodules/src/object
+mkdir -p ${BUILD}/obj/modules/src/object/lib/wr_int2
+echo modules/src/object+lib/wr_int2
+gcc -c -o ${BUILD}/obj/modules/src/object/lib/wr_int2/wr_int2.o modules/src/object/wr_int2.c -I${BUILD}/obj/modules/headers -I${BUILD}/obj/h/local -I${BUILD}/obj/h/emheaders -g -Wno-return-type -Imodules/src/object
+mkdir -p ${BUILD}/obj/modules/src/object/lib/wr_long
+echo modules/src/object+lib/wr_long
+gcc -c -o ${BUILD}/obj/modules/src/object/lib/wr_long/wr_long.o modules/src/object/wr_long.c -I${BUILD}/obj/modules/headers -I${BUILD}/obj/h/local -I${BUILD}/obj/h/emheaders -g -Wno-return-type -Imodules/src/object
+mkdir -p ${BUILD}/obj/modules/src/object/lib/wr_putc
+echo modules/src/object+lib/wr_putc
+gcc -c -o ${BUILD}/obj/modules/src/object/lib/wr_putc/wr_putc.o modules/src/object/wr_putc.c -I${BUILD}/obj/modules/headers -I${BUILD}/obj/h/local -I${BUILD}/obj/h/emheaders -g -Wno-return-type -Imodules/src/object
+mkdir -p ${BUILD}/obj/modules/src/object/lib/wr_ranlib
+echo modules/src/object+lib/wr_ranlib
+gcc -c -o ${BUILD}/obj/modules/src/object/lib/wr_ranlib/wr_ranlib.o modules/src/object/wr_ranlib.c -I${BUILD}/obj/modules/headers -I${BUILD}/obj/h/local -I${BUILD}/obj/h/emheaders -g -Wno-return-type -Imodules/src/object
+mkdir -p ${BUILD}/obj/modules/src/object/lib
+echo modules/src/object+lib
+rm -f ${BUILD}/obj/modules/src/object/lib/lib.a
+ar cqs ${BUILD}/obj/modules/src/object/lib/lib.a ${BUILD}/obj/modules/src/object/lib/rd/rd.o ${BUILD}/obj/modules/src/object/lib/rd_arhdr/rd_arhdr.o ${BUILD}/obj/modules/src/object/lib/rd_bytes/rd_bytes.o ${BUILD}/obj/modules/src/object/lib/rd_int2/rd_int2.o ${BUILD}/obj/modules/src/object/lib/rd_long/rd_long.o ${BUILD}/obj/modules/src/object/lib/rd_ranlib/rd_ranlib.o ${BUILD}/obj/modules/src/object/lib/rd_unsig2/rd_unsig2.o ${BUILD}/obj/modules/src/object/lib/wr/wr.o ${BUILD}/obj/modules/src/object/lib/wr_arhdr/wr_arhdr.o ${BUILD}/obj/modules/src/object/lib/wr_bytes/wr_bytes.o ${BUILD}/obj/modules/src/object/lib/wr_int2/wr_int2.o ${BUILD}/obj/modules/src/object/lib/wr_long/wr_long.o ${BUILD}/obj/modules/src/object/lib/wr_putc/wr_putc.o ${BUILD}/obj/modules/src/object/lib/wr_ranlib/wr_ranlib.o
+cp modules/src/object/object.h ${BUILD}/obj/modules/src/object/lib
+mkdir -p ${BUILD}/obj/plat/cpmz80/as/archlib
+echo plat/cpmz80+as/archlib
+cp mach/z80/as/mach0.c ${BUILD}/obj/plat/cpmz80/as/archlib
+cp mach/z80/as/mach1.c ${BUILD}/obj/plat/cpmz80/as/archlib
+cp mach/z80/as/mach2.c ${BUILD}/obj/plat/cpmz80/as/archlib
+cp mach/z80/as/mach3.c ${BUILD}/obj/plat/cpmz80/as/archlib
+cp mach/z80/as/mach4.c ${BUILD}/obj/plat/cpmz80/as/archlib
+cp mach/z80/as/mach5.c ${BUILD}/obj/plat/cpmz80/as/archlib
+mkdir -p ${BUILD}/obj/plat/cpmz80/as/yaccinput
+echo plat/cpmz80+as/yaccinput
+gcc -E -P -o ${BUILD}/obj/plat/cpmz80/as/yaccinput/comm2.y -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/plat/cpmz80/as/archlib -g -Wno-return-type -x c mach/proto/as/comm2.y
+mkdir -p ${BUILD}/obj/plat/cpmz80/as/yacc
+echo plat/cpmz80+as/yacc
+yacc -t -b ${BUILD}/obj/plat/cpmz80/as/yacc/y -d ${BUILD}/obj/plat/cpmz80/as/yaccinput/comm2.y
+mkdir -p ${BUILD}/obj/plat/cpmz80/as/main/comm3
+echo plat/cpmz80+as/main/comm3
+gcc -c -o ${BUILD}/obj/plat/cpmz80/as/main/comm3/comm3.o mach/proto/as/comm3.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/object/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/plat/cpmz80/as/archlib -I${BUILD}/obj/plat/cpmz80/as/yacc -g -Wno-return-type -Iplat/cpmz80
+mkdir -p ${BUILD}/obj/plat/cpmz80/as/main/comm4
+echo plat/cpmz80+as/main/comm4
+gcc -c -o ${BUILD}/obj/plat/cpmz80/as/main/comm4/comm4.o mach/proto/as/comm4.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/object/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/plat/cpmz80/as/archlib -I${BUILD}/obj/plat/cpmz80/as/yacc -g -Wno-return-type -Iplat/cpmz80
+mkdir -p ${BUILD}/obj/plat/cpmz80/as/main/comm5
+echo plat/cpmz80+as/main/comm5
+gcc -c -o ${BUILD}/obj/plat/cpmz80/as/main/comm5/comm5.o mach/proto/as/comm5.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/object/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/plat/cpmz80/as/archlib -I${BUILD}/obj/plat/cpmz80/as/yacc -g -Wno-return-type -Iplat/cpmz80
+mkdir -p ${BUILD}/obj/plat/cpmz80/as/main/comm6
+echo plat/cpmz80+as/main/comm6
+gcc -c -o ${BUILD}/obj/plat/cpmz80/as/main/comm6/comm6.o mach/proto/as/comm6.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/object/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/plat/cpmz80/as/archlib -I${BUILD}/obj/plat/cpmz80/as/yacc -g -Wno-return-type -Iplat/cpmz80
+mkdir -p ${BUILD}/obj/plat/cpmz80/as/main/comm7
+echo plat/cpmz80+as/main/comm7
+gcc -c -o ${BUILD}/obj/plat/cpmz80/as/main/comm7/comm7.o mach/proto/as/comm7.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/object/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/plat/cpmz80/as/archlib -I${BUILD}/obj/plat/cpmz80/as/yacc -g -Wno-return-type -Iplat/cpmz80
+mkdir -p ${BUILD}/obj/plat/cpmz80/as/main/comm8
+echo plat/cpmz80+as/main/comm8
+gcc -c -o ${BUILD}/obj/plat/cpmz80/as/main/comm8/comm8.o mach/proto/as/comm8.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/object/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/plat/cpmz80/as/archlib -I${BUILD}/obj/plat/cpmz80/as/yacc -g -Wno-return-type -Iplat/cpmz80
+mkdir -p ${BUILD}/obj/plat/cpmz80/as/main/y.tab
+echo plat/cpmz80+as/main/y.tab
+gcc -c -o ${BUILD}/obj/plat/cpmz80/as/main/y.tab/y.tab.o ${BUILD}/obj/plat/cpmz80/as/yacc/y.tab.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/object/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/plat/cpmz80/as/archlib -I${BUILD}/obj/plat/cpmz80/as/yacc -g -Wno-return-type -Iplat/cpmz80
+mkdir -p ${BUILD}/obj/plat/cpmz80/as/main/as
+echo plat/cpmz80+as/main
+rm -f ${BUILD}/obj/plat/cpmz80/as/main/as/main.a
+ar cqs ${BUILD}/obj/plat/cpmz80/as/main/as/main.a ${BUILD}/obj/plat/cpmz80/as/main/comm3/comm3.o ${BUILD}/obj/plat/cpmz80/as/main/comm4/comm4.o ${BUILD}/obj/plat/cpmz80/as/main/comm5/comm5.o ${BUILD}/obj/plat/cpmz80/as/main/comm6/comm6.o ${BUILD}/obj/plat/cpmz80/as/main/comm7/comm7.o ${BUILD}/obj/plat/cpmz80/as/main/comm8/comm8.o ${BUILD}/obj/plat/cpmz80/as/main/y.tab/y.tab.o
+mkdir -p ${BUILD}/obj/plat/cpmz80/as
+echo plat/cpmz80+as
+gcc -o ${BUILD}/obj/plat/cpmz80/as/as ${BUILD}/obj/plat/cpmz80/as/main/as/main.a ${BUILD}/obj/modules/src/object/lib/lib.a ${BUILD}/obj/modules/src/flt_arith/lib/lib.a ${BUILD}/obj/plat/cpmz80/as/main/as/main.a ${BUILD}/obj/modules/src/object/lib/lib.a ${BUILD}/obj/modules/src/flt_arith/lib/lib.a
+mkdir -p ${BUILD}/obj/plat/cpmz80/cg/headers
+echo plat/cpmz80+cg/headers
+cp mach/proto/cg/assert.h ${BUILD}/obj/plat/cpmz80/cg/headers
+cp mach/proto/cg/data.h ${BUILD}/obj/plat/cpmz80/cg/headers
+cp mach/proto/cg/equiv.h ${BUILD}/obj/plat/cpmz80/cg/headers
+cp mach/proto/cg/extern.h ${BUILD}/obj/plat/cpmz80/cg/headers
+cp mach/proto/cg/glosym.h ${BUILD}/obj/plat/cpmz80/cg/headers
+cp mach/proto/cg/param.h ${BUILD}/obj/plat/cpmz80/cg/headers
+cp mach/proto/cg/regvar.h ${BUILD}/obj/plat/cpmz80/cg/headers
+cp mach/proto/cg/result.h ${BUILD}/obj/plat/cpmz80/cg/headers
+cp mach/proto/cg/state.h ${BUILD}/obj/plat/cpmz80/cg/headers
+cp mach/proto/cg/types.h ${BUILD}/obj/plat/cpmz80/cg/headers
+cp mach/z80/cg/mach.c ${BUILD}/obj/plat/cpmz80/cg/headers
+cp mach/z80/cg/mach.h ${BUILD}/obj/plat/cpmz80/cg/headers
+mkdir -p ${BUILD}/obj/util/cgg/cggparser
+echo util/cgg+cggparser
+yacc -t -b ${BUILD}/obj/util/cgg/cggparser/y -d util/cgg/bootgram.y
+mkdir -p ${BUILD}/obj/util/cgg/cgglexer
+echo util/cgg+cgglexer
+flex -s -t util/cgg/bootlex.l > ${BUILD}/obj/util/cgg/cgglexer/lex.yy.c
+mkdir -p ${BUILD}/obj/util/cgg/cgg/main/main
+echo util/cgg+cgg/main/main
+gcc -c -o ${BUILD}/obj/util/cgg/cgg/main/main/main.o util/cgg/main.c -I${BUILD}/obj/util/cgg/cggparser -I${BUILD}/obj/util/cgg/cgglexer -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -Iutil/cgg
+mkdir -p ${BUILD}/obj/util/cgg/cgg/main/y.tab
+echo util/cgg+cgg/main/y.tab
+gcc -c -o ${BUILD}/obj/util/cgg/cgg/main/y.tab/y.tab.o ${BUILD}/obj/util/cgg/cggparser/y.tab.c -I${BUILD}/obj/util/cgg/cggparser -I${BUILD}/obj/util/cgg/cgglexer -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -Iutil/cgg
+mkdir -p ${BUILD}/obj/util/cgg/cgg/main/lex.yy
+echo util/cgg+cgg/main/lex.yy
+gcc -c -o ${BUILD}/obj/util/cgg/cgg/main/lex.yy/lex.yy.o ${BUILD}/obj/util/cgg/cgglexer/lex.yy.c -I${BUILD}/obj/util/cgg/cggparser -I${BUILD}/obj/util/cgg/cgglexer -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/em_data/lib -g -Wno-return-type -Iutil/cgg
+mkdir -p ${BUILD}/obj/util/cgg/cgg/main/cgg
+echo util/cgg+cgg/main
+rm -f ${BUILD}/obj/util/cgg/cgg/main/cgg/main.a
+ar cqs ${BUILD}/obj/util/cgg/cgg/main/cgg/main.a ${BUILD}/obj/util/cgg/cgg/main/main/main.o ${BUILD}/obj/util/cgg/cgg/main/y.tab/y.tab.o ${BUILD}/obj/util/cgg/cgg/main/lex.yy/lex.yy.o
+mkdir -p ${BUILD}/obj/util/cgg/cgg
+echo util/cgg+cgg
+gcc -o ${BUILD}/obj/util/cgg/cgg/cgg ${BUILD}/obj/util/cgg/cgg/main/cgg/main.a ${BUILD}/obj/modules/src/em_data/lib/lib.a ${BUILD}/obj/util/cgg/cgg/main/cgg/main.a ${BUILD}/obj/modules/src/em_data/lib/lib.a
+mkdir -p ${BUILD}/obj/plat/cpmz80/cg/tables/cpptable
+echo plat/cpmz80+cg/tables/cpptable
+gcc -E -P -o ${BUILD}/obj/plat/cpmz80/cg/tables/cpptable/cpptable  -g -Wno-return-type -x c mach/z80/cg/table
+mkdir -p ${BUILD}/obj/plat/cpmz80/cg/tables
+echo plat/cpmz80+cg/tables
+(cd ${BUILD}/obj/plat/cpmz80/cg/tables && ${BUILD}/obj/util/cgg/cgg/cgg ${BUILD}/obj/plat/cpmz80/cg/tables/cpptable/cpptable)
+mkdir -p ${BUILD}/obj/plat/cpmz80/cg/main/codegen
+echo plat/cpmz80+cg/main/codegen
+gcc -c -o ${BUILD}/obj/plat/cpmz80/cg/main/codegen/codegen.o mach/proto/cg/codegen.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/plat/cpmz80/cg/headers -I${BUILD}/obj/plat/cpmz80/cg/tables -g -Wno-return-type -Iplat/cpmz80
+mkdir -p ${BUILD}/obj/plat/cpmz80/cg/main/compute
+echo plat/cpmz80+cg/main/compute
+gcc -c -o ${BUILD}/obj/plat/cpmz80/cg/main/compute/compute.o mach/proto/cg/compute.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/plat/cpmz80/cg/headers -I${BUILD}/obj/plat/cpmz80/cg/tables -g -Wno-return-type -Iplat/cpmz80
+mkdir -p ${BUILD}/obj/plat/cpmz80/cg/main/equiv
+echo plat/cpmz80+cg/main/equiv
+gcc -c -o ${BUILD}/obj/plat/cpmz80/cg/main/equiv/equiv.o mach/proto/cg/equiv.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/plat/cpmz80/cg/headers -I${BUILD}/obj/plat/cpmz80/cg/tables -g -Wno-return-type -Iplat/cpmz80
+mkdir -p ${BUILD}/obj/plat/cpmz80/cg/main/fillem
+echo plat/cpmz80+cg/main/fillem
+gcc -c -o ${BUILD}/obj/plat/cpmz80/cg/main/fillem/fillem.o mach/proto/cg/fillem.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/plat/cpmz80/cg/headers -I${BUILD}/obj/plat/cpmz80/cg/tables -g -Wno-return-type -Iplat/cpmz80
+mkdir -p ${BUILD}/obj/plat/cpmz80/cg/main/gencode
+echo plat/cpmz80+cg/main/gencode
+gcc -c -o ${BUILD}/obj/plat/cpmz80/cg/main/gencode/gencode.o mach/proto/cg/gencode.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/plat/cpmz80/cg/headers -I${BUILD}/obj/plat/cpmz80/cg/tables -g -Wno-return-type -Iplat/cpmz80
+mkdir -p ${BUILD}/obj/plat/cpmz80/cg/main/glosym
+echo plat/cpmz80+cg/main/glosym
+gcc -c -o ${BUILD}/obj/plat/cpmz80/cg/main/glosym/glosym.o mach/proto/cg/glosym.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/plat/cpmz80/cg/headers -I${BUILD}/obj/plat/cpmz80/cg/tables -g -Wno-return-type -Iplat/cpmz80
+mkdir -p ${BUILD}/obj/plat/cpmz80/cg/main/main
+echo plat/cpmz80+cg/main/main
+gcc -c -o ${BUILD}/obj/plat/cpmz80/cg/main/main/main.o mach/proto/cg/main.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/plat/cpmz80/cg/headers -I${BUILD}/obj/plat/cpmz80/cg/tables -g -Wno-return-type -Iplat/cpmz80
+mkdir -p ${BUILD}/obj/plat/cpmz80/cg/main/move
+echo plat/cpmz80+cg/main/move
+gcc -c -o ${BUILD}/obj/plat/cpmz80/cg/main/move/move.o mach/proto/cg/move.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/plat/cpmz80/cg/headers -I${BUILD}/obj/plat/cpmz80/cg/tables -g -Wno-return-type -Iplat/cpmz80
+mkdir -p ${BUILD}/obj/plat/cpmz80/cg/main/nextem
+echo plat/cpmz80+cg/main/nextem
+gcc -c -o ${BUILD}/obj/plat/cpmz80/cg/main/nextem/nextem.o mach/proto/cg/nextem.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/plat/cpmz80/cg/headers -I${BUILD}/obj/plat/cpmz80/cg/tables -g -Wno-return-type -Iplat/cpmz80
+mkdir -p ${BUILD}/obj/plat/cpmz80/cg/main/reg
+echo plat/cpmz80+cg/main/reg
+gcc -c -o ${BUILD}/obj/plat/cpmz80/cg/main/reg/reg.o mach/proto/cg/reg.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/plat/cpmz80/cg/headers -I${BUILD}/obj/plat/cpmz80/cg/tables -g -Wno-return-type -Iplat/cpmz80
+mkdir -p ${BUILD}/obj/plat/cpmz80/cg/main/regvar
+echo plat/cpmz80+cg/main/regvar
+gcc -c -o ${BUILD}/obj/plat/cpmz80/cg/main/regvar/regvar.o mach/proto/cg/regvar.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/plat/cpmz80/cg/headers -I${BUILD}/obj/plat/cpmz80/cg/tables -g -Wno-return-type -Iplat/cpmz80
+mkdir -p ${BUILD}/obj/plat/cpmz80/cg/main/salloc
+echo plat/cpmz80+cg/main/salloc
+gcc -c -o ${BUILD}/obj/plat/cpmz80/cg/main/salloc/salloc.o mach/proto/cg/salloc.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/plat/cpmz80/cg/headers -I${BUILD}/obj/plat/cpmz80/cg/tables -g -Wno-return-type -Iplat/cpmz80
+mkdir -p ${BUILD}/obj/plat/cpmz80/cg/main/state
+echo plat/cpmz80+cg/main/state
+gcc -c -o ${BUILD}/obj/plat/cpmz80/cg/main/state/state.o mach/proto/cg/state.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/plat/cpmz80/cg/headers -I${BUILD}/obj/plat/cpmz80/cg/tables -g -Wno-return-type -Iplat/cpmz80
+mkdir -p ${BUILD}/obj/plat/cpmz80/cg/main/subr
+echo plat/cpmz80+cg/main/subr
+gcc -c -o ${BUILD}/obj/plat/cpmz80/cg/main/subr/subr.o mach/proto/cg/subr.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/plat/cpmz80/cg/headers -I${BUILD}/obj/plat/cpmz80/cg/tables -g -Wno-return-type -Iplat/cpmz80
+mkdir -p ${BUILD}/obj/plat/cpmz80/cg/main/var
+echo plat/cpmz80+cg/main/var
+gcc -c -o ${BUILD}/obj/plat/cpmz80/cg/main/var/var.o mach/proto/cg/var.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/plat/cpmz80/cg/headers -I${BUILD}/obj/plat/cpmz80/cg/tables -g -Wno-return-type -Iplat/cpmz80
+mkdir -p ${BUILD}/obj/plat/cpmz80/cg/main/tables
+echo plat/cpmz80+cg/main/tables
+gcc -c -o ${BUILD}/obj/plat/cpmz80/cg/main/tables/tables.o ${BUILD}/obj/plat/cpmz80/cg/tables/tables.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/headers -I${BUILD}/obj/modules/src/em_data/lib -I${BUILD}/obj/modules/src/flt_arith/lib -I${BUILD}/obj/plat/cpmz80/cg/headers -I${BUILD}/obj/plat/cpmz80/cg/tables -g -Wno-return-type -Iplat/cpmz80
+mkdir -p ${BUILD}/obj/plat/cpmz80/cg/main/cg
+echo plat/cpmz80+cg/main
+rm -f ${BUILD}/obj/plat/cpmz80/cg/main/cg/main.a
+ar cqs ${BUILD}/obj/plat/cpmz80/cg/main/cg/main.a ${BUILD}/obj/plat/cpmz80/cg/main/codegen/codegen.o ${BUILD}/obj/plat/cpmz80/cg/main/compute/compute.o ${BUILD}/obj/plat/cpmz80/cg/main/equiv/equiv.o ${BUILD}/obj/plat/cpmz80/cg/main/fillem/fillem.o ${BUILD}/obj/plat/cpmz80/cg/main/gencode/gencode.o ${BUILD}/obj/plat/cpmz80/cg/main/glosym/glosym.o ${BUILD}/obj/plat/cpmz80/cg/main/main/main.o ${BUILD}/obj/plat/cpmz80/cg/main/move/move.o ${BUILD}/obj/plat/cpmz80/cg/main/nextem/nextem.o ${BUILD}/obj/plat/cpmz80/cg/main/reg/reg.o ${BUILD}/obj/plat/cpmz80/cg/main/regvar/regvar.o ${BUILD}/obj/plat/cpmz80/cg/main/salloc/salloc.o ${BUILD}/obj/plat/cpmz80/cg/main/state/state.o ${BUILD}/obj/plat/cpmz80/cg/main/subr/subr.o ${BUILD}/obj/plat/cpmz80/cg/main/var/var.o ${BUILD}/obj/plat/cpmz80/cg/main/tables/tables.o
+mkdir -p ${BUILD}/obj/plat/cpmz80/cg
+echo plat/cpmz80+cg
+gcc -o ${BUILD}/obj/plat/cpmz80/cg/cg ${BUILD}/obj/plat/cpmz80/cg/main/cg/main.a ${BUILD}/obj/modules/src/em_data/lib/lib.a ${BUILD}/obj/modules/src/flt_arith/lib/lib.a ${BUILD}/obj/plat/cpmz80/cg/main/cg/main.a ${BUILD}/obj/modules/src/em_data/lib/lib.a ${BUILD}/obj/modules/src/flt_arith/lib/lib.a
+mkdir -p ${BUILD}/obj/util/topgen/llgen
+echo util/topgen+llgen
+(cd ${BUILD}/obj/util/topgen/llgen && rm -f ${BUILD}/obj/util/topgen/llgen/Lpars.c ${BUILD}/obj/util/topgen/llgen/Lpars.h ${BUILD}/obj/util/topgen/llgen/topgen.c && ${BUILD}/obj/util/LLgen/llgen/llgen ${ACK}/util/topgen/topgen.g)
+mkdir -p ${BUILD}/obj/util/topgen/topgen/main/LLlex
+echo util/topgen+topgen/main/LLlex
+gcc -c -o ${BUILD}/obj/util/topgen/topgen/main/LLlex/LLlex.o util/topgen/LLlex.c -I${BUILD}/obj/util/topgen/llgen -g -Wno-return-type -Iutil/topgen
+mkdir -p ${BUILD}/obj/util/topgen/topgen/main/hash
+echo util/topgen+topgen/main/hash
+gcc -c -o ${BUILD}/obj/util/topgen/topgen/main/hash/hash.o util/topgen/hash.c -I${BUILD}/obj/util/topgen/llgen -g -Wno-return-type -Iutil/topgen
+mkdir -p ${BUILD}/obj/util/topgen/topgen/main/main
+echo util/topgen+topgen/main/main
+gcc -c -o ${BUILD}/obj/util/topgen/topgen/main/main/main.o util/topgen/main.c -I${BUILD}/obj/util/topgen/llgen -g -Wno-return-type -Iutil/topgen
+mkdir -p ${BUILD}/obj/util/topgen/topgen/main/pattern
+echo util/topgen+topgen/main/pattern
+gcc -c -o ${BUILD}/obj/util/topgen/topgen/main/pattern/pattern.o util/topgen/pattern.c -I${BUILD}/obj/util/topgen/llgen -g -Wno-return-type -Iutil/topgen
+mkdir -p ${BUILD}/obj/util/topgen/topgen/main/symtab
+echo util/topgen+topgen/main/symtab
+gcc -c -o ${BUILD}/obj/util/topgen/topgen/main/symtab/symtab.o util/topgen/symtab.c -I${BUILD}/obj/util/topgen/llgen -g -Wno-return-type -Iutil/topgen
+mkdir -p ${BUILD}/obj/util/topgen/topgen/main/Lpars
+echo util/topgen+topgen/main/Lpars
+gcc -c -o ${BUILD}/obj/util/topgen/topgen/main/Lpars/Lpars.o ${BUILD}/obj/util/topgen/llgen/Lpars.c -I${BUILD}/obj/util/topgen/llgen -g -Wno-return-type -Iutil/topgen
+mkdir -p ${BUILD}/obj/util/topgen/topgen/main/topgen
+echo util/topgen+topgen/main/topgen
+gcc -c -o ${BUILD}/obj/util/topgen/topgen/main/topgen/topgen.o ${BUILD}/obj/util/topgen/llgen/topgen.c -I${BUILD}/obj/util/topgen/llgen -g -Wno-return-type -Iutil/topgen
+mkdir -p ${BUILD}/obj/util/topgen/topgen/main/topgen
+echo util/topgen+topgen/main
+rm -f ${BUILD}/obj/util/topgen/topgen/main/topgen/main.a
+ar cqs ${BUILD}/obj/util/topgen/topgen/main/topgen/main.a ${BUILD}/obj/util/topgen/topgen/main/LLlex/LLlex.o ${BUILD}/obj/util/topgen/topgen/main/hash/hash.o ${BUILD}/obj/util/topgen/topgen/main/main/main.o ${BUILD}/obj/util/topgen/topgen/main/pattern/pattern.o ${BUILD}/obj/util/topgen/topgen/main/symtab/symtab.o ${BUILD}/obj/util/topgen/topgen/main/Lpars/Lpars.o ${BUILD}/obj/util/topgen/topgen/main/topgen/topgen.o
+mkdir -p ${BUILD}/obj/util/topgen/topgen
+echo util/topgen+topgen
+gcc -o ${BUILD}/obj/util/topgen/topgen/topgen ${BUILD}/obj/util/topgen/topgen/main/topgen/main.a ${BUILD}/obj/util/topgen/topgen/main/topgen/main.a
+mkdir -p ${BUILD}/obj/plat/cpmz80/top_topgen
+echo plat/cpmz80+top_topgen
+${BUILD}/obj/util/topgen/topgen/topgen mach/z80/top/table ${BUILD}/obj/plat/cpmz80/top_topgen
+mkdir -p ${BUILD}/obj/plat/cpmz80/top/main/queue
+echo plat/cpmz80+top/main/queue
+gcc -c -o ${BUILD}/obj/plat/cpmz80/top/main/queue/queue.o mach/proto/top/queue.c -I${BUILD}/obj/plat/cpmz80/top_topgen -g -Wno-return-type -Iplat/cpmz80
+mkdir -p ${BUILD}/obj/plat/cpmz80/top/main/top
+echo plat/cpmz80+top/main/top
+gcc -c -o ${BUILD}/obj/plat/cpmz80/top/main/top/top.o mach/proto/top/top.c -I${BUILD}/obj/plat/cpmz80/top_topgen -g -Wno-return-type -Iplat/cpmz80
+mkdir -p ${BUILD}/obj/plat/cpmz80/top/main/top
+echo plat/cpmz80+top/main
+rm -f ${BUILD}/obj/plat/cpmz80/top/main/top/main.a
+ar cqs ${BUILD}/obj/plat/cpmz80/top/main/top/main.a ${BUILD}/obj/plat/cpmz80/top/main/queue/queue.o ${BUILD}/obj/plat/cpmz80/top/main/top/top.o
+mkdir -p ${BUILD}/obj/plat/cpmz80/top
+echo plat/cpmz80+top
+gcc -o ${BUILD}/obj/plat/cpmz80/top/top ${BUILD}/obj/plat/cpmz80/top/main/top/main.a ${BUILD}/obj/plat/cpmz80/top/main/top/main.a
+mkdir -p ${BUILD}/staging/lib/ack/cpmz80 ${BUILD}/staging/share/ack/descr
+echo plat/cpmz80+tools
+cp ${BUILD}/obj/plat/cpmz80/as/as ${BUILD}/staging/lib/ack/cpmz80/as
+cp plat/cpmz80/descr ${BUILD}/staging/share/ack/descr/cpmz80
+cp ${BUILD}/obj/plat/cpmz80/cg/cg ${BUILD}/staging/lib/ack/cpmz80/cg
+cp ${BUILD}/obj/plat/cpmz80/top/top ${BUILD}/staging/lib/ack/cpmz80/top
+mkdir -p ${BUILD}/staging/share/ack/include/ansi/sys ${BUILD}/staging/share/ack/include/ansi ${BUILD}/staging/share/ack/include/ansi/ack
+echo lang/cem/libcc.ansi/headers+pkg
+cp lang/cem/libcc.ansi/headers/sys/time.h ${BUILD}/staging/share/ack/include/ansi/sys/time.h
+cp lang/cem/libcc.ansi/headers/limits.h ${BUILD}/staging/share/ack/include/ansi/limits.h
+cp lang/cem/libcc.ansi/headers/stdarg.h ${BUILD}/staging/share/ack/include/ansi/stdarg.h
+cp lang/cem/libcc.ansi/headers/unistd.h ${BUILD}/staging/share/ack/include/ansi/unistd.h
+cp lang/cem/libcc.ansi/headers/stddef.h ${BUILD}/staging/share/ack/include/ansi/stddef.h
+cp lang/cem/libcc.ansi/headers/iso646.h ${BUILD}/staging/share/ack/include/ansi/iso646.h
+cp lang/cem/libcc.ansi/headers/math.h ${BUILD}/staging/share/ack/include/ansi/math.h
+cp lang/cem/libcc.ansi/headers/stdio.h ${BUILD}/staging/share/ack/include/ansi/stdio.h
+cp lang/cem/libcc.ansi/headers/errno.h ${BUILD}/staging/share/ack/include/ansi/errno.h
+cp lang/cem/libcc.ansi/headers/assert.h ${BUILD}/staging/share/ack/include/ansi/assert.h
+cp lang/cem/libcc.ansi/headers/stdbool.h ${BUILD}/staging/share/ack/include/ansi/stdbool.h
+cp lang/cem/libcc.ansi/headers/stdint.h ${BUILD}/staging/share/ack/include/ansi/stdint.h
+cp lang/cem/libcc.ansi/headers/time.h ${BUILD}/staging/share/ack/include/ansi/time.h
+cp lang/cem/libcc.ansi/headers/setjmp.h ${BUILD}/staging/share/ack/include/ansi/setjmp.h
+cp lang/cem/libcc.ansi/headers/locale.h ${BUILD}/staging/share/ack/include/ansi/locale.h
+cp lang/cem/libcc.ansi/headers/float.h ${BUILD}/staging/share/ack/include/ansi/float.h
+cp lang/cem/libcc.ansi/headers/stdlib.h ${BUILD}/staging/share/ack/include/ansi/stdlib.h
+cp lang/cem/libcc.ansi/headers/fcntl.h ${BUILD}/staging/share/ack/include/ansi/fcntl.h
+cp lang/cem/libcc.ansi/headers/ctype.h ${BUILD}/staging/share/ack/include/ansi/ctype.h
+cp lang/cem/libcc.ansi/headers/sys/times.h ${BUILD}/staging/share/ack/include/ansi/sys/times.h
+cp lang/cem/libcc.ansi/headers/string.h ${BUILD}/staging/share/ack/include/ansi/string.h
+cp lang/cem/libcc.ansi/headers/ack/config.h ${BUILD}/staging/share/ack/include/ansi/ack/config.h
+cp lang/cem/libcc.ansi/headers/signal.h ${BUILD}/staging/share/ack/include/ansi/signal.h
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/ctype_files
+echo lang/cem/libcc.ansi+ctype_files
+sh lang/cem/libcc.ansi/core/ctype/genfiles ${BUILD}/obj/lang/cem/libcc.ansi/ctype_files
+mkdir -p ${BUILD}/staging/lib/ack ${BUILD}/staging/share/man/man6
+echo lang/cem/cpp.ansi+pkg
+cp ${BUILD}/obj/lang/cem/cpp.ansi/cpp/cpp ${BUILD}/staging/lib/ack/cpp.ansi
+cp lang/cem/cpp.ansi/ncpp.6 ${BUILD}/staging/share/man/man6/cpp.ansi.6
+mkdir -p ${BUILD}/obj/util/arch/aal/main/archiver
+echo util/arch+aal/main/archiver
+gcc -c -o ${BUILD}/obj/util/arch/aal/main/archiver/archiver.o util/arch/archiver.c -I${BUILD}/obj/h/emheaders -I${BUILD}/obj/modules/src/object/lib -I${BUILD}/obj/modules/src/print/lib -I${BUILD}/obj/modules/src/string/lib -I${BUILD}/obj/modules/src/system/lib -g -Wno-return-type -DAAL -Iutil/arch
+mkdir -p ${BUILD}/obj/util/arch/aal/main/aal
+echo util/arch+aal/main
+rm -f ${BUILD}/obj/util/arch/aal/main/aal/main.a
+ar cqs ${BUILD}/obj/util/arch/aal/main/aal/main.a ${BUILD}/obj/util/arch/aal/main/archiver/archiver.o
+mkdir -p ${BUILD}/obj/util/arch/aal
+echo util/arch+aal
+gcc -o ${BUILD}/obj/util/arch/aal/aal ${BUILD}/obj/util/arch/aal/main/aal/main.a ${BUILD}/obj/modules/src/object/lib/lib.a ${BUILD}/obj/modules/src/print/lib/lib.a ${BUILD}/obj/modules/src/string/lib/lib.a ${BUILD}/obj/modules/src/system/lib/lib.a ${BUILD}/obj/util/arch/aal/main/aal/main.a ${BUILD}/obj/modules/src/object/lib/lib.a ${BUILD}/obj/modules/src/print/lib/lib.a ${BUILD}/obj/modules/src/string/lib/lib.a ${BUILD}/obj/modules/src/system/lib/lib.a
+mkdir -p ${BUILD}/staging/bin ${BUILD}/staging/share/man/man1
+echo util/arch+pkg
+cp ${BUILD}/obj/util/arch/aal/aal ${BUILD}/staging/bin/aal
+cp util/arch/aal.1 ${BUILD}/staging/share/man/man1/aal.1
+mkdir -p ${BUILD}/staging/share/ack/cpmz80/include/ack ${BUILD}/staging/share/ack/cpmz80/include/sys ${BUILD}/staging/share/ack/cpmz80/include
+echo plat/cpmz80/include+pkg
+cp plat/cpmz80/include/ack/plat.h ${BUILD}/staging/share/ack/cpmz80/include/ack/plat.h
+cp plat/cpmz80/include/sys/types.h ${BUILD}/staging/share/ack/cpmz80/include/sys/types.h
+cp plat/cpmz80/include/cpm.h ${BUILD}/staging/share/ack/cpmz80/include/cpm.h
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/isalnum
+echo lang/cem/libcc.ansi+lib_cpmz80/isalnum
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/isalnum/isalnum.o ${BUILD}/obj/lang/cem/libcc.ansi/ctype_files/isalnum.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/isalpha
+echo lang/cem/libcc.ansi+lib_cpmz80/isalpha
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/isalpha/isalpha.o ${BUILD}/obj/lang/cem/libcc.ansi/ctype_files/isalpha.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/isascii
+echo lang/cem/libcc.ansi+lib_cpmz80/isascii
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/isascii/isascii.o ${BUILD}/obj/lang/cem/libcc.ansi/ctype_files/isascii.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/iscntrl
+echo lang/cem/libcc.ansi+lib_cpmz80/iscntrl
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/iscntrl/iscntrl.o ${BUILD}/obj/lang/cem/libcc.ansi/ctype_files/iscntrl.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/isdigit
+echo lang/cem/libcc.ansi+lib_cpmz80/isdigit
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/isdigit/isdigit.o ${BUILD}/obj/lang/cem/libcc.ansi/ctype_files/isdigit.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/isgraph
+echo lang/cem/libcc.ansi+lib_cpmz80/isgraph
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/isgraph/isgraph.o ${BUILD}/obj/lang/cem/libcc.ansi/ctype_files/isgraph.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/islower
+echo lang/cem/libcc.ansi+lib_cpmz80/islower
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/islower/islower.o ${BUILD}/obj/lang/cem/libcc.ansi/ctype_files/islower.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/isprint
+echo lang/cem/libcc.ansi+lib_cpmz80/isprint
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/isprint/isprint.o ${BUILD}/obj/lang/cem/libcc.ansi/ctype_files/isprint.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/ispunct
+echo lang/cem/libcc.ansi+lib_cpmz80/ispunct
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/ispunct/ispunct.o ${BUILD}/obj/lang/cem/libcc.ansi/ctype_files/ispunct.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/isspace
+echo lang/cem/libcc.ansi+lib_cpmz80/isspace
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/isspace/isspace.o ${BUILD}/obj/lang/cem/libcc.ansi/ctype_files/isspace.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/isupper
+echo lang/cem/libcc.ansi+lib_cpmz80/isupper
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/isupper/isupper.o ${BUILD}/obj/lang/cem/libcc.ansi/ctype_files/isupper.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/isxdigit
+echo lang/cem/libcc.ansi+lib_cpmz80/isxdigit
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/isxdigit/isxdigit.o ${BUILD}/obj/lang/cem/libcc.ansi/ctype_files/isxdigit.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/ctype_tab
+echo lang/cem/libcc.ansi+ctype_tab
+${BUILD}/obj/util/cmisc/tabgen/tabgen -flang/cem/libcc.ansi/core/ctype/char.tab > ${BUILD}/obj/lang/cem/libcc.ansi/ctype_tab/char.c
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/char
+echo lang/cem/libcc.ansi+lib_cpmz80/char
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/char/char.o ${BUILD}/obj/lang/cem/libcc.ansi/ctype_tab/char.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/tolower
+echo lang/cem/libcc.ansi+lib_cpmz80/tolower
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/tolower/tolower.o lang/cem/libcc.ansi/core/ctype/tolower.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/toupper
+echo lang/cem/libcc.ansi+lib_cpmz80/toupper
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/toupper/toupper.o lang/cem/libcc.ansi/core/ctype/toupper.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/errlist
+echo lang/cem/libcc.ansi+lib_cpmz80/errlist
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/errlist/errlist.o lang/cem/libcc.ansi/core/errno/errlist.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/perror
+echo lang/cem/libcc.ansi+lib_cpmz80/perror
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/perror/perror.o lang/cem/libcc.ansi/core/errno/perror.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strerror
+echo lang/cem/libcc.ansi+lib_cpmz80/strerror
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strerror/strerror.o lang/cem/libcc.ansi/core/errno/strerror.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/localeconv
+echo lang/cem/libcc.ansi+lib_cpmz80/localeconv
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/localeconv/localeconv.o lang/cem/libcc.ansi/core/locale/localeconv.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/setlocale
+echo lang/cem/libcc.ansi+lib_cpmz80/setlocale
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/setlocale/setlocale.o lang/cem/libcc.ansi/core/locale/setlocale.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/asin
+echo lang/cem/libcc.ansi+lib_cpmz80/asin
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/asin/asin.o lang/cem/libcc.ansi/core/math/asin.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/atan
+echo lang/cem/libcc.ansi+lib_cpmz80/atan
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/atan/atan.o lang/cem/libcc.ansi/core/math/atan.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/atan2
+echo lang/cem/libcc.ansi+lib_cpmz80/atan2
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/atan2/atan2.o lang/cem/libcc.ansi/core/math/atan2.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/ceil
+echo lang/cem/libcc.ansi+lib_cpmz80/ceil
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/ceil/ceil.o lang/cem/libcc.ansi/core/math/ceil.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/exp
+echo lang/cem/libcc.ansi+lib_cpmz80/exp
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/exp/exp.o lang/cem/libcc.ansi/core/math/exp.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fabs
+echo lang/cem/libcc.ansi+lib_cpmz80/fabs
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fabs/fabs.o lang/cem/libcc.ansi/core/math/fabs.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/floor
+echo lang/cem/libcc.ansi+lib_cpmz80/floor
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/floor/floor.o lang/cem/libcc.ansi/core/math/floor.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fmod
+echo lang/cem/libcc.ansi+lib_cpmz80/fmod
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fmod/fmod.o lang/cem/libcc.ansi/core/math/fmod.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/hugeval
+echo lang/cem/libcc.ansi+lib_cpmz80/hugeval
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/hugeval/hugeval.o lang/cem/libcc.ansi/core/math/hugeval.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/hypot
+echo lang/cem/libcc.ansi+lib_cpmz80/hypot
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/hypot/hypot.o lang/cem/libcc.ansi/core/math/hypot.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/isnan
+echo lang/cem/libcc.ansi+lib_cpmz80/isnan
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/isnan/isnan.o lang/cem/libcc.ansi/core/math/isnan.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/ldexp
+echo lang/cem/libcc.ansi+lib_cpmz80/ldexp
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/ldexp/ldexp.o lang/cem/libcc.ansi/core/math/ldexp.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/log
+echo lang/cem/libcc.ansi+lib_cpmz80/log
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/log/log.o lang/cem/libcc.ansi/core/math/log.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/log10
+echo lang/cem/libcc.ansi+lib_cpmz80/log10
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/log10/log10.o lang/cem/libcc.ansi/core/math/log10.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/pow
+echo lang/cem/libcc.ansi+lib_cpmz80/pow
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/pow/pow.o lang/cem/libcc.ansi/core/math/pow.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/sin
+echo lang/cem/libcc.ansi+lib_cpmz80/sin
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/sin/sin.o lang/cem/libcc.ansi/core/math/sin.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/sinh
+echo lang/cem/libcc.ansi+lib_cpmz80/sinh
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/sinh/sinh.o lang/cem/libcc.ansi/core/math/sinh.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/sqrt
+echo lang/cem/libcc.ansi+lib_cpmz80/sqrt
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/sqrt/sqrt.o lang/cem/libcc.ansi/core/math/sqrt.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/tan
+echo lang/cem/libcc.ansi+lib_cpmz80/tan
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/tan/tan.o lang/cem/libcc.ansi/core/math/tan.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/tanh
+echo lang/cem/libcc.ansi+lib_cpmz80/tanh
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/tanh/tanh.o lang/cem/libcc.ansi/core/math/tanh.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/frexp
+echo lang/cem/libcc.ansi+lib_cpmz80/frexp
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/frexp/frexp.o lang/cem/libcc.ansi/core/math/frexp.e  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/modf
+echo lang/cem/libcc.ansi+lib_cpmz80/modf
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/modf/modf.o lang/cem/libcc.ansi/core/math/modf.e  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/abort
+echo lang/cem/libcc.ansi+lib_cpmz80/abort
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/abort/abort.o lang/cem/libcc.ansi/core/misc/abort.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/assert
+echo lang/cem/libcc.ansi+lib_cpmz80/assert
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/assert/assert.o lang/cem/libcc.ansi/core/misc/assert.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/getopt
+echo lang/cem/libcc.ansi+lib_cpmz80/getopt
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/getopt/getopt.o lang/cem/libcc.ansi/core/misc/getopt.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/raise
+echo lang/cem/libcc.ansi+lib_cpmz80/raise
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/raise/raise.o lang/cem/libcc.ansi/core/misc/raise.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/termcap
+echo lang/cem/libcc.ansi+lib_cpmz80/termcap
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/termcap/termcap.o lang/cem/libcc.ansi/core/misc/termcap.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/sigmisc
+echo lang/cem/libcc.ansi+lib_cpmz80/sigmisc
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/sigmisc/sigmisc.o lang/cem/libcc.ansi/core/setjmp/sigmisc.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/setjmp
+echo lang/cem/libcc.ansi+lib_cpmz80/setjmp
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/setjmp/setjmp.o lang/cem/libcc.ansi/core/setjmp/setjmp.e  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/abs
+echo lang/cem/libcc.ansi+lib_cpmz80/abs
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/abs/abs.o lang/cem/libcc.ansi/core/stdlib/abs.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/atof
+echo lang/cem/libcc.ansi+lib_cpmz80/atof
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/atof/atof.o lang/cem/libcc.ansi/core/stdlib/atof.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/atoi
+echo lang/cem/libcc.ansi+lib_cpmz80/atoi
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/atoi/atoi.o lang/cem/libcc.ansi/core/stdlib/atoi.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/atol
+echo lang/cem/libcc.ansi+lib_cpmz80/atol
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/atol/atol.o lang/cem/libcc.ansi/core/stdlib/atol.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/bsearch
+echo lang/cem/libcc.ansi+lib_cpmz80/bsearch
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/bsearch/bsearch.o lang/cem/libcc.ansi/core/stdlib/bsearch.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/div
+echo lang/cem/libcc.ansi+lib_cpmz80/div
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/div/div.o lang/cem/libcc.ansi/core/stdlib/div.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/ecvt
+echo lang/cem/libcc.ansi+lib_cpmz80/ecvt
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/ecvt/ecvt.o lang/cem/libcc.ansi/core/stdlib/ecvt.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/environ
+echo lang/cem/libcc.ansi+lib_cpmz80/environ
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/environ/environ.o lang/cem/libcc.ansi/core/stdlib/environ.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/ext_comp
+echo lang/cem/libcc.ansi+lib_cpmz80/ext_comp
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/ext_comp/ext_comp.o lang/cem/libcc.ansi/core/stdlib/ext_comp.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/getenv
+echo lang/cem/libcc.ansi+lib_cpmz80/getenv
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/getenv/getenv.o lang/cem/libcc.ansi/core/stdlib/getenv.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/labs
+echo lang/cem/libcc.ansi+lib_cpmz80/labs
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/labs/labs.o lang/cem/libcc.ansi/core/stdlib/labs.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/ldiv
+echo lang/cem/libcc.ansi+lib_cpmz80/ldiv
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/ldiv/ldiv.o lang/cem/libcc.ansi/core/stdlib/ldiv.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/mblen
+echo lang/cem/libcc.ansi+lib_cpmz80/mblen
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/mblen/mblen.o lang/cem/libcc.ansi/core/stdlib/mblen.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/mbstowcs
+echo lang/cem/libcc.ansi+lib_cpmz80/mbstowcs
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/mbstowcs/mbstowcs.o lang/cem/libcc.ansi/core/stdlib/mbstowcs.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/mbtowc
+echo lang/cem/libcc.ansi+lib_cpmz80/mbtowc
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/mbtowc/mbtowc.o lang/cem/libcc.ansi/core/stdlib/mbtowc.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/putenv
+echo lang/cem/libcc.ansi+lib_cpmz80/putenv
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/putenv/putenv.o lang/cem/libcc.ansi/core/stdlib/putenv.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/qsort
+echo lang/cem/libcc.ansi+lib_cpmz80/qsort
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/qsort/qsort.o lang/cem/libcc.ansi/core/stdlib/qsort.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/rand
+echo lang/cem/libcc.ansi+lib_cpmz80/rand
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/rand/rand.o lang/cem/libcc.ansi/core/stdlib/rand.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/setenv
+echo lang/cem/libcc.ansi+lib_cpmz80/setenv
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/setenv/setenv.o lang/cem/libcc.ansi/core/stdlib/setenv.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strtod
+echo lang/cem/libcc.ansi+lib_cpmz80/strtod
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strtod/strtod.o lang/cem/libcc.ansi/core/stdlib/strtod.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strtol
+echo lang/cem/libcc.ansi+lib_cpmz80/strtol
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strtol/strtol.o lang/cem/libcc.ansi/core/stdlib/strtol.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/wcstombs
+echo lang/cem/libcc.ansi+lib_cpmz80/wcstombs
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/wcstombs/wcstombs.o lang/cem/libcc.ansi/core/stdlib/wcstombs.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/wctomb
+echo lang/cem/libcc.ansi+lib_cpmz80/wctomb
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/wctomb/wctomb.o lang/cem/libcc.ansi/core/stdlib/wctomb.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/memchr
+echo lang/cem/libcc.ansi+lib_cpmz80/memchr
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/memchr/memchr.o lang/cem/libcc.ansi/core/string/memchr.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/memcmp
+echo lang/cem/libcc.ansi+lib_cpmz80/memcmp
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/memcmp/memcmp.o lang/cem/libcc.ansi/core/string/memcmp.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/memcpy
+echo lang/cem/libcc.ansi+lib_cpmz80/memcpy
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/memcpy/memcpy.o lang/cem/libcc.ansi/core/string/memcpy.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/memmove
+echo lang/cem/libcc.ansi+lib_cpmz80/memmove
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/memmove/memmove.o lang/cem/libcc.ansi/core/string/memmove.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/memset
+echo lang/cem/libcc.ansi+lib_cpmz80/memset
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/memset/memset.o lang/cem/libcc.ansi/core/string/memset.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strcat
+echo lang/cem/libcc.ansi+lib_cpmz80/strcat
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strcat/strcat.o lang/cem/libcc.ansi/core/string/strcat.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strchr
+echo lang/cem/libcc.ansi+lib_cpmz80/strchr
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strchr/strchr.o lang/cem/libcc.ansi/core/string/strchr.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strcmp
+echo lang/cem/libcc.ansi+lib_cpmz80/strcmp
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strcmp/strcmp.o lang/cem/libcc.ansi/core/string/strcmp.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strcoll
+echo lang/cem/libcc.ansi+lib_cpmz80/strcoll
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strcoll/strcoll.o lang/cem/libcc.ansi/core/string/strcoll.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strcpy
+echo lang/cem/libcc.ansi+lib_cpmz80/strcpy
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strcpy/strcpy.o lang/cem/libcc.ansi/core/string/strcpy.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strcspn
+echo lang/cem/libcc.ansi+lib_cpmz80/strcspn
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strcspn/strcspn.o lang/cem/libcc.ansi/core/string/strcspn.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strdup
+echo lang/cem/libcc.ansi+lib_cpmz80/strdup
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strdup/strdup.o lang/cem/libcc.ansi/core/string/strdup.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strlen
+echo lang/cem/libcc.ansi+lib_cpmz80/strlen
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strlen/strlen.o lang/cem/libcc.ansi/core/string/strlen.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strncat
+echo lang/cem/libcc.ansi+lib_cpmz80/strncat
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strncat/strncat.o lang/cem/libcc.ansi/core/string/strncat.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strncmp
+echo lang/cem/libcc.ansi+lib_cpmz80/strncmp
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strncmp/strncmp.o lang/cem/libcc.ansi/core/string/strncmp.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strncpy
+echo lang/cem/libcc.ansi+lib_cpmz80/strncpy
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strncpy/strncpy.o lang/cem/libcc.ansi/core/string/strncpy.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strpbrk
+echo lang/cem/libcc.ansi+lib_cpmz80/strpbrk
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strpbrk/strpbrk.o lang/cem/libcc.ansi/core/string/strpbrk.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strrchr
+echo lang/cem/libcc.ansi+lib_cpmz80/strrchr
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strrchr/strrchr.o lang/cem/libcc.ansi/core/string/strrchr.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strspn
+echo lang/cem/libcc.ansi+lib_cpmz80/strspn
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strspn/strspn.o lang/cem/libcc.ansi/core/string/strspn.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strstr
+echo lang/cem/libcc.ansi+lib_cpmz80/strstr
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strstr/strstr.o lang/cem/libcc.ansi/core/string/strstr.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strtok
+echo lang/cem/libcc.ansi+lib_cpmz80/strtok
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strtok/strtok.o lang/cem/libcc.ansi/core/string/strtok.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strxfrm
+echo lang/cem/libcc.ansi+lib_cpmz80/strxfrm
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strxfrm/strxfrm.o lang/cem/libcc.ansi/core/string/strxfrm.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/asctime
+echo lang/cem/libcc.ansi+lib_cpmz80/asctime
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/asctime/asctime.o lang/cem/libcc.ansi/core/time/asctime.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/ctime
+echo lang/cem/libcc.ansi+lib_cpmz80/ctime
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/ctime/ctime.o lang/cem/libcc.ansi/core/time/ctime.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/difftime
+echo lang/cem/libcc.ansi+lib_cpmz80/difftime
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/difftime/difftime.o lang/cem/libcc.ansi/core/time/difftime.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/gmtime
+echo lang/cem/libcc.ansi+lib_cpmz80/gmtime
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/gmtime/gmtime.o lang/cem/libcc.ansi/core/time/gmtime.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/localtime
+echo lang/cem/libcc.ansi+lib_cpmz80/localtime
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/localtime/localtime.o lang/cem/libcc.ansi/core/time/localtime.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/misc
+echo lang/cem/libcc.ansi+lib_cpmz80/misc
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/misc/misc.o lang/cem/libcc.ansi/core/time/misc.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/mktime
+echo lang/cem/libcc.ansi+lib_cpmz80/mktime
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/mktime/mktime.o lang/cem/libcc.ansi/core/time/mktime.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strftime
+echo lang/cem/libcc.ansi+lib_cpmz80/strftime
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strftime/strftime.o lang/cem/libcc.ansi/core/time/strftime.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/tzset
+echo lang/cem/libcc.ansi+lib_cpmz80/tzset
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/tzset/tzset.o lang/cem/libcc.ansi/core/time/tzset.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/atexit
+echo lang/cem/libcc.ansi+lib_cpmz80/atexit
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/atexit/atexit.o lang/cem/libcc.ansi/sys/exit/atexit.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/exit
+echo lang/cem/libcc.ansi+lib_cpmz80/exit
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/exit/exit.o lang/cem/libcc.ansi/sys/exit/exit.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/calloc
+echo lang/cem/libcc.ansi+lib_cpmz80/calloc
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/calloc/calloc.o lang/cem/libcc.ansi/sys/malloc/calloc.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/malloc
+echo lang/cem/libcc.ansi+lib_cpmz80/malloc
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/malloc/malloc.o lang/cem/libcc.ansi/sys/malloc/malloc.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/realloc
+echo lang/cem/libcc.ansi+lib_cpmz80/realloc
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/realloc/realloc.o lang/cem/libcc.ansi/sys/malloc/realloc.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/clock
+echo lang/cem/libcc.ansi+lib_cpmz80/clock
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/clock/clock.o lang/cem/libcc.ansi/sys/misc/clock.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/getpass
+echo lang/cem/libcc.ansi+lib_cpmz80/getpass
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/getpass/getpass.o lang/cem/libcc.ansi/sys/misc/getpass.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/isatty
+echo lang/cem/libcc.ansi+lib_cpmz80/isatty
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/isatty/isatty.o lang/cem/libcc.ansi/sys/misc/isatty.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/mktemp
+echo lang/cem/libcc.ansi+lib_cpmz80/mktemp
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/mktemp/mktemp.o lang/cem/libcc.ansi/sys/misc/mktemp.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/popen
+echo lang/cem/libcc.ansi+lib_cpmz80/popen
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/popen/popen.o lang/cem/libcc.ansi/sys/misc/popen.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/remove
+echo lang/cem/libcc.ansi+lib_cpmz80/remove
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/remove/remove.o lang/cem/libcc.ansi/sys/misc/remove.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/sleep
+echo lang/cem/libcc.ansi+lib_cpmz80/sleep
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/sleep/sleep.o lang/cem/libcc.ansi/sys/misc/sleep.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/system
+echo lang/cem/libcc.ansi+lib_cpmz80/system
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/system/system.o lang/cem/libcc.ansi/sys/misc/system.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/time
+echo lang/cem/libcc.ansi+lib_cpmz80/time
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/time/time.o lang/cem/libcc.ansi/sys/misc/time.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/clearerr
+echo lang/cem/libcc.ansi+lib_cpmz80/clearerr
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/clearerr/clearerr.o lang/cem/libcc.ansi/sys/stdio/clearerr.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/data
+echo lang/cem/libcc.ansi+lib_cpmz80/data
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/data/data.o lang/cem/libcc.ansi/sys/stdio/data.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/doprnt
+echo lang/cem/libcc.ansi+lib_cpmz80/doprnt
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/doprnt/doprnt.o lang/cem/libcc.ansi/sys/stdio/doprnt.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/doscan
+echo lang/cem/libcc.ansi+lib_cpmz80/doscan
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/doscan/doscan.o lang/cem/libcc.ansi/sys/stdio/doscan.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fclose
+echo lang/cem/libcc.ansi+lib_cpmz80/fclose
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fclose/fclose.o lang/cem/libcc.ansi/sys/stdio/fclose.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fdopen
+echo lang/cem/libcc.ansi+lib_cpmz80/fdopen
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fdopen/fdopen.o lang/cem/libcc.ansi/sys/stdio/fdopen.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/feof
+echo lang/cem/libcc.ansi+lib_cpmz80/feof
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/feof/feof.o lang/cem/libcc.ansi/sys/stdio/feof.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/ferror
+echo lang/cem/libcc.ansi+lib_cpmz80/ferror
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/ferror/ferror.o lang/cem/libcc.ansi/sys/stdio/ferror.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fflush
+echo lang/cem/libcc.ansi+lib_cpmz80/fflush
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fflush/fflush.o lang/cem/libcc.ansi/sys/stdio/fflush.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fgetc
+echo lang/cem/libcc.ansi+lib_cpmz80/fgetc
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fgetc/fgetc.o lang/cem/libcc.ansi/sys/stdio/fgetc.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fgets
+echo lang/cem/libcc.ansi+lib_cpmz80/fgets
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fgets/fgets.o lang/cem/libcc.ansi/sys/stdio/fgets.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fileno
+echo lang/cem/libcc.ansi+lib_cpmz80/fileno
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fileno/fileno.o lang/cem/libcc.ansi/sys/stdio/fileno.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fillbuf
+echo lang/cem/libcc.ansi+lib_cpmz80/fillbuf
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fillbuf/fillbuf.o lang/cem/libcc.ansi/sys/stdio/fillbuf.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fltpr
+echo lang/cem/libcc.ansi+lib_cpmz80/fltpr
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fltpr/fltpr.o lang/cem/libcc.ansi/sys/stdio/fltpr.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/flushbuf
+echo lang/cem/libcc.ansi+lib_cpmz80/flushbuf
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/flushbuf/flushbuf.o lang/cem/libcc.ansi/sys/stdio/flushbuf.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fopen
+echo lang/cem/libcc.ansi+lib_cpmz80/fopen
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fopen/fopen.o lang/cem/libcc.ansi/sys/stdio/fopen.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fprintf
+echo lang/cem/libcc.ansi+lib_cpmz80/fprintf
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fprintf/fprintf.o lang/cem/libcc.ansi/sys/stdio/fprintf.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fputc
+echo lang/cem/libcc.ansi+lib_cpmz80/fputc
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fputc/fputc.o lang/cem/libcc.ansi/sys/stdio/fputc.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fputs
+echo lang/cem/libcc.ansi+lib_cpmz80/fputs
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fputs/fputs.o lang/cem/libcc.ansi/sys/stdio/fputs.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fread
+echo lang/cem/libcc.ansi+lib_cpmz80/fread
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fread/fread.o lang/cem/libcc.ansi/sys/stdio/fread.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/freopen
+echo lang/cem/libcc.ansi+lib_cpmz80/freopen
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/freopen/freopen.o lang/cem/libcc.ansi/sys/stdio/freopen.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fscanf
+echo lang/cem/libcc.ansi+lib_cpmz80/fscanf
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fscanf/fscanf.o lang/cem/libcc.ansi/sys/stdio/fscanf.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fseek
+echo lang/cem/libcc.ansi+lib_cpmz80/fseek
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fseek/fseek.o lang/cem/libcc.ansi/sys/stdio/fseek.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/ftell
+echo lang/cem/libcc.ansi+lib_cpmz80/ftell
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/ftell/ftell.o lang/cem/libcc.ansi/sys/stdio/ftell.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fwrite
+echo lang/cem/libcc.ansi+lib_cpmz80/fwrite
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fwrite/fwrite.o lang/cem/libcc.ansi/sys/stdio/fwrite.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/getc
+echo lang/cem/libcc.ansi+lib_cpmz80/getc
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/getc/getc.o lang/cem/libcc.ansi/sys/stdio/getc.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/getchar
+echo lang/cem/libcc.ansi+lib_cpmz80/getchar
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/getchar/getchar.o lang/cem/libcc.ansi/sys/stdio/getchar.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/icompute
+echo lang/cem/libcc.ansi+lib_cpmz80/icompute
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/icompute/icompute.o lang/cem/libcc.ansi/sys/stdio/icompute.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/printf
+echo lang/cem/libcc.ansi+lib_cpmz80/printf
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/printf/printf.o lang/cem/libcc.ansi/sys/stdio/printf.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/putc
+echo lang/cem/libcc.ansi+lib_cpmz80/putc
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/putc/putc.o lang/cem/libcc.ansi/sys/stdio/putc.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/putchar
+echo lang/cem/libcc.ansi+lib_cpmz80/putchar
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/putchar/putchar.o lang/cem/libcc.ansi/sys/stdio/putchar.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/puts
+echo lang/cem/libcc.ansi+lib_cpmz80/puts
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/puts/puts.o lang/cem/libcc.ansi/sys/stdio/puts.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/scanf
+echo lang/cem/libcc.ansi+lib_cpmz80/scanf
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/scanf/scanf.o lang/cem/libcc.ansi/sys/stdio/scanf.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/setbuf
+echo lang/cem/libcc.ansi+lib_cpmz80/setbuf
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/setbuf/setbuf.o lang/cem/libcc.ansi/sys/stdio/setbuf.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/setvbuf
+echo lang/cem/libcc.ansi+lib_cpmz80/setvbuf
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/setvbuf/setvbuf.o lang/cem/libcc.ansi/sys/stdio/setvbuf.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/snprintf
+echo lang/cem/libcc.ansi+lib_cpmz80/snprintf
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/snprintf/snprintf.o lang/cem/libcc.ansi/sys/stdio/snprintf.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/sprintf
+echo lang/cem/libcc.ansi+lib_cpmz80/sprintf
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/sprintf/sprintf.o lang/cem/libcc.ansi/sys/stdio/sprintf.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/sscanf
+echo lang/cem/libcc.ansi+lib_cpmz80/sscanf
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/sscanf/sscanf.o lang/cem/libcc.ansi/sys/stdio/sscanf.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/tmpfile
+echo lang/cem/libcc.ansi+lib_cpmz80/tmpfile
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/tmpfile/tmpfile.o lang/cem/libcc.ansi/sys/stdio/tmpfile.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/tmpnam
+echo lang/cem/libcc.ansi+lib_cpmz80/tmpnam
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/tmpnam/tmpnam.o lang/cem/libcc.ansi/sys/stdio/tmpnam.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/ungetc
+echo lang/cem/libcc.ansi+lib_cpmz80/ungetc
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/ungetc/ungetc.o lang/cem/libcc.ansi/sys/stdio/ungetc.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/vfprintf
+echo lang/cem/libcc.ansi+lib_cpmz80/vfprintf
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/vfprintf/vfprintf.o lang/cem/libcc.ansi/sys/stdio/vfprintf.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/vprintf
+echo lang/cem/libcc.ansi+lib_cpmz80/vprintf
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/vprintf/vprintf.o lang/cem/libcc.ansi/sys/stdio/vprintf.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/vsnprintf
+echo lang/cem/libcc.ansi+lib_cpmz80/vsnprintf
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/vsnprintf/vsnprintf.o lang/cem/libcc.ansi/sys/stdio/vsnprintf.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/vsprintf
+echo lang/cem/libcc.ansi+lib_cpmz80/vsprintf
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/vsprintf/vsprintf.o lang/cem/libcc.ansi/sys/stdio/vsprintf.c  -O6
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80
+echo lang/cem/libcc.ansi+lib_cpmz80
+rm -f ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/lib_cpmz80.a
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/aal qc ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/lib_cpmz80.a ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/isalnum/isalnum.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/isalpha/isalpha.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/isascii/isascii.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/iscntrl/iscntrl.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/isdigit/isdigit.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/isgraph/isgraph.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/islower/islower.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/isprint/isprint.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/ispunct/ispunct.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/isspace/isspace.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/isupper/isupper.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/isxdigit/isxdigit.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/char/char.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/tolower/tolower.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/toupper/toupper.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/errlist/errlist.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/perror/perror.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strerror/strerror.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/localeconv/localeconv.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/setlocale/setlocale.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/asin/asin.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/atan/atan.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/atan2/atan2.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/ceil/ceil.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/exp/exp.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fabs/fabs.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/floor/floor.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fmod/fmod.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/hugeval/hugeval.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/hypot/hypot.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/isnan/isnan.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/ldexp/ldexp.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/log/log.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/log10/log10.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/pow/pow.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/sin/sin.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/sinh/sinh.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/sqrt/sqrt.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/tan/tan.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/tanh/tanh.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/frexp/frexp.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/modf/modf.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/abort/abort.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/assert/assert.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/getopt/getopt.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/raise/raise.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/termcap/termcap.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/sigmisc/sigmisc.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/setjmp/setjmp.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/abs/abs.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/atof/atof.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/atoi/atoi.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/atol/atol.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/bsearch/bsearch.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/div/div.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/ecvt/ecvt.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/environ/environ.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/ext_comp/ext_comp.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/getenv/getenv.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/labs/labs.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/ldiv/ldiv.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/mblen/mblen.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/mbstowcs/mbstowcs.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/mbtowc/mbtowc.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/putenv/putenv.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/qsort/qsort.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/rand/rand.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/setenv/setenv.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strtod/strtod.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strtol/strtol.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/wcstombs/wcstombs.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/wctomb/wctomb.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/memchr/memchr.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/memcmp/memcmp.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/memcpy/memcpy.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/memmove/memmove.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/memset/memset.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strcat/strcat.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strchr/strchr.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strcmp/strcmp.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strcoll/strcoll.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strcpy/strcpy.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strcspn/strcspn.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strdup/strdup.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strlen/strlen.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strncat/strncat.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strncmp/strncmp.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strncpy/strncpy.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strpbrk/strpbrk.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strrchr/strrchr.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strspn/strspn.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strstr/strstr.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strtok/strtok.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strxfrm/strxfrm.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/asctime/asctime.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/ctime/ctime.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/difftime/difftime.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/gmtime/gmtime.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/localtime/localtime.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/misc/misc.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/mktime/mktime.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/strftime/strftime.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/tzset/tzset.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/atexit/atexit.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/exit/exit.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/calloc/calloc.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/malloc/malloc.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/realloc/realloc.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/clock/clock.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/getpass/getpass.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/isatty/isatty.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/mktemp/mktemp.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/popen/popen.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/remove/remove.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/sleep/sleep.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/system/system.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/time/time.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/clearerr/clearerr.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/data/data.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/doprnt/doprnt.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/doscan/doscan.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fclose/fclose.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fdopen/fdopen.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/feof/feof.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/ferror/ferror.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fflush/fflush.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fgetc/fgetc.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fgets/fgets.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fileno/fileno.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fillbuf/fillbuf.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fltpr/fltpr.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/flushbuf/flushbuf.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fopen/fopen.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fprintf/fprintf.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fputc/fputc.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fputs/fputs.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fread/fread.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/freopen/freopen.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fscanf/fscanf.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fseek/fseek.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/ftell/ftell.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/fwrite/fwrite.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/getc/getc.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/getchar/getchar.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/icompute/icompute.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/printf/printf.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/putc/putc.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/putchar/putchar.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/puts/puts.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/scanf/scanf.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/setbuf/setbuf.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/setvbuf/setvbuf.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/snprintf/snprintf.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/sprintf/sprintf.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/sscanf/sscanf.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/tmpfile/tmpfile.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/tmpnam/tmpnam.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/ungetc/ungetc.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/vfprintf/vfprintf.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/vprintf/vprintf.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/vsnprintf/vsnprintf.o ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/vsprintf/vsprintf.o
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/crt_cpmz80
+echo lang/cem/libcc.ansi+crt_cpmz80
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/lang/cem/libcc.ansi/crt_cpmz80/crt_cpmz80.o lang/cem/libcc.ansi/head_ac.e -I${BUILD}/obj/h/emheaders -O6
+mkdir -p ${BUILD}/staging/share/ack/cpmz80
+echo lang/cem/libcc.ansi+pkg_cpmz80
+cp ${BUILD}/obj/lang/cem/libcc.ansi/lib_cpmz80/lib_cpmz80.a ${BUILD}/staging/share/ack/cpmz80/libc.a
+cp ${BUILD}/obj/lang/cem/libcc.ansi/crt_cpmz80/crt_cpmz80.o ${BUILD}/staging/share/ack/cpmz80/c-ansi.o
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/add_ext
+echo mach/proto/fp+s_cpmz80/add_ext
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/add_ext/add_ext.s mach/proto/fp/add_ext.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/add_ext
+echo mach/proto/fp+ed_cpmz80/add_ext
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/add_ext/add_ext.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/add_ext/add_ext.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/add_ext
+echo mach/proto/fp+lib_cpmz80/add_ext
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/add_ext/add_ext.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/add_ext/add_ext.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/adder
+echo mach/proto/fp+s_cpmz80/adder
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/adder/adder.s mach/proto/fp/adder.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/adder
+echo mach/proto/fp+ed_cpmz80/adder
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/adder/adder.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/adder/adder.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/adder
+echo mach/proto/fp+lib_cpmz80/adder
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/adder/adder.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/adder/adder.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/adf4
+echo mach/proto/fp+s_cpmz80/adf4
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/adf4/adf4.s mach/proto/fp/adf4.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/adf4
+echo mach/proto/fp+ed_cpmz80/adf4
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/adf4/adf4.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/adf4/adf4.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/adf4
+echo mach/proto/fp+lib_cpmz80/adf4
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/adf4/adf4.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/adf4/adf4.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/adf8
+echo mach/proto/fp+s_cpmz80/adf8
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/adf8/adf8.s mach/proto/fp/adf8.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/adf8
+echo mach/proto/fp+ed_cpmz80/adf8
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/adf8/adf8.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/adf8/adf8.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/adf8
+echo mach/proto/fp+lib_cpmz80/adf8
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/adf8/adf8.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/adf8/adf8.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/cff4
+echo mach/proto/fp+s_cpmz80/cff4
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/cff4/cff4.s mach/proto/fp/cff4.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/cff4
+echo mach/proto/fp+ed_cpmz80/cff4
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/cff4/cff4.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/cff4/cff4.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/cff4
+echo mach/proto/fp+lib_cpmz80/cff4
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/cff4/cff4.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/cff4/cff4.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/cff8
+echo mach/proto/fp+s_cpmz80/cff8
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/cff8/cff8.s mach/proto/fp/cff8.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/cff8
+echo mach/proto/fp+ed_cpmz80/cff8
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/cff8/cff8.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/cff8/cff8.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/cff8
+echo mach/proto/fp+lib_cpmz80/cff8
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/cff8/cff8.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/cff8/cff8.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/cfi
+echo mach/proto/fp+s_cpmz80/cfi
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/cfi/cfi.s mach/proto/fp/cfi.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/cfi
+echo mach/proto/fp+ed_cpmz80/cfi
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/cfi/cfi.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/cfi/cfi.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/cfi
+echo mach/proto/fp+lib_cpmz80/cfi
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/cfi/cfi.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/cfi/cfi.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/cfu
+echo mach/proto/fp+s_cpmz80/cfu
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/cfu/cfu.s mach/proto/fp/cfu.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/cfu
+echo mach/proto/fp+ed_cpmz80/cfu
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/cfu/cfu.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/cfu/cfu.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/cfu
+echo mach/proto/fp+lib_cpmz80/cfu
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/cfu/cfu.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/cfu/cfu.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/cif4
+echo mach/proto/fp+s_cpmz80/cif4
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/cif4/cif4.s mach/proto/fp/cif4.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/cif4
+echo mach/proto/fp+ed_cpmz80/cif4
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/cif4/cif4.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/cif4/cif4.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/cif4
+echo mach/proto/fp+lib_cpmz80/cif4
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/cif4/cif4.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/cif4/cif4.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/cif8
+echo mach/proto/fp+s_cpmz80/cif8
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/cif8/cif8.s mach/proto/fp/cif8.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/cif8
+echo mach/proto/fp+ed_cpmz80/cif8
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/cif8/cif8.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/cif8/cif8.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/cif8
+echo mach/proto/fp+lib_cpmz80/cif8
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/cif8/cif8.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/cif8/cif8.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/cmf4
+echo mach/proto/fp+s_cpmz80/cmf4
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/cmf4/cmf4.s mach/proto/fp/cmf4.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/cmf4
+echo mach/proto/fp+ed_cpmz80/cmf4
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/cmf4/cmf4.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/cmf4/cmf4.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/cmf4
+echo mach/proto/fp+lib_cpmz80/cmf4
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/cmf4/cmf4.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/cmf4/cmf4.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/cmf8
+echo mach/proto/fp+s_cpmz80/cmf8
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/cmf8/cmf8.s mach/proto/fp/cmf8.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/cmf8
+echo mach/proto/fp+ed_cpmz80/cmf8
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/cmf8/cmf8.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/cmf8/cmf8.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/cmf8
+echo mach/proto/fp+lib_cpmz80/cmf8
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/cmf8/cmf8.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/cmf8/cmf8.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/compact
+echo mach/proto/fp+s_cpmz80/compact
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/compact/compact.s mach/proto/fp/compact.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/compact
+echo mach/proto/fp+ed_cpmz80/compact
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/compact/compact.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/compact/compact.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/compact
+echo mach/proto/fp+lib_cpmz80/compact
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/compact/compact.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/compact/compact.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/cuf4
+echo mach/proto/fp+s_cpmz80/cuf4
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/cuf4/cuf4.s mach/proto/fp/cuf4.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/cuf4
+echo mach/proto/fp+ed_cpmz80/cuf4
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/cuf4/cuf4.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/cuf4/cuf4.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/cuf4
+echo mach/proto/fp+lib_cpmz80/cuf4
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/cuf4/cuf4.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/cuf4/cuf4.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/cuf8
+echo mach/proto/fp+s_cpmz80/cuf8
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/cuf8/cuf8.s mach/proto/fp/cuf8.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/cuf8
+echo mach/proto/fp+ed_cpmz80/cuf8
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/cuf8/cuf8.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/cuf8/cuf8.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/cuf8
+echo mach/proto/fp+lib_cpmz80/cuf8
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/cuf8/cuf8.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/cuf8/cuf8.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/div_ext
+echo mach/proto/fp+s_cpmz80/div_ext
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/div_ext/div_ext.s mach/proto/fp/div_ext.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/div_ext
+echo mach/proto/fp+ed_cpmz80/div_ext
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/div_ext/div_ext.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/div_ext/div_ext.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/div_ext
+echo mach/proto/fp+lib_cpmz80/div_ext
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/div_ext/div_ext.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/div_ext/div_ext.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/dvf4
+echo mach/proto/fp+s_cpmz80/dvf4
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/dvf4/dvf4.s mach/proto/fp/dvf4.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/dvf4
+echo mach/proto/fp+ed_cpmz80/dvf4
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/dvf4/dvf4.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/dvf4/dvf4.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/dvf4
+echo mach/proto/fp+lib_cpmz80/dvf4
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/dvf4/dvf4.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/dvf4/dvf4.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/dvf8
+echo mach/proto/fp+s_cpmz80/dvf8
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/dvf8/dvf8.s mach/proto/fp/dvf8.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/dvf8
+echo mach/proto/fp+ed_cpmz80/dvf8
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/dvf8/dvf8.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/dvf8/dvf8.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/dvf8
+echo mach/proto/fp+lib_cpmz80/dvf8
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/dvf8/dvf8.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/dvf8/dvf8.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/extend
+echo mach/proto/fp+s_cpmz80/extend
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/extend/extend.s mach/proto/fp/extend.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/extend
+echo mach/proto/fp+ed_cpmz80/extend
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/extend/extend.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/extend/extend.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/extend
+echo mach/proto/fp+lib_cpmz80/extend
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/extend/extend.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/extend/extend.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/fef4
+echo mach/proto/fp+s_cpmz80/fef4
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/fef4/fef4.s mach/proto/fp/fef4.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/fef4
+echo mach/proto/fp+ed_cpmz80/fef4
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/fef4/fef4.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/fef4/fef4.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/fef4
+echo mach/proto/fp+lib_cpmz80/fef4
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/fef4/fef4.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/fef4/fef4.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/fef8
+echo mach/proto/fp+s_cpmz80/fef8
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/fef8/fef8.s mach/proto/fp/fef8.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/fef8
+echo mach/proto/fp+ed_cpmz80/fef8
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/fef8/fef8.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/fef8/fef8.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/fef8
+echo mach/proto/fp+lib_cpmz80/fef8
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/fef8/fef8.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/fef8/fef8.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/fif4
+echo mach/proto/fp+s_cpmz80/fif4
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/fif4/fif4.s mach/proto/fp/fif4.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/fif4
+echo mach/proto/fp+ed_cpmz80/fif4
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/fif4/fif4.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/fif4/fif4.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/fif4
+echo mach/proto/fp+lib_cpmz80/fif4
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/fif4/fif4.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/fif4/fif4.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/fif8
+echo mach/proto/fp+s_cpmz80/fif8
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/fif8/fif8.s mach/proto/fp/fif8.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/fif8
+echo mach/proto/fp+ed_cpmz80/fif8
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/fif8/fif8.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/fif8/fif8.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/fif8
+echo mach/proto/fp+lib_cpmz80/fif8
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/fif8/fif8.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/fif8/fif8.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/mlf4
+echo mach/proto/fp+s_cpmz80/mlf4
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/mlf4/mlf4.s mach/proto/fp/mlf4.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/mlf4
+echo mach/proto/fp+ed_cpmz80/mlf4
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/mlf4/mlf4.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/mlf4/mlf4.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/mlf4
+echo mach/proto/fp+lib_cpmz80/mlf4
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/mlf4/mlf4.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/mlf4/mlf4.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/mlf8
+echo mach/proto/fp+s_cpmz80/mlf8
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/mlf8/mlf8.s mach/proto/fp/mlf8.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/mlf8
+echo mach/proto/fp+ed_cpmz80/mlf8
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/mlf8/mlf8.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/mlf8/mlf8.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/mlf8
+echo mach/proto/fp+lib_cpmz80/mlf8
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/mlf8/mlf8.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/mlf8/mlf8.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/mul_ext
+echo mach/proto/fp+s_cpmz80/mul_ext
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/mul_ext/mul_ext.s mach/proto/fp/mul_ext.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/mul_ext
+echo mach/proto/fp+ed_cpmz80/mul_ext
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/mul_ext/mul_ext.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/mul_ext/mul_ext.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/mul_ext
+echo mach/proto/fp+lib_cpmz80/mul_ext
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/mul_ext/mul_ext.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/mul_ext/mul_ext.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/ngf4
+echo mach/proto/fp+s_cpmz80/ngf4
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/ngf4/ngf4.s mach/proto/fp/ngf4.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/ngf4
+echo mach/proto/fp+ed_cpmz80/ngf4
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/ngf4/ngf4.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/ngf4/ngf4.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/ngf4
+echo mach/proto/fp+lib_cpmz80/ngf4
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/ngf4/ngf4.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/ngf4/ngf4.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/ngf8
+echo mach/proto/fp+s_cpmz80/ngf8
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/ngf8/ngf8.s mach/proto/fp/ngf8.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/ngf8
+echo mach/proto/fp+ed_cpmz80/ngf8
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/ngf8/ngf8.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/ngf8/ngf8.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/ngf8
+echo mach/proto/fp+lib_cpmz80/ngf8
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/ngf8/ngf8.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/ngf8/ngf8.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/nrm_ext
+echo mach/proto/fp+s_cpmz80/nrm_ext
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/nrm_ext/nrm_ext.s mach/proto/fp/nrm_ext.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/nrm_ext
+echo mach/proto/fp+ed_cpmz80/nrm_ext
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/nrm_ext/nrm_ext.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/nrm_ext/nrm_ext.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/nrm_ext
+echo mach/proto/fp+lib_cpmz80/nrm_ext
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/nrm_ext/nrm_ext.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/nrm_ext/nrm_ext.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/sbf4
+echo mach/proto/fp+s_cpmz80/sbf4
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/sbf4/sbf4.s mach/proto/fp/sbf4.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/sbf4
+echo mach/proto/fp+ed_cpmz80/sbf4
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/sbf4/sbf4.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/sbf4/sbf4.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/sbf4
+echo mach/proto/fp+lib_cpmz80/sbf4
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/sbf4/sbf4.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/sbf4/sbf4.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/sbf8
+echo mach/proto/fp+s_cpmz80/sbf8
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/sbf8/sbf8.s mach/proto/fp/sbf8.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/sbf8
+echo mach/proto/fp+ed_cpmz80/sbf8
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/sbf8/sbf8.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/sbf8/sbf8.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/sbf8
+echo mach/proto/fp+lib_cpmz80/sbf8
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/sbf8/sbf8.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/sbf8/sbf8.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/sft_ext
+echo mach/proto/fp+s_cpmz80/sft_ext
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/sft_ext/sft_ext.s mach/proto/fp/sft_ext.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/sft_ext
+echo mach/proto/fp+ed_cpmz80/sft_ext
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/sft_ext/sft_ext.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/sft_ext/sft_ext.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/sft_ext
+echo mach/proto/fp+lib_cpmz80/sft_ext
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/sft_ext/sft_ext.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/sft_ext/sft_ext.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/shifter
+echo mach/proto/fp+s_cpmz80/shifter
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/shifter/shifter.s mach/proto/fp/shifter.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/shifter
+echo mach/proto/fp+ed_cpmz80/shifter
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/shifter/shifter.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/shifter/shifter.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/shifter
+echo mach/proto/fp+lib_cpmz80/shifter
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/shifter/shifter.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/shifter/shifter.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/sub_ext
+echo mach/proto/fp+s_cpmz80/sub_ext
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/sub_ext/sub_ext.s mach/proto/fp/sub_ext.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/sub_ext
+echo mach/proto/fp+ed_cpmz80/sub_ext
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/sub_ext/sub_ext.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/sub_ext/sub_ext.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/sub_ext
+echo mach/proto/fp+lib_cpmz80/sub_ext
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/sub_ext/sub_ext.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/sub_ext/sub_ext.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/zrf4
+echo mach/proto/fp+s_cpmz80/zrf4
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/zrf4/zrf4.s mach/proto/fp/zrf4.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/zrf4
+echo mach/proto/fp+ed_cpmz80/zrf4
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/zrf4/zrf4.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/zrf4/zrf4.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/zrf4
+echo mach/proto/fp+lib_cpmz80/zrf4
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/zrf4/zrf4.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/zrf4/zrf4.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/zrf8
+echo mach/proto/fp+s_cpmz80/zrf8
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/zrf8/zrf8.s mach/proto/fp/zrf8.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/zrf8
+echo mach/proto/fp+ed_cpmz80/zrf8
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/zrf8/zrf8.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/zrf8/zrf8.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/zrf8
+echo mach/proto/fp+lib_cpmz80/zrf8
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/zrf8/zrf8.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/zrf8/zrf8.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/zrf_ext
+echo mach/proto/fp+s_cpmz80/zrf_ext
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/zrf_ext/zrf_ext.s mach/proto/fp/zrf_ext.c  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/zrf_ext
+echo mach/proto/fp+ed_cpmz80/zrf_ext
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/zrf_ext/zrf_ext.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/zrf_ext/zrf_ext.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/zrf_ext
+echo mach/proto/fp+lib_cpmz80/zrf_ext
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/zrf_ext/zrf_ext.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/zrf_ext/zrf_ext.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/s_cpmz80/fptrp
+echo mach/proto/fp+s_cpmz80/fptrp
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.s -o ${BUILD}/obj/mach/proto/fp/s_cpmz80/fptrp/fptrp.s mach/proto/fp/fptrp.e  -O6 -Imach/i86/libfp
+mkdir -p ${BUILD}/obj/mach/proto/fp/ed_cpmz80/fptrp
+echo mach/proto/fp+ed_cpmz80/fptrp
+${BUILD}/obj/util/cmisc/ed/ed -s ${BUILD}/obj/mach/proto/fp/s_cpmz80/fptrp/fptrp.s <mach/proto/fp/FP.script >${BUILD}/obj/mach/proto/fp/ed_cpmz80/fptrp/fptrp.s
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80/fptrp
+echo mach/proto/fp+lib_cpmz80/fptrp
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/fptrp/fptrp.o ${BUILD}/obj/mach/proto/fp/ed_cpmz80/fptrp/fptrp.s  -O6
+mkdir -p ${BUILD}/obj/mach/proto/fp/lib_cpmz80
+echo mach/proto/fp+lib_cpmz80
+rm -f ${BUILD}/obj/mach/proto/fp/lib_cpmz80/lib_cpmz80.a
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/aal qc ${BUILD}/obj/mach/proto/fp/lib_cpmz80/lib_cpmz80.a ${BUILD}/obj/mach/proto/fp/lib_cpmz80/add_ext/add_ext.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/adder/adder.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/adf4/adf4.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/adf8/adf8.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/cff4/cff4.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/cff8/cff8.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/cfi/cfi.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/cfu/cfu.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/cif4/cif4.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/cif8/cif8.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/cmf4/cmf4.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/cmf8/cmf8.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/compact/compact.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/cuf4/cuf4.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/cuf8/cuf8.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/div_ext/div_ext.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/dvf4/dvf4.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/dvf8/dvf8.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/extend/extend.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/fef4/fef4.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/fef8/fef8.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/fif4/fif4.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/fif8/fif8.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/mlf4/mlf4.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/mlf8/mlf8.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/mul_ext/mul_ext.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/ngf4/ngf4.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/ngf8/ngf8.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/nrm_ext/nrm_ext.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/sbf4/sbf4.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/sbf8/sbf8.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/sft_ext/sft_ext.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/shifter/shifter.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/sub_ext/sub_ext.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/zrf4/zrf4.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/zrf8/zrf8.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/zrf_ext/zrf_ext.o ${BUILD}/obj/mach/proto/fp/lib_cpmz80/fptrp/fptrp.o
+mkdir -p ${BUILD}/staging/share/ack/cpmz80
+echo mach/proto/fp+pkg_cpmz80
+cp ${BUILD}/obj/mach/proto/fp/lib_cpmz80/lib_cpmz80.a ${BUILD}/staging/share/ack/cpmz80/libfp.a
+mkdir -p ${BUILD}/obj/mach/z80/libend/lib_cpmz80/edata
+echo mach/z80/libend+lib_cpmz80/edata
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libend/lib_cpmz80/edata/edata.o mach/z80/libend/edata.s  -O6
+mkdir -p ${BUILD}/obj/mach/z80/libend/lib_cpmz80/em_end
+echo mach/z80/libend+lib_cpmz80/em_end
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libend/lib_cpmz80/em_end/em_end.o mach/z80/libend/em_end.s  -O6
+mkdir -p ${BUILD}/obj/mach/z80/libend/lib_cpmz80/end
+echo mach/z80/libend+lib_cpmz80/end
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libend/lib_cpmz80/end/end.o mach/z80/libend/end.s  -O6
+mkdir -p ${BUILD}/obj/mach/z80/libend/lib_cpmz80/etext
+echo mach/z80/libend+lib_cpmz80/etext
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libend/lib_cpmz80/etext/etext.o mach/z80/libend/etext.s  -O6
+mkdir -p ${BUILD}/obj/mach/z80/libend/lib_cpmz80
+echo mach/z80/libend+lib_cpmz80
+rm -f ${BUILD}/obj/mach/z80/libend/lib_cpmz80/lib_cpmz80.a
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/aal qc ${BUILD}/obj/mach/z80/libend/lib_cpmz80/lib_cpmz80.a ${BUILD}/obj/mach/z80/libend/lib_cpmz80/edata/edata.o ${BUILD}/obj/mach/z80/libend/lib_cpmz80/em_end/em_end.o ${BUILD}/obj/mach/z80/libend/lib_cpmz80/end/end.o ${BUILD}/obj/mach/z80/libend/lib_cpmz80/etext/etext.o
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/aar
+echo mach/z80/libem+lib_cpmz80/aar
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/aar/aar.o mach/z80/libem/aar.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/aar2
+echo mach/z80/libem+lib_cpmz80/aar2
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/aar2/aar2.o mach/z80/libem/aar2.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/aaru
+echo mach/z80/libem+lib_cpmz80/aaru
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/aaru/aaru.o mach/z80/libem/aaru.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/and
+echo mach/z80/libem+lib_cpmz80/and
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/and/and.o mach/z80/libem/and.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/cii
+echo mach/z80/libem+lib_cpmz80/cii
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/cii/cii.o mach/z80/libem/cii.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/cms
+echo mach/z80/libem+lib_cpmz80/cms
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/cms/cms.o mach/z80/libem/cms.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/cmu
+echo mach/z80/libem+lib_cpmz80/cmu
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/cmu/cmu.o mach/z80/libem/cmu.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/cmu4
+echo mach/z80/libem+lib_cpmz80/cmu4
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/cmu4/cmu4.o mach/z80/libem/cmu4.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/csa
+echo mach/z80/libem+lib_cpmz80/csa
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/csa/csa.o mach/z80/libem/csa.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/csb
+echo mach/z80/libem+lib_cpmz80/csb
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/csb/csb.o mach/z80/libem/csb.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/dvi2
+echo mach/z80/libem+lib_cpmz80/dvi2
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/dvi2/dvi2.o mach/z80/libem/dvi2.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/dvi4
+echo mach/z80/libem+lib_cpmz80/dvi4
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/dvi4/dvi4.o mach/z80/libem/dvi4.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/dvu2
+echo mach/z80/libem+lib_cpmz80/dvu2
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/dvu2/dvu2.o mach/z80/libem/dvu2.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/dvu4
+echo mach/z80/libem+lib_cpmz80/dvu4
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/dvu4/dvu4.o mach/z80/libem/dvu4.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/exg
+echo mach/z80/libem+lib_cpmz80/exg
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/exg/exg.o mach/z80/libem/exg.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/gto
+echo mach/z80/libem+lib_cpmz80/gto
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/gto/gto.o mach/z80/libem/gto.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/hulp
+echo mach/z80/libem+lib_cpmz80/hulp
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/hulp/hulp.o mach/z80/libem/hulp.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/inn
+echo mach/z80/libem+lib_cpmz80/inn
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/inn/inn.o mach/z80/libem/inn.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/ior
+echo mach/z80/libem+lib_cpmz80/ior
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/ior/ior.o mach/z80/libem/ior.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/lar
+echo mach/z80/libem+lib_cpmz80/lar
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/lar/lar.o mach/z80/libem/lar.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/lar2
+echo mach/z80/libem+lib_cpmz80/lar2
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/lar2/lar2.o mach/z80/libem/lar2.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/laru
+echo mach/z80/libem+lib_cpmz80/laru
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/laru/laru.o mach/z80/libem/laru.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/los
+echo mach/z80/libem+lib_cpmz80/los
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/los/los.o mach/z80/libem/los.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/mli2
+echo mach/z80/libem+lib_cpmz80/mli2
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/mli2/mli2.o mach/z80/libem/mli2.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/mli4
+echo mach/z80/libem+lib_cpmz80/mli4
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/mli4/mli4.o mach/z80/libem/mli4.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/nop
+echo mach/z80/libem+lib_cpmz80/nop
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/nop/nop.o mach/z80/libem/nop.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/outdec
+echo mach/z80/libem+lib_cpmz80/outdec
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/outdec/outdec.o mach/z80/libem/outdec.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/rck
+echo mach/z80/libem+lib_cpmz80/rck
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/rck/rck.o mach/z80/libem/rck.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/ret
+echo mach/z80/libem+lib_cpmz80/ret
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/ret/ret.o mach/z80/libem/ret.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/rmi2
+echo mach/z80/libem+lib_cpmz80/rmi2
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/rmi2/rmi2.o mach/z80/libem/rmi2.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/sar
+echo mach/z80/libem+lib_cpmz80/sar
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/sar/sar.o mach/z80/libem/sar.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/sar2
+echo mach/z80/libem+lib_cpmz80/sar2
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/sar2/sar2.o mach/z80/libem/sar2.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/saru
+echo mach/z80/libem+lib_cpmz80/saru
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/saru/saru.o mach/z80/libem/saru.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/sdf
+echo mach/z80/libem+lib_cpmz80/sdf
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/sdf/sdf.o mach/z80/libem/sdf.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/sdl
+echo mach/z80/libem+lib_cpmz80/sdl
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/sdl/sdl.o mach/z80/libem/sdl.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/set
+echo mach/z80/libem+lib_cpmz80/set
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/set/set.o mach/z80/libem/set.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/str
+echo mach/z80/libem+lib_cpmz80/str
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/str/str.o mach/z80/libem/str.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/sts
+echo mach/z80/libem+lib_cpmz80/sts
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/sts/sts.o mach/z80/libem/sts.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/trp
+echo mach/z80/libem+lib_cpmz80/trp
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/trp/trp.o mach/z80/libem/trp.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/unim
+echo mach/z80/libem+lib_cpmz80/unim
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/unim/unim.o mach/z80/libem/unim.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80/xor
+echo mach/z80/libem+lib_cpmz80/xor
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/xor/xor.o mach/z80/libem/xor.s  -O6 -Imach/z80/libem
+mkdir -p ${BUILD}/obj/mach/z80/libem/lib_cpmz80
+echo mach/z80/libem+lib_cpmz80
+rm -f ${BUILD}/obj/mach/z80/libem/lib_cpmz80/lib_cpmz80.a
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/aal qc ${BUILD}/obj/mach/z80/libem/lib_cpmz80/lib_cpmz80.a ${BUILD}/obj/mach/z80/libem/lib_cpmz80/aar/aar.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/aar2/aar2.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/aaru/aaru.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/and/and.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/cii/cii.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/cms/cms.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/cmu/cmu.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/cmu4/cmu4.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/csa/csa.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/csb/csb.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/dvi2/dvi2.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/dvi4/dvi4.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/dvu2/dvu2.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/dvu4/dvu4.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/exg/exg.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/gto/gto.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/hulp/hulp.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/inn/inn.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/ior/ior.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/lar/lar.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/lar2/lar2.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/laru/laru.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/los/los.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/mli2/mli2.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/mli4/mli4.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/nop/nop.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/outdec/outdec.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/rck/rck.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/ret/ret.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/rmi2/rmi2.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/sar/sar.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/sar2/sar2.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/saru/saru.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/sdf/sdf.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/sdl/sdl.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/set/set.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/str/str.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/sts/sts.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/trp/trp.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/unim/unim.o ${BUILD}/obj/mach/z80/libem/lib_cpmz80/xor/xor.o
+mkdir -p ${BUILD}/staging/share/ack/cpmz80
+echo plat/cpmz80+libs
+cp ${BUILD}/obj/mach/z80/libend/lib_cpmz80/lib_cpmz80.a ${BUILD}/staging/share/ack/cpmz80/libend.a
+cp ${BUILD}/obj/mach/z80/libem/lib_cpmz80/lib_cpmz80.a ${BUILD}/staging/share/ack/cpmz80/libem.a
+mkdir -p ${BUILD}/obj/lang/cem/libcc.ansi/headers/headers ${BUILD}/obj/lang/cem/libcc.ansi/headers/headers/sys ${BUILD}/obj/lang/cem/libcc.ansi/headers/headers/ack
+echo lang/cem/libcc.ansi/headers+headers
+cp lang/cem/libcc.ansi/headers/signal.h ${BUILD}/obj/lang/cem/libcc.ansi/headers/headers/signal.h
+cp lang/cem/libcc.ansi/headers/stdarg.h ${BUILD}/obj/lang/cem/libcc.ansi/headers/headers/stdarg.h
+cp lang/cem/libcc.ansi/headers/errno.h ${BUILD}/obj/lang/cem/libcc.ansi/headers/headers/errno.h
+cp lang/cem/libcc.ansi/headers/stdio.h ${BUILD}/obj/lang/cem/libcc.ansi/headers/headers/stdio.h
+cp lang/cem/libcc.ansi/headers/locale.h ${BUILD}/obj/lang/cem/libcc.ansi/headers/headers/locale.h
+cp lang/cem/libcc.ansi/headers/sys/time.h ${BUILD}/obj/lang/cem/libcc.ansi/headers/headers/sys/time.h
+cp lang/cem/libcc.ansi/headers/stddef.h ${BUILD}/obj/lang/cem/libcc.ansi/headers/headers/stddef.h
+cp lang/cem/libcc.ansi/headers/ack/config.h ${BUILD}/obj/lang/cem/libcc.ansi/headers/headers/ack/config.h
+cp lang/cem/libcc.ansi/headers/time.h ${BUILD}/obj/lang/cem/libcc.ansi/headers/headers/time.h
+cp lang/cem/libcc.ansi/headers/assert.h ${BUILD}/obj/lang/cem/libcc.ansi/headers/headers/assert.h
+cp lang/cem/libcc.ansi/headers/ctype.h ${BUILD}/obj/lang/cem/libcc.ansi/headers/headers/ctype.h
+cp lang/cem/libcc.ansi/headers/stdlib.h ${BUILD}/obj/lang/cem/libcc.ansi/headers/headers/stdlib.h
+cp lang/cem/libcc.ansi/headers/sys/times.h ${BUILD}/obj/lang/cem/libcc.ansi/headers/headers/sys/times.h
+cp lang/cem/libcc.ansi/headers/limits.h ${BUILD}/obj/lang/cem/libcc.ansi/headers/headers/limits.h
+cp lang/cem/libcc.ansi/headers/string.h ${BUILD}/obj/lang/cem/libcc.ansi/headers/headers/string.h
+cp lang/cem/libcc.ansi/headers/iso646.h ${BUILD}/obj/lang/cem/libcc.ansi/headers/headers/iso646.h
+cp lang/cem/libcc.ansi/headers/stdbool.h ${BUILD}/obj/lang/cem/libcc.ansi/headers/headers/stdbool.h
+cp lang/cem/libcc.ansi/headers/stdint.h ${BUILD}/obj/lang/cem/libcc.ansi/headers/headers/stdint.h
+cp lang/cem/libcc.ansi/headers/unistd.h ${BUILD}/obj/lang/cem/libcc.ansi/headers/headers/unistd.h
+cp lang/cem/libcc.ansi/headers/setjmp.h ${BUILD}/obj/lang/cem/libcc.ansi/headers/headers/setjmp.h
+cp lang/cem/libcc.ansi/headers/float.h ${BUILD}/obj/lang/cem/libcc.ansi/headers/headers/float.h
+cp lang/cem/libcc.ansi/headers/fcntl.h ${BUILD}/obj/lang/cem/libcc.ansi/headers/headers/fcntl.h
+cp lang/cem/libcc.ansi/headers/math.h ${BUILD}/obj/lang/cem/libcc.ansi/headers/headers/math.h
+mkdir -p ${BUILD}/obj/plat/cpmz80/include/headers/ack ${BUILD}/obj/plat/cpmz80/include/headers/sys ${BUILD}/obj/plat/cpmz80/include/headers
+echo plat/cpmz80/include+headers
+cp plat/cpmz80/include/ack/plat.h ${BUILD}/obj/plat/cpmz80/include/headers/ack/plat.h
+cp plat/cpmz80/include/sys/types.h ${BUILD}/obj/plat/cpmz80/include/headers/sys/types.h
+cp plat/cpmz80/include/cpm.h ${BUILD}/obj/plat/cpmz80/include/headers/cpm.h
+mkdir -p ${BUILD}/obj/plat/cpmz80/libsys/lib/brk
+echo plat/cpmz80/libsys+lib/brk
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/plat/cpmz80/libsys/lib/brk/brk.o plat/cpmz80/libsys/brk.c -I${BUILD}/obj/lang/cem/libcc.ansi/headers/headers -I${BUILD}/obj/plat/cpmz80/include/headers -O6
+mkdir -p ${BUILD}/obj/plat/cpmz80/libsys/lib/close
+echo plat/cpmz80/libsys+lib/close
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/plat/cpmz80/libsys/lib/close/close.o plat/cpmz80/libsys/close.c -I${BUILD}/obj/lang/cem/libcc.ansi/headers/headers -I${BUILD}/obj/plat/cpmz80/include/headers -O6
+mkdir -p ${BUILD}/obj/plat/cpmz80/libsys/lib/creat
+echo plat/cpmz80/libsys+lib/creat
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/plat/cpmz80/libsys/lib/creat/creat.o plat/cpmz80/libsys/creat.c -I${BUILD}/obj/lang/cem/libcc.ansi/headers/headers -I${BUILD}/obj/plat/cpmz80/include/headers -O6
+mkdir -p ${BUILD}/obj/plat/cpmz80/libsys/lib/getpid
+echo plat/cpmz80/libsys+lib/getpid
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/plat/cpmz80/libsys/lib/getpid/getpid.o plat/cpmz80/libsys/getpid.c -I${BUILD}/obj/lang/cem/libcc.ansi/headers/headers -I${BUILD}/obj/plat/cpmz80/include/headers -O6
+mkdir -p ${BUILD}/obj/plat/cpmz80/libsys/lib/isatty
+echo plat/cpmz80/libsys+lib/isatty
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/plat/cpmz80/libsys/lib/isatty/isatty.o plat/cpmz80/libsys/isatty.c -I${BUILD}/obj/lang/cem/libcc.ansi/headers/headers -I${BUILD}/obj/plat/cpmz80/include/headers -O6
+mkdir -p ${BUILD}/obj/plat/cpmz80/libsys/lib/kill
+echo plat/cpmz80/libsys+lib/kill
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/plat/cpmz80/libsys/lib/kill/kill.o plat/cpmz80/libsys/kill.c -I${BUILD}/obj/lang/cem/libcc.ansi/headers/headers -I${BUILD}/obj/plat/cpmz80/include/headers -O6
+mkdir -p ${BUILD}/obj/plat/cpmz80/libsys/lib/lseek
+echo plat/cpmz80/libsys+lib/lseek
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/plat/cpmz80/libsys/lib/lseek/lseek.o plat/cpmz80/libsys/lseek.c -I${BUILD}/obj/lang/cem/libcc.ansi/headers/headers -I${BUILD}/obj/plat/cpmz80/include/headers -O6
+mkdir -p ${BUILD}/obj/plat/cpmz80/libsys/lib/open
+echo plat/cpmz80/libsys+lib/open
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/plat/cpmz80/libsys/lib/open/open.o plat/cpmz80/libsys/open.c -I${BUILD}/obj/lang/cem/libcc.ansi/headers/headers -I${BUILD}/obj/plat/cpmz80/include/headers -O6
+mkdir -p ${BUILD}/obj/plat/cpmz80/libsys/lib/read
+echo plat/cpmz80/libsys+lib/read
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/plat/cpmz80/libsys/lib/read/read.o plat/cpmz80/libsys/read.c -I${BUILD}/obj/lang/cem/libcc.ansi/headers/headers -I${BUILD}/obj/plat/cpmz80/include/headers -O6
+mkdir -p ${BUILD}/obj/plat/cpmz80/libsys/lib/signal
+echo plat/cpmz80/libsys+lib/signal
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/plat/cpmz80/libsys/lib/signal/signal.o plat/cpmz80/libsys/signal.c -I${BUILD}/obj/lang/cem/libcc.ansi/headers/headers -I${BUILD}/obj/plat/cpmz80/include/headers -O6
+mkdir -p ${BUILD}/obj/plat/cpmz80/libsys/lib/time
+echo plat/cpmz80/libsys+lib/time
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/plat/cpmz80/libsys/lib/time/time.o plat/cpmz80/libsys/time.c -I${BUILD}/obj/lang/cem/libcc.ansi/headers/headers -I${BUILD}/obj/plat/cpmz80/include/headers -O6
+mkdir -p ${BUILD}/obj/plat/cpmz80/libsys/lib/write
+echo plat/cpmz80/libsys+lib/write
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/plat/cpmz80/libsys/lib/write/write.o plat/cpmz80/libsys/write.c -I${BUILD}/obj/lang/cem/libcc.ansi/headers/headers -I${BUILD}/obj/plat/cpmz80/include/headers -O6
+mkdir -p ${BUILD}/obj/plat/cpmz80/libsys/lib/_bdos
+echo plat/cpmz80/libsys+lib/_bdos
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/plat/cpmz80/libsys/lib/_bdos/_bdos.o plat/cpmz80/libsys/_bdos.s -I${BUILD}/obj/lang/cem/libcc.ansi/headers/headers -I${BUILD}/obj/plat/cpmz80/include/headers -O6
+mkdir -p ${BUILD}/obj/plat/cpmz80/libsys/lib/_hol0
+echo plat/cpmz80/libsys+lib/_hol0
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/plat/cpmz80/libsys/lib/_hol0/_hol0.o plat/cpmz80/libsys/_hol0.s -I${BUILD}/obj/lang/cem/libcc.ansi/headers/headers -I${BUILD}/obj/plat/cpmz80/include/headers -O6
+mkdir -p ${BUILD}/obj/plat/cpmz80/libsys/lib/_inn2
+echo plat/cpmz80/libsys+lib/_inn2
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/plat/cpmz80/libsys/lib/_inn2/_inn2.o plat/cpmz80/libsys/_inn2.s -I${BUILD}/obj/lang/cem/libcc.ansi/headers/headers -I${BUILD}/obj/plat/cpmz80/include/headers -O6
+mkdir -p ${BUILD}/obj/plat/cpmz80/libsys/lib/_trap
+echo plat/cpmz80/libsys+lib/_trap
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/plat/cpmz80/libsys/lib/_trap/_trap.o plat/cpmz80/libsys/_trap.s -I${BUILD}/obj/lang/cem/libcc.ansi/headers/headers -I${BUILD}/obj/plat/cpmz80/include/headers -O6
+mkdir -p ${BUILD}/obj/plat/cpmz80/libsys/lib/errno
+echo plat/cpmz80/libsys+lib/errno
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/plat/cpmz80/libsys/lib/errno/errno.o plat/cpmz80/libsys/errno.s -I${BUILD}/obj/lang/cem/libcc.ansi/headers/headers -I${BUILD}/obj/plat/cpmz80/include/headers -O6
+mkdir -p ${BUILD}/obj/plat/cpmz80/libsys/lib
+echo plat/cpmz80/libsys+lib
+rm -f ${BUILD}/obj/plat/cpmz80/libsys/lib/lib.a
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/aal qc ${BUILD}/obj/plat/cpmz80/libsys/lib/lib.a ${BUILD}/obj/plat/cpmz80/libsys/lib/brk/brk.o ${BUILD}/obj/plat/cpmz80/libsys/lib/close/close.o ${BUILD}/obj/plat/cpmz80/libsys/lib/creat/creat.o ${BUILD}/obj/plat/cpmz80/libsys/lib/getpid/getpid.o ${BUILD}/obj/plat/cpmz80/libsys/lib/isatty/isatty.o ${BUILD}/obj/plat/cpmz80/libsys/lib/kill/kill.o ${BUILD}/obj/plat/cpmz80/libsys/lib/lseek/lseek.o ${BUILD}/obj/plat/cpmz80/libsys/lib/open/open.o ${BUILD}/obj/plat/cpmz80/libsys/lib/read/read.o ${BUILD}/obj/plat/cpmz80/libsys/lib/signal/signal.o ${BUILD}/obj/plat/cpmz80/libsys/lib/time/time.o ${BUILD}/obj/plat/cpmz80/libsys/lib/write/write.o ${BUILD}/obj/plat/cpmz80/libsys/lib/_bdos/_bdos.o ${BUILD}/obj/plat/cpmz80/libsys/lib/_hol0/_hol0.o ${BUILD}/obj/plat/cpmz80/libsys/lib/_inn2/_inn2.o ${BUILD}/obj/plat/cpmz80/libsys/lib/_trap/_trap.o ${BUILD}/obj/plat/cpmz80/libsys/lib/errno/errno.o
+mkdir -p ${BUILD}/obj/plat/cpmz80/boot
+echo plat/cpmz80+boot
+ACKDIR=${BUILD}/staging ${BUILD}/staging/bin/ack -mcpmz80 -c.o -o ${BUILD}/obj/plat/cpmz80/boot/boot.o plat/cpmz80/boot.s  -O6 -DUSE_I80_RSTS
+mkdir -p ${BUILD}/staging/share/ack/cpmz80
+echo plat/cpmz80+pkg
+cp ${BUILD}/obj/plat/cpmz80/libsys/lib/lib.a ${BUILD}/staging/share/ack/cpmz80/libsys.a
+cp ${BUILD}/obj/plat/cpmz80/boot/boot.o ${BUILD}/staging/share/ack/cpmz80/boot.o
+echo +ack
index 81e86b5..238a0f7 100644 (file)
@@ -599,7 +599,7 @@ end
 -----------------------------------------------------------------------------
 
 local function install_make_emitter()
-       emit("hide = @\n")
+       --emit("hide = @\n")
 
        function emitter:var(name, value)
                -- Don't let emit insert spaces.
index 3dd62d5..fc624b3 100644 (file)
@@ -4,7 +4,7 @@ include("plat/build.lua")
 local byte_order = "mach/i86/libfp/byte_order.h"
 
 -- For now, only cpm uses software floating-point.
-for _, plat in ipairs({"cpm"}) do
+for _, plat in ipairs({"cpm", "cpmz80"}) do
        local edits = {}
        for _, src in fpairs("./*.c", "./*.e") do
 
diff --git a/mach/z80/libem/build.lua b/mach/z80/libem/build.lua
new file mode 100644 (file)
index 0000000..3fec3ed
--- /dev/null
@@ -0,0 +1,68 @@
+--local generated = {}
+--
+--definerule("generate",
+--     {
+--             body = { type="string" },
+--             offset = { type="object" },
+--     },
+--     function(e)
+--             return normalrule {
+--                     name = e.name,
+--                     ins = { "./generate.sh", "./"..e.body },
+--                     outleaves = { e.name..".s" },
+--                     commands = {
+--                             "%{ins[1]} "..e.body.." "..e.offset.." > %{outs}"
+--                     }
+--             }
+--     end
+--)
+--             
+--for i = 1, 128 do
+--     generated[#generated+1] = generate {
+--             name = "fload"..i,
+--             body = "fload.h",
+--             offset = i
+--     }
+--
+--     generated[#generated+1] = generate {
+--             name = "floadn"..i,
+--             body = "floadn.h",
+--             offset = i
+--     }
+--
+--     generated[#generated+1] = generate {
+--             name = "fstore"..i,
+--             body = "fstore.h",
+--             offset = i
+--     }
+--
+--     generated[#generated+1] = generate {
+--             name = "fstoren"..i,
+--             body = "fstoren.h",
+--             offset = i
+--     }
+--
+--     generated[#generated+1] = generate {
+--             name = "faddr"..i,
+--             body = "faddr.h",
+--             offset = i
+--     }
+--
+--     generated[#generated+1] = generate {
+--             name = "faddrn"..i,
+--             body = "faddrn.h",
+--             offset = i
+--     }
+--end
+
+for _, plat in ipairs(vars.plats) do
+       acklibrary {
+               name = "lib_"..plat,
+               srcs = { "./*.s" }, --concat("./*.s", generated),
+               vars = {
+                       plat = plat,
+                       ["+ackcflags"] = {"-Imach/z80/libem"}
+               },
+       }
+end
+
diff --git a/mach/z80/libend/build.lua b/mach/z80/libend/build.lua
new file mode 100644 (file)
index 0000000..ca5a13c
--- /dev/null
@@ -0,0 +1,8 @@
+for _, plat in ipairs(vars.plats) do
+       acklibrary {
+               name = "lib_"..plat,
+               srcs = { "./*.s" },
+               vars = { plat = plat },
+       }
+end
+
index 017628a..d1689f4 100644 (file)
@@ -20,16 +20,16 @@ definerule("ackfile",
                        name = e.name,
                        srcs = e.srcs,
                        deps = {
-                               "lang/b/compiler+pkg",
-                               "lang/basic/src+pkg",
+                               --"lang/b/compiler+pkg",
+                               --"lang/basic/src+pkg",
                                "lang/cem/cemcom.ansi+pkg",
                                "lang/cem/cpp.ansi+pkg",
-                               "lang/m2/comp+pkg",
-                               "lang/pc/comp+pkg",
+                               --"lang/m2/comp+pkg",
+                               --"lang/pc/comp+pkg",
                                "plat/"..plat.."+tools",
                                "util/ack+pkg",
-                               "util/ego+pkg",
-                               "util/misc+pkg",
+                               --"util/ego+pkg",
+                               --"util/misc+pkg",
                                e.deps
                        },
                        suffix = suffix,
@@ -90,7 +90,7 @@ definerule("ackprogram",
                        deps = {
                                platstamp,
                                "util/ack+pkg",
-                               "util/led+pkg",
+                               --"util/led+pkg",
                                e.deps
                        },
                        _clibrary = acklibrary,
@@ -109,18 +109,18 @@ definerule("build_plat_libs",
        },
        function(e)
                local installmap = {
-                       "lang/b/lib+pkg_"..e.plat,
-                       "lang/basic/lib+pkg_"..e.plat,
+                       --"lang/b/lib+pkg_"..e.plat,
+                       --"lang/basic/lib+pkg_"..e.plat,
                        "lang/cem/libcc.ansi+pkg_"..e.plat,
-                       "lang/m2/libm2+pkg_"..e.plat,
-                       "lang/pc/libpc+pkg_"..e.plat,
-                       "lang/b/lib+pkg_"..e.plat,
+                       --"lang/m2/libm2+pkg_"..e.plat,
+                       --"lang/pc/libpc+pkg_"..e.plat,
+                       --"lang/b/lib+pkg_"..e.plat,
                        ["$(PLATIND)/"..e.plat.."/libem.a"] = "mach/"..e.arch.."/libem+lib_"..e.plat,
                        ["$(PLATIND)/"..e.plat.."/libend.a"] = "mach/"..e.arch.."/libend+lib_"..e.plat,
                }
 
                -- For now, only cpm uses software floating-point.
-               if e.plat == "cpm" then
+               if e.plat == "cpm" or e.plat == "cpmz80" then
                        installmap[#installmap+1] = "mach/proto/fp+pkg_"..e.plat
                end
 
diff --git a/plat/cpmz80/README b/plat/cpmz80/README
new file mode 100644 (file)
index 0000000..6a08ee3
--- /dev/null
@@ -0,0 +1,37 @@
+# $Source$
+# $State$
+# $Revision$
+
+
+The cpm platform
+=================
+
+cpm is an z80-based BSP that generates CP/M executables that can be run on any
+CP/M-compliant machine.
+
+This port only implements a very limited set of syscalls --- and most of those
+are stubs required to make the demo apps link. File descriptors 0, 1 and 2
+represent the console. Each read() blocks and reads an entire line (it can't
+read part of a line) from the CP/M line editor, then appends \n. Each write()
+converts \n to \r\n. The line editor and \n conversion can't be turned off.
+
+There's a special, if rather minimilist, interface to give applications access
+to CP/M. See include/cpm.h for details.
+
+Link with `ack -fp` to enable software floating point. Otherwise, attempts to
+use floating-point numbers will cause the program to terminate.
+
+
+Example command line
+====================
+
+ack -mcpm -O -o cpm.com examples/paranoia.c
+
+The file cpm.com can then be run.
+
+(Although note that Paranoia is very big, and you'll need a CP/M machine with
+lots of memory for it to fit. Which it does, just.)
+
+
+David Given
+dg@cowlark.com
diff --git a/plat/cpmz80/boot.s b/plat/cpmz80/boot.s
new file mode 100644 (file)
index 0000000..e1c21aa
--- /dev/null
@@ -0,0 +1,172 @@
+#
+! $Source$
+! $State$
+! $Revision$
+
+! Declare segments (the order is important).
+
+.sect .text
+.sect .rom
+.sect .data
+.sect .bss
+
+MAX_ARGV = 8
+
+.sect .bss
+STACKSIZE = 2*1024
+.comm stack, STACKSIZE
+
+.sect .text
+begtext:
+       ! Check if bss would overlap BDOS.  We must not overwrite
+       ! BDOS and crash CP/M.  We cheat by comparing only high bytes
+       ! of each address.
+
+       ld bc, __end
+       ld a, (0x0007)
+       ld c, a         ! c = high byte of BDOS address
+       ld a, b         ! a = high byte of _end
+       cp c
+       jr nc, __exit   ! emergency exit if a >= c
+
+       ! We have to clear the bss. (argify requires it.)
+       
+       ld hl, begbss
+       ld bc, endbss
+       ld e, 0
+1:
+       ld (hl), e
+       inc hl
+       ld a, b
+       cp h
+       jr nz, 1b
+       ld a, c
+       cp l
+       jr nz, 1b
+
+       ! Set up the stack (now it's been cleared, since it's in the BSS).
+
+       ld sp, stack + STACKSIZE
+
+       ! Initialise the rsts (if desired).
+
+       #ifdef USE_I80_RSTS
+               call .rst_init
+       #endif
+
+       ! C-ify the command line at 0x0080.
+       
+       ld hl, 0x0080
+       ld a, (hl)              ! a = length of command line
+       cp 0x7F                 ! 127-byte command lines...
+       jr nz, 1f
+       dec a                   ! ...lose the last character 
+1:
+       add a, 0x81             ! write a 0 at 0x0081+length
+       ld l, a
+       ld (hl), h
+       
+       ! Now argify it.
+       
+       ld bc, 0x0081           ! bc = command line pointer
+       ld hl, argv             ! hl = argv pointer
+
+loop_of_argify:
+       ld a, (bc)              ! a = next character
+       or a                    ! check for end of string
+       jr z, end_of_argify
+       cp ' '                  ! scan for non-space
+       jr z, 2f
+
+       ld (hl), c              ! put next argument in argv
+       inc hl
+       ld (hl), b
+       inc hl
+
+       ld a,(argc)             ! increment argc
+       inc a
+       ld (argc), a
+       cp MAX_ARGV             ! exit loop if argv is full
+       jr z, end_of_argify
+
+1:     inc bc                  ! scan for space
+       ld a, (bc)
+       or a
+       jr z, end_of_argify
+       cp ' '
+       jr nz, 1b
+
+       xor a                   ! replace the space with a '\0'
+       ld (bc), a
+
+2:     inc bc
+       jr loop_of_argify
+end_of_argify:
+
+       ! Add the fake parameter for the program name.
+       
+       ld hl, progname
+       ld (argv0), hl
+       ld hl, argc
+       inc (hl)
+       
+       ! Push the main() arguments and go.
+       
+       ld hl, envp
+       push hl
+       ld hl, argv0
+       push hl
+       ld hl, (argc)           ! slightly evil
+       ld h, 0
+       push hl
+       call __m_a_i_n
+       ! FALLTHROUGH
+
+! Emergency exit routine.
+
+.define EXIT, __exit
+EXIT:
+__exit:
+       rst 0
+       
+! Define symbols at the beginning of our various segments, so that we can find
+! them. (Except .text, which has already been done.)
+
+.define begtext, begdata, begbss
+.sect .data;       begdata:
+.sect .rom;        begrom:
+.sect .bss;        begbss:
+
+! Some magic data. All EM systems need these.
+
+.define .trppc, .ignmask, _errno
+.comm .trppc, 2
+.comm .ignmask, 2
+.comm _errno, 2
+
+! Used to store the argv array.
+
+argc: .space 1          ! number of args
+argv0: .space 2         ! always points at progname
+argv: .space 2*MAX_ARGV ! argv array (must be after argv0)
+envp: .space 2          ! envp array (always empty, must be after argv)
+
+! These are used specifically by the z80 code generator.
+
+.define .trapproc, .retadr, .retadr1
+.define .bcreg, .areg
+.define .tmp1, .fra, block1, block2, block3
+
+.comm .trapproc, 2
+.comm .retadr, 2        ! used to save return address
+.comm .retadr1, 2       ! reserve
+.comm .bcreg, 2
+.comm .areg, 1
+.comm .tmp1, 2
+.comm .fra, 8           ! 8 bytes function return area
+block1: .space 4        ! used by 32 bits divide and
+block2: .space 4        ! multiply routines
+block3: .space 4        ! must be contiguous (.comm doesn't guarantee this)
+
+.sect .rom
+progname: .asciz 'ACKCPM'
diff --git a/plat/cpmz80/build-pkg.lua b/plat/cpmz80/build-pkg.lua
new file mode 100644 (file)
index 0000000..e631bac
--- /dev/null
@@ -0,0 +1,29 @@
+include("plat/build.lua")
+include("lang/build.lua")
+
+ackfile {
+       name = "boot",
+       srcs = { "./boot.s" },
+       vars = {
+               plat = "cpmz80",
+               ["+ackcflags"] = "-DUSE_I80_RSTS",
+       }
+}
+
+build_plat_libs {
+       name = "libs",
+       arch = "z80",
+       plat = "cpmz80",
+}
+
+installable {
+       name = "pkg",
+       map = {
+               "+tools",
+               "+libs",
+        "./include+pkg",
+               ["$(PLATIND)/cpmz80/boot.o"] = "+boot",
+        ["$(PLATIND)/cpmz80/libsys.a"] = "./libsys+lib",
+       }
+}
+
diff --git a/plat/cpmz80/build-tools.lua b/plat/cpmz80/build-tools.lua
new file mode 100644 (file)
index 0000000..aa88ee3
--- /dev/null
@@ -0,0 +1,35 @@
+include("plat/build.lua")
+
+build_as {
+       name = "as",
+       arch = "z80",
+}
+
+--build_ncg {
+--     name = "ncg",
+--     arch = "z80",
+--     vars = {
+--             ["+cflags"] = "-DUSE_I80_RSTS"
+--     }
+--}
+build_cg {
+       name = "cg",
+       arch = "z80",
+}
+
+build_top {
+       name = "top",
+       arch = "z80",
+}
+
+return installable {
+       name = "tools",
+       map = {
+               ["$(PLATDEP)/cpmz80/as"] = "+as",
+               --["$(PLATDEP)/cpmz80/ncg"] = "+ncg",
+               ["$(PLATDEP)/cpmz80/cg"] = "+cg",
+               ["$(PLATDEP)/cpmz80/top"] = "+top",
+               ["$(PLATIND)/descr/cpmz80"] = "./descr",
+               "util/opt+pkg",
+       }
+}
diff --git a/plat/cpmz80/descr b/plat/cpmz80/descr
new file mode 100644 (file)
index 0000000..3b34485
--- /dev/null
@@ -0,0 +1,89 @@
+# $Source$
+# $State$
+# $Revision$
+
+var w=2
+var wa=1
+var p=2
+var pa=1
+var s=2
+var sa=1
+var l=4
+var la=1
+var f=4
+var fa=1
+var d=8
+var da=1
+var x=8
+var xa=1
+var ARCH=z80
+var PLATFORM=cpmz80
+var PLATFORMDIR={EM}/share/ack/{PLATFORM}
+var CPP_F=-D__unix
+var ALIGN=-a0:1 -a1:1 -a2:1 -a3:1 -b0:0x0100
+var MACHOPT_F=-m8
+
+# Override the setting in fe so that files compiled for linux386 can see
+# the platform-specific headers.
+
+var C_INCLUDES=-I{EM}/share/ack/{PLATFORM}/include -I{EM}/share/ack/include/ansi
+
+name be
+       from .m.g
+       to .s
+       program {EM}/lib/ack/{PLATFORM}/cg
+       args <
+       stdout
+       need .e
+end
+name asopt
+       from .s
+       to .so
+       program {EM}/lib/ack/{PLATFORM}/top
+       args
+       optimizer
+       stdin
+       stdout
+end
+name as
+       from .s.so
+       to .o
+       program {EM}/lib/ack/{PLATFORM}/as
+       args - -o > <
+       prep cond
+end
+name led
+       from .o.a
+       to .out
+       program {EM}/lib/ack/em_led
+       mapflag -l* LNAME={PLATFORMDIR}/lib*
+       mapflag -i SEPID=-b1:0
+       mapflag -fp FLOATS={PLATFORMDIR}/libfp.a
+       args {ALIGN} {SEPID?} \
+               ({RTS}:.b=-u _i_main) \
+           (.e:{HEAD}={PLATFORMDIR}/boot.o) \
+               ({RTS}:.ocm.bas.b={PLATFORMDIR}/c-ansi.o) \
+               ({RTS}:.c={PLATFORMDIR}/c-ansi.o) \
+               ({RTS}:.mod={PLATFORMDIR}/modula2.o) \
+               ({RTS}:.p={PLATFORMDIR}/pascal.o) \
+               -o > < \
+               (.p:{TAIL}={PLATFORMDIR}/libpascal.a) \
+               (.b:{TAIL}={PLATFORMDIR}/libb.a) \
+               (.bas:{TAIL}={PLATFORMDIR}/libbasic.a) \
+               (.mod:{TAIL}={PLATFORMDIR}/libmodula2.a) \
+               (.ocm:{TAIL}={PLATFORMDIR}/liboccam.a) \
+               (.ocm.bas.mod.b.c.p:{TAIL}={PLATFORMDIR}/libc.a) \
+               {FLOATS?} \
+               (.e:{TAIL}={PLATFORMDIR}/libem.a \
+                          {PLATFORMDIR}/libsys.a \
+                                  {PLATFORMDIR}/libem.a \
+                          {PLATFORMDIR}/libend.a)
+       linker
+end
+name cv
+       from .out
+       to .img
+       program {EM}/bin/aslod
+       args < >
+       outfile cpmz80.com
+end
diff --git a/plat/cpmz80/emu/bdos.s b/plat/cpmz80/emu/bdos.s
new file mode 100644 (file)
index 0000000..a2a5948
--- /dev/null
@@ -0,0 +1,116 @@
+#\r
+.sect .text\r
+.sect .rom\r
+.sect .data\r
+.sect .bss\r
+\r
+.sect .text\r
+\r
+bdos: ! BDOS entry point\r
+       out 0xff\r
+       ora a\r
+       ret\r
+\r
+COLDSTART: ! system startup entry point --- this needs to be four bytes after FBASE.\r
+       jmp boot            ! 0: Cold start routine\r
+bios:\r
+       jmp wboot       ! 1: Warm boot - reload command processor\r
+       jmp const       ! 2: Console status\r
+       jmp conin       ! 3: Console input\r
+       jmp conout      ! 4: Console output\r
+       jmp list            ! 5: Printer output\r
+       jmp punch       ! 6: Paper tape punch output\r
+    jmp reader ! 7: Paper tape reader input\r
+       jmp home            ! 8: Move disc head to track 0\r
+       jmp seldsk      ! 9: Select disc drive\r
+       jmp settrk      !10: Set track number\r
+       jmp setsec      !11: Set sector number\r
+       jmp setdma      !12: Set DMA address\r
+       jmp read     !13: Read a sector\r
+       jmp write       !14: Write a sector\r
+\r
+boot:\r
+       xra a\r
+       sta 3 ! iobyte\r
+       sta 4 ! drive\r
+       ! falls through\r
+wboot:\r
+       mvi a, 0xc3 ! jmp\r
+       sta 0\r
+       sta 5\r
+\r
+       lxi h, bios\r
+       shld 1\r
+\r
+       lxi h, bdos\r
+       shld 6\r
+\r
+       lda 4 ! get the current drive/user\r
+       mov c, a\r
+       out 1\r
+\r
+const:\r
+       out 2\r
+       ora a\r
+       ret\r
+\r
+conin:\r
+       out 3\r
+       ora a\r
+       ret\r
+\r
+conout:\r
+       out 4\r
+       ora a\r
+       ret\r
+\r
+list:\r
+       out 5\r
+       ora a\r
+       ret\r
+\r
+punch:\r
+       out 6\r
+       ora a\r
+       ret\r
+\r
+reader:\r
+       out 7\r
+       ora a\r
+       ret\r
+\r
+home:\r
+       out 8\r
+       ora a\r
+       ret\r
+\r
+seldsk:\r
+       out 9\r
+       ora a\r
+       ret\r
+\r
+settrk:\r
+       out 10\r
+       ora a\r
+       ret\r
+\r
+setsec:\r
+       out 11\r
+       ora a\r
+       ret\r
+\r
+setdma:\r
+       out 12\r
+       ora a\r
+       ret\r
+\r
+read:\r
+       out 13\r
+       ora a\r
+       ret\r
+\r
+write:\r
+       out 14\r
+       ora a\r
+       ret\r
+\r
diff --git a/plat/cpmz80/emu/biosbdos.c b/plat/cpmz80/emu/biosbdos.c
new file mode 100644 (file)
index 0000000..91cb166
--- /dev/null
@@ -0,0 +1,452 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <stdint.h>
+#include <string.h>
+#include <ctype.h>
+#include <glob.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <fcntl.h>
+#include <unistd.h>
+#include <poll.h>
+#include <errno.h>
+#include "intel_8080_emulator.h"
+#include "globals.h"
+
+#define FBASE 0xff00
+#define COLDSTART (FBASE + 4) /* see bdos.asm */
+#define CBASE (FBASE - (7*1024))
+
+static uint16_t dma;
+static int exitcode = 0;
+
+struct fcb
+{
+       cpm_filename_t filename; /* includes drive */
+       uint8_t extent;
+       uint8_t s1;
+       uint8_t s2;
+       uint8_t recordcount;
+       uint8_t d[16];
+       uint8_t currentrecord;
+       uint8_t r[3];
+};
+
+static void bios_getchar(void);
+
+static uint16_t get_de(void)
+{
+       return i8080_read_reg16(DE);
+}
+
+static uint8_t get_c(void)
+{
+       return i8080_read_reg8(C);
+}
+
+static uint8_t get_d(void)
+{
+       return i8080_read_reg8(D);
+}
+
+static uint8_t get_e(void)
+{
+       return i8080_read_reg8(E);
+}
+
+static uint8_t get_a(void)
+{
+       return i8080_read_reg8(A);
+}
+
+static void set_a(uint8_t a)
+{
+       i8080_write_reg8(A, a);
+}
+       
+static void set_result(uint16_t result)
+{
+       i8080_write_reg16(HL, result);
+
+       i8080_write_reg8(A, result);
+       uint8_t f = i8080_read_reg8(FLAGS);
+       f &= ~(1<<6) & ~(1<<7);
+       if (!result)
+               f |= 1<<6;
+       if (result & 0x80)
+               f |= 1<<7;
+       i8080_write_reg8(FLAGS, f);
+
+       i8080_write_reg8(B, result);
+}
+
+void bios_coldboot(void)
+{
+       memcpy(&ram[FBASE], bdos_data, bdos_len);
+       i8080_write_reg16(PC, COLDSTART);
+}
+
+static void bios_warmboot(void)
+{
+       int word;       
+       int offset = 1;
+       dma = 0x0080;
+
+       if (!user_command_line[0])
+               fatal("running the CCP isn't supported");
+
+       static bool terminate_next_time = false;
+       if (terminate_next_time)
+               exit(exitcode);
+       terminate_next_time = true;
+
+       i8080_write_reg16(PC, 0x0100);
+
+       /* Push the magic exit code onto the stack. */
+       i8080_write_reg16(SP, FBASE-4);
+       ram[FBASE-4] = (FBASE-2) & 0xFF;
+       ram[FBASE-3] = (FBASE-2) >> 8;
+       ram[FBASE-2] = 0xD3; // out (??), a
+       ram[FBASE-1] = 0xFE; // exit emulator
+
+       int fd = open(user_command_line[0], O_RDONLY);
+       if (fd == -1)
+                       fatal("couldn't open program: %s", strerror(errno));
+       read(fd, &ram[0x0100], 0xFE00);
+       close(fd);
+
+       for (word = 1; user_command_line[word]; word++)
+       {
+               if (word > 1)
+               {
+                       ram[0x0080 + offset] = ' ';
+                       offset++;
+               }
+
+               const char* pin = user_command_line[word];
+               while (*pin)
+               {
+                       if (offset > 125)
+                               fatal("user command line too long");
+                       ram[0x0080 + offset] = toupper(*pin++);
+                       offset++;
+               }
+       }
+       ram[0x0080] = offset;
+       ram[0x0080+offset] = 0;
+}
+
+static void bios_const(void)
+{
+       struct pollfd pollfd = { 0, POLLIN, 0 };
+       poll(&pollfd, 1, 0);
+       set_a((pollfd.revents & POLLIN) ? 0xff : 0);
+}
+
+static void bios_getchar(void)
+{
+       char c = 0;
+       (void) read(0, &c, 1);
+       if (c == '\n')
+               c = '\r';
+       set_a(c);
+}
+
+static void bios_putchar(void)
+{
+       char c = get_c();
+       (void) write(1, &c, 1);
+}
+
+static void bios_entry(uint8_t bios_call)
+{
+       switch (bios_call)
+       {
+               case 0: bios_coldboot();  return;
+               case 1: bios_warmboot();  return;
+               case 2: bios_const();     return; // const
+               case 3: bios_getchar();   return; // conin
+               case 4: bios_putchar();   return; // conout
+
+               case 0xFE: exit(0); // magic emulator exit
+       }
+
+       showregs();
+       fatal("unimplemented bios entry %d", bios_call);
+}
+
+static void bdos_getchar(void)
+{
+       bios_getchar();
+       set_result(get_a());
+}
+
+static void bdos_putchar(void)
+{
+       uint8_t c = get_e();
+       (void) write(1, &c, 1);
+}
+
+static void bdos_consoleio(void)
+{
+       uint8_t c = get_e();
+       if (c == 0xff)
+       {
+               bios_const();
+               if (get_a() == 0xff)
+                       bios_getchar();
+       }
+       else
+               bdos_putchar();
+}
+
+static void bdos_printstring(void)
+{
+       uint16_t de = get_de();
+       for (;;)
+       {
+               uint8_t c = ram[de++];
+               if (c == '$')
+                       break;
+               (void) write(1, &c, 1);
+       }
+}
+
+static void bdos_consolestatus(void)
+{
+       bios_const();
+       set_result(get_a());
+}
+
+void bdos_readline(void)
+{
+       fflush(stdout);
+
+       uint16_t de = i8080_read_reg16(DE);
+       uint8_t maxcount = ram[de+0];
+       int count = read(0, &ram[de+2], maxcount);
+       if ((count > 0) && (ram[de+2+count-1] == '\n'))
+               count--;
+       ram[de+1] = count;
+       set_result(count);
+}
+
+static struct fcb* fcb_at(uint16_t address)
+{
+       struct fcb* fcb = (struct fcb*) &ram[address];
+
+       /* Autoselect the current drive. */
+       if (fcb->filename.drive == 0)
+               fcb->filename.drive = ram[4] + 1;
+
+       return fcb;
+}
+
+static struct fcb* find_fcb(void)
+{
+       return fcb_at(i8080_read_reg16(DE));
+}
+
+static int get_current_record(struct fcb* fcb)
+{
+       return (fcb->extent * 128) + fcb->currentrecord;
+}
+
+static void set_current_record(struct fcb* fcb, int record, int total)
+{
+       int extents = total / 128;
+       fcb->extent = record / 128;
+       if (fcb->extent < extents)
+               fcb->recordcount = 128;
+       else
+               fcb->recordcount = total % 128;
+       fcb->currentrecord = record % 128;
+}
+
+static void bdos_resetdisk(void)
+{
+       dma = 0x0080;
+       ram[4] = 0; /* select drive A */
+       set_result(0xff);
+}
+
+static void bdos_selectdisk(void)
+{
+       uint8_t e = get_e();
+       ram[4] = e;
+}
+
+static void bdos_getdisk(void)
+{
+       set_result(ram[4]);
+}
+
+static void bdos_openfile(void)
+{
+       struct fcb* fcb = find_fcb();
+       struct file* f = file_open(&fcb->filename);
+       if (f)
+       {
+               set_current_record(fcb, 0, file_getrecordcount(f));
+               set_result(0);
+       }
+       else
+               set_result(0xff);
+}
+
+static void bdos_makefile(void)
+{
+       struct fcb* fcb = find_fcb();
+       struct file* f = file_create(&fcb->filename);
+       if (f)
+       {
+               set_current_record(fcb, 0, 0);
+               set_result(0);
+       }
+       else
+               set_result(0xff);
+}
+
+static void bdos_closefile(void)
+{
+       struct fcb* fcb = find_fcb();
+       struct file* f = file_open(&fcb->filename);
+       if (file_getrecordcount(f) < 128)
+               file_setrecordcount(f, fcb->recordcount);
+       int result = file_close(&fcb->filename);
+       set_result(result ? 0xff : 0);
+}
+
+static void bdos_renamefile(void)
+{
+       struct fcb* srcfcb = fcb_at(i8080_read_reg16(DE));
+       struct fcb* destfcb = fcb_at(i8080_read_reg16(DE)+16);
+       int result = file_rename(&srcfcb->filename, &destfcb->filename);
+       set_result(result ? 0xff : 0);
+}
+
+static void bdos_findnext(void)
+{
+       struct fcb* fcb = (struct fcb*) &ram[dma];
+       memset(fcb, 0, sizeof(struct fcb));
+       int i = file_findnext(&fcb->filename);
+       set_result(i ? 0xff : 0);
+}
+
+static void bdos_findfirst(void)
+{
+       struct fcb* fcb = find_fcb();
+       int i = file_findfirst(&fcb->filename);
+       if (i == 0)
+               bdos_findnext();
+       else
+               set_result(i ? 0xff : 0);
+}
+
+static void bdos_deletefile(void)
+{
+       struct fcb* fcb = find_fcb();
+       int i = file_delete(&fcb->filename);
+       set_result(i ? 0xff : 0);
+}
+
+typedef int readwrite_cb(struct file* f, uint8_t* ptr, uint16_t record);
+
+static void bdos_readwritesequential(readwrite_cb* readwrite)
+{
+       struct fcb* fcb = find_fcb();
+
+       struct file* f = file_open(&fcb->filename);
+       int here = get_current_record(fcb);
+       int i = readwrite(f, &ram[dma], here);
+       set_current_record(fcb, here+1, file_getrecordcount(f));
+       if (i == -1)
+               set_result(0xff);
+       else if (i == 0)
+               set_result(1);
+       else
+               set_result(0);
+}
+
+static void bdos_readwriterandom(readwrite_cb* readwrite)
+{
+       struct fcb* fcb = find_fcb();
+
+       uint16_t record = fcb->r[0] + (fcb->r[1]<<8);
+       struct file* f = file_open(&fcb->filename);
+       int i = readwrite(f, &ram[dma], record);
+       set_current_record(fcb, record, file_getrecordcount(f));
+       if (i == -1)
+               set_result(0xff);
+       else if (i == 0)
+               set_result(1);
+       else
+               set_result(0);
+}
+
+static void bdos_filelength(void)
+{
+       struct fcb* fcb = find_fcb();
+       struct file* f = file_open(&fcb->filename);
+
+       int length = file_getrecordcount(f);
+       fcb->r[0] = length;
+       fcb->r[1] = length>>8;
+       fcb->r[2] = length>>16;
+}
+
+static void bdos_getsetuser(void)
+{
+       if (get_e() == 0xff)
+               set_result(0);
+}
+
+static void bdos_entry(uint8_t bdos_call)
+{
+       switch (bdos_call)
+       {
+               case  1: bdos_getchar();     return;
+               case  2: bdos_putchar();     return;
+               case  6: bdos_consoleio();   return;
+               case  9: bdos_printstring(); return;
+               case 10: bdos_readline();    return;
+               case 11: bdos_consolestatus(); return;
+               case 12: set_result(0x0022); return; // get CP/M version
+               case 13: bdos_resetdisk();   return; // reset disk system
+               case 14: bdos_selectdisk();  return; // select disk
+               case 15: bdos_openfile();    return;
+               case 16: bdos_closefile();   return;
+               case 17: bdos_findfirst();   return;
+               case 18: bdos_findnext();    return;
+               case 19: bdos_deletefile();  return;
+               case 20: bdos_readwritesequential(file_read);  return;
+               case 21: bdos_readwritesequential(file_write); return;
+               case 22: bdos_makefile();    return;
+               case 23: bdos_renamefile();  return;
+               case 24: set_result(0xffff); return; // get login vector
+               case 25: bdos_getdisk();     return; // get current disk
+               case 26: dma = get_de();     return; // set DMA
+               case 27: set_result(0);      return; // get allocation vector
+               case 29: set_result(0x0000); return; // get read-only vector
+               case 31: set_result(0);      return; // get disk parameter block
+               case 32: bdos_getsetuser();  return;
+               case 33: bdos_readwriterandom(file_read);  return;
+               case 34: bdos_readwriterandom(file_write); return;
+               case 35: bdos_filelength(); return;
+               case 40: bdos_readwriterandom(file_write); return;
+               case 45:                     return; // set hardware error action
+               case 108: exitcode = get_d(); return; // set exit code
+       }
+
+       showregs();
+       fatal("unimplemented bdos entry %d", bdos_call);
+}
+
+void biosbdos_entry(int syscall)
+{
+       if (syscall == 0xff)
+               bdos_entry(i8080_read_reg16(BC));
+       else
+               bios_entry(syscall);
+}
+
diff --git a/plat/cpmz80/emu/build.lua b/plat/cpmz80/emu/build.lua
new file mode 100644 (file)
index 0000000..ce831aa
--- /dev/null
@@ -0,0 +1,44 @@
+ackfile {
+       name = "bdos_o",
+       srcs = { "./*.s" },
+       vars = { plat = "cpm" },
+}
+
+normalrule {
+       name = "bdos_out",
+       ins = {
+               "util/led+led",
+               "+bdos_o",
+       },
+       outleaves = { "bdos.out" },
+       commands = { "%{ins[1]} -b0:0xff00 %{ins[2]} -o %{outs[1]}" }
+}
+
+normalrule {
+       name = "bdos_img",
+       ins = {
+               "util/amisc+aslod",
+               "+bdos_out",
+       },
+       outleaves = { "bdos.img" },
+       commands = { "%{ins[1]} %{ins[2]} %{outs[1]}" }
+}
+
+normalrule {
+       name = "bdos_c",
+       ins = {
+               "util/cmisc+objectify",
+               "+bdos_img",
+       },
+       outleaves = { "bdos.c" },
+       commands = { "%{ins[1]} bdos < %{ins[2]} > %{outs[1]}" }
+}
+
+cprogram {
+       name = "emu",
+       srcs = {
+               "+bdos_c",
+               "./*.c"
+       },
+}
+
diff --git a/plat/cpmz80/emu/dis8080.c b/plat/cpmz80/emu/dis8080.c
new file mode 100644 (file)
index 0000000..a667c63
--- /dev/null
@@ -0,0 +1,378 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <stdint.h>
+#include <string.h>
+#include "intel_8080_emulator.h"
+#include "dis8080.h"
+
+enum
+{
+    NOTHING,
+    CONST8,
+    CONST16,
+};
+
+struct insn
+{
+    const char* name;
+    int operand;
+};
+
+static struct insn insns[0x100] =
+{
+    /* 00-07 */
+    { "nop",            NOTHING },
+    { "lxi b, 0x%04x",  CONST16 },
+    { "stax b",         NOTHING },
+    { "inx b",          NOTHING },
+    { "inr b",          NOTHING },
+    { "dcr b",          NOTHING },
+    { "mvi b, 0x%02x",  CONST8 },
+    { "rlc",            NOTHING },
+
+    /* 08-0f */
+    { "undef",          NOTHING },
+    { "dad b",          NOTHING },
+    { "ldax b",         NOTHING },
+    { "dcx b",          NOTHING },
+    { "inr c",          NOTHING },
+    { "dcr c",          NOTHING },
+    { "mvi c, 0x%02x",  CONST8 },
+    { "rrc",            NOTHING },
+
+    /* 10-17 */
+    { "nop",            NOTHING },
+    { "lxi d, 0x%04x",  CONST16 },
+    { "stax d",         NOTHING },
+    { "inx d",          NOTHING },
+    { "inr d",          NOTHING },
+    { "dcr d",          NOTHING },
+    { "mvi d, 0x%02x",  CONST8 },
+    { "ral",            NOTHING },
+
+    /* 18-1f */
+    { "undef",          NOTHING },
+    { "dad d",          NOTHING },
+    { "ldax d",         NOTHING },
+    { "dcx d",          NOTHING },
+    { "inr e",          NOTHING },
+    { "dcr e",          NOTHING },
+    { "mvi e, 0x%02x",  CONST8 },
+    { "rar",            NOTHING },
+
+    /* 20-27 */
+    { "nop",            NOTHING },
+    { "lxi h, 0x%04x",  CONST16 },
+    { "shld 0x%04x",    CONST16 },
+    { "inx h",          NOTHING },
+    { "inr h",          NOTHING },
+    { "dcr h",          NOTHING },
+    { "mvi h, 0x%02x",  CONST8 },
+    { "daa",            NOTHING },
+
+    /* 28-2f */
+    { "undef",          NOTHING },
+    { "dad h",          NOTHING },
+    { "lhld 0x%04x",    CONST16 },
+    { "dcx h",          NOTHING },
+    { "inr l",          NOTHING },
+    { "dcr l",          NOTHING },
+    { "mvi l, 0x%02x",  CONST8 },
+    { "cma",            NOTHING },
+
+    /* 30-37 */
+    { "nop",            NOTHING },
+    { "lxi sp, 0x%04x", CONST16 },
+    { "sta 0x%04x",     CONST16 },
+    { "inx sp",         NOTHING },
+    { "inr m",          NOTHING },
+    { "dcr m",          NOTHING },
+    { "mvi m, 0x%02x",  CONST8 },
+    { "stc",            NOTHING },
+
+    /* 38-3f */
+    { "undef",         NOTHING },
+    { "dad sp",        NOTHING },
+    { "lda 0x%04x",    CONST16 },
+    { "dcx sp",        NOTHING },
+    { "inr a",         NOTHING },
+    { "dcr a",         NOTHING },
+    { "mvi a, 0x%02x", CONST8 },
+    { "cmc",           NOTHING },
+
+    /* 40-47 */
+    { "mov b, b",      NOTHING },
+    { "mov b, c",      NOTHING },
+    { "mov b, d",      NOTHING },
+    { "mov b, e",      NOTHING },
+    { "mov b, h",      NOTHING },
+    { "mov b, l",      NOTHING },
+    { "mov b, m",      NOTHING },
+    { "mov b, a",      NOTHING },
+
+    /* 47-4f */
+    { "mov c, b",      NOTHING },
+    { "mov c, c",      NOTHING },
+    { "mov c, d",      NOTHING },
+    { "mov c, e",      NOTHING },
+    { "mov c, h",      NOTHING },
+    { "mov c, l",      NOTHING },
+    { "mov c, m",      NOTHING },
+    { "mov c, a",      NOTHING },
+
+    /* 50-57 */
+    { "mov d, b",      NOTHING },
+    { "mov d, c",      NOTHING },
+    { "mov d, d",      NOTHING },
+    { "mov d, e",      NOTHING },
+    { "mov d, h",      NOTHING },
+    { "mov d, l",      NOTHING },
+    { "mov d, m",      NOTHING },
+    { "mov d, a",      NOTHING },
+
+    /* 57-5f */
+    { "mov e, b",      NOTHING },
+    { "mov e, c",      NOTHING },
+    { "mov e, d",      NOTHING },
+    { "mov e, e",      NOTHING },
+    { "mov e, h",      NOTHING },
+    { "mov e, l",      NOTHING },
+    { "mov e, m",      NOTHING },
+    { "mov e, a",      NOTHING },
+
+    /* 60-67 */
+    { "mov h, b",      NOTHING },
+    { "mov h, c",      NOTHING },
+    { "mov h, d",      NOTHING },
+    { "mov h, e",      NOTHING },
+    { "mov h, h",      NOTHING },
+    { "mov h, l",      NOTHING },
+    { "mov h, m",      NOTHING },
+    { "mov h, a",      NOTHING },
+
+    /* 67-6f */
+    { "mov l, b",      NOTHING },
+    { "mov l, c",      NOTHING },
+    { "mov l, d",      NOTHING },
+    { "mov l, e",      NOTHING },
+    { "mov l, h",      NOTHING },
+    { "mov l, l",      NOTHING },
+    { "mov l, m",      NOTHING },
+    { "mov l, a",      NOTHING },
+
+    /* 70-77 */
+    { "mov m, b",      NOTHING },
+    { "mov m, c",      NOTHING },
+    { "mov m, d",      NOTHING },
+    { "mov m, e",      NOTHING },
+    { "mov m, h",      NOTHING },
+    { "mov m, l",      NOTHING },
+    { "mov m, m",      NOTHING },
+    { "hlt",           NOTHING },
+
+    /* 77-7f */
+    { "mov a, b",      NOTHING },
+    { "mov a, c",      NOTHING },
+    { "mov a, d",      NOTHING },
+    { "mov a, e",      NOTHING },
+    { "mov a, h",      NOTHING },
+    { "mov a, l",      NOTHING },
+    { "mov a, m",      NOTHING },
+    { "mov a, a",      NOTHING },
+
+    /* 80-87 */
+    { "add b",         NOTHING },
+    { "add c",         NOTHING },
+    { "add d",         NOTHING },
+    { "add e",         NOTHING },
+    { "add h",         NOTHING },
+    { "add l",         NOTHING },
+    { "add m",         NOTHING },
+    { "add a",         NOTHING },
+
+    /* 88-8f */
+    { "adc b",         NOTHING },
+    { "adc c",         NOTHING },
+    { "adc d",         NOTHING },
+    { "adc e",         NOTHING },
+    { "adc h",         NOTHING },
+    { "adc l",         NOTHING },
+    { "adc m",         NOTHING },
+    { "adc a",         NOTHING },
+
+    /* 90-97 */
+    { "sub b",         NOTHING },
+    { "sub c",         NOTHING },
+    { "sub d",         NOTHING },
+    { "sub e",         NOTHING },
+    { "sub h",         NOTHING },
+    { "sub l",         NOTHING },
+    { "sub m",         NOTHING },
+    { "sub a",         NOTHING },
+
+    /* 98-9f */
+    { "sbb b",         NOTHING },
+    { "sbb c",         NOTHING },
+    { "sbb d",         NOTHING },
+    { "sbb e",         NOTHING },
+    { "sbb h",         NOTHING },
+    { "sbb l",         NOTHING },
+    { "sbb m",         NOTHING },
+    { "sbb a",         NOTHING },
+
+    /* a0-a7 */
+    { "ana b",         NOTHING },
+    { "ana c",         NOTHING },
+    { "ana d",         NOTHING },
+    { "ana e",         NOTHING },
+    { "ana h",         NOTHING },
+    { "ana l",         NOTHING },
+    { "ana m",         NOTHING },
+    { "ana a",         NOTHING },
+
+    /* a8-af */
+    { "xra b",         NOTHING },
+    { "xra c",         NOTHING },
+    { "xra d",         NOTHING },
+    { "xra e",         NOTHING },
+    { "xra h",         NOTHING },
+    { "xra l",         NOTHING },
+    { "xra m",         NOTHING },
+    { "xra a",         NOTHING },
+
+    /* b0-b7 */
+    { "ora b",         NOTHING },
+    { "ora c",         NOTHING },
+    { "ora d",         NOTHING },
+    { "ora e",         NOTHING },
+    { "ora h",         NOTHING },
+    { "ora l",         NOTHING },
+    { "ora m",         NOTHING },
+    { "ora a",         NOTHING },
+
+    /* b8-bf */
+    { "cmp b",         NOTHING },
+    { "cmp c",         NOTHING },
+    { "cmp d",         NOTHING },
+    { "cmp e",         NOTHING },
+    { "cmp h",         NOTHING },
+    { "cmp l",         NOTHING },
+    { "cmp m",         NOTHING },
+    { "cmp a",         NOTHING },
+
+    /* c0-c7 */
+    { "rnz",           NOTHING },
+    { "pop b",         NOTHING },
+    { "jnz 0x%04x",    CONST16 },
+    { "jmp 0x%04x",    CONST16 },
+    { "cnz 0x%04x",    CONST16 },
+    { "push b",        NOTHING },
+    { "adi 0x%02x",    CONST8 },
+    { "rst 0",         NOTHING },
+
+    /* c8-cf */
+    { "rz",            NOTHING },
+    { "ret",           NOTHING },
+    { "jz 0x%04x",     CONST16 },
+    { "*jmp 0x%04x",   CONST16 },
+    { "cz 0x%04x",     CONST16 },
+    { "call 0x%04x",   CONST16 },
+    { "aci 0x%02x",    CONST8 },
+    { "rst 1",         NOTHING },
+
+    /* d0-d7 */
+    { "rnc",           NOTHING },
+    { "pop d",         NOTHING },
+    { "jnc 0x%04x",    CONST16 },
+    { "out 0x%02x",    CONST8 },
+    { "cnc 0x%04x",    CONST16 },
+    { "push d",        NOTHING },
+    { "sui 0x%02x",    CONST8 },
+    { "rst 2",         NOTHING },
+
+    /* d8-df */
+    { "rc",            NOTHING },
+    { "*ret",          NOTHING },
+    { "jc 0x%04x",     CONST16 },
+    { "in 0x%02x",     CONST8 },
+    { "cc 0x%04x",     CONST16 },
+    { "*call 0x%04x",  CONST16 },
+    { "sbi 0x%02x",    CONST8 },
+    { "rst 3",         NOTHING },
+
+    /* e0-e7 */
+    { "rpo",           NOTHING },
+    { "pop h",         NOTHING },
+    { "jpo 0x%04x",    CONST16 },
+    { "xthl",          NOTHING },
+    { "cpo 0x%04x",    CONST16 },
+    { "push h",        NOTHING },
+    { "ani 0x%02x",    CONST8 },
+    { "rst 4",         NOTHING },
+
+    /* e8-ef */
+    { "rpe",           NOTHING },
+    { "pchl",          NOTHING },
+    { "jpe 0x%04x",    CONST16 },
+    { "xchg",          NOTHING },
+    { "cpe 0x%04x",    CONST16 },
+    { "*call 0x%04x",  CONST16 },
+    { "xri 0x%02x",    CONST8 },
+    { "rst 5",         NOTHING },
+
+    /* f0-f7 */
+    { "rp",            NOTHING },
+    { "pop psw",       NOTHING },
+    { "jp 0x%04x",     CONST16 },
+    { "di",            NOTHING },
+    { "cp 0x%04x",     CONST16 },
+    { "push psw",      NOTHING },
+    { "ori 0x%02x",    CONST8 },
+    { "rst 6",         NOTHING },
+
+    /* f8-ff */
+    { "rm",            NOTHING },
+    { "sphl",          NOTHING },
+    { "jm 0x%04x",     CONST16 },
+    { "ei",            NOTHING },
+    { "cm 0x%04x",     CONST16 },
+    { "*call 0x%04x",  CONST16 },
+    { "cpi 0x%02x",    CONST8 },
+    { "rst 7",         NOTHING },
+};
+
+uint16_t i8080_disassemble(char* buffer, size_t bufsiz, uint16_t pc)
+{
+    uint8_t opcode = i8080_read(pc);
+       uint8_t p1 = i8080_read(pc+1);
+       uint8_t p2 = i8080_read(pc+2);
+    struct insn* insn = &insns[opcode];
+    uint16_t value = 0;
+       const char* left = "";
+
+       snprintf(buffer, bufsiz, "%04x : ", pc);
+       pc++;
+
+    switch (insn->operand)
+    {
+        case NOTHING:
+                       left = "%02x       : ";
+            break;
+
+        case CONST8:
+                       left = "%02x %02x    : ";
+            value = p1;
+                       pc++;
+            break;
+
+        case CONST16:
+                       left = "%02x %02x %02x : ";
+            value = p1 | (p2<<8);
+                       pc += 2;
+            break;
+    }
+
+       snprintf(buffer + 7, bufsiz - 7, left, opcode, p1, p2);
+    snprintf(buffer + 18, bufsiz - 18, insn->name, value);
+    return pc;
+}
diff --git a/plat/cpmz80/emu/dis8080.h b/plat/cpmz80/emu/dis8080.h
new file mode 100644 (file)
index 0000000..5379a61
--- /dev/null
@@ -0,0 +1,6 @@
+#ifndef DIS8080_H
+#define DIS8080_H
+
+extern uint16_t i8080_disassemble(char* buffer, size_t bufsiz, uint16_t pc);
+
+#endif
diff --git a/plat/cpmz80/emu/emulator.c b/plat/cpmz80/emu/emulator.c
new file mode 100644 (file)
index 0000000..63a40a6
--- /dev/null
@@ -0,0 +1,411 @@
+#define _POSIX_C_SOURCE 199309
+#include <stdlib.h>
+#include <stdio.h>
+#include <stdint.h>
+#include <signal.h>
+#include <string.h>
+#include "intel_8080_emulator.h"
+#include "dis8080.h"
+#include "globals.h"
+
+uint8_t ram[0x10000];
+
+struct watchpoint
+{
+       uint16_t address;
+       uint8_t value;
+       bool enabled;
+};
+
+static uint16_t breakpoints[16];
+static struct watchpoint watchpoints[16];
+static bool tracing = false;
+static bool singlestepping = true;
+static bool bdosbreak = false;
+
+static const char* delimiters = " \t\n\r";
+
+uint8_t i8080_read(uint16_t addr)
+{
+       return ram[addr];
+}
+
+void i8080_write(uint16_t addr, uint8_t value)
+{
+       ram[addr] = value;
+}
+
+uint8_t i8080_inport(uint8_t addr)
+{
+       return 0;
+}
+
+void i8080_outport(uint8_t addr, uint8_t value)
+{
+       biosbdos_entry(addr & 0xff);
+       if (bdosbreak)
+               singlestepping = true;
+}
+
+void showregs(void)
+{
+       uint16_t af = i8080_read_reg16(AF);
+       printf("%c%c.%c.%c%c%c sp=%04x af=%04x bc=%04x de=%04x hl=%04x\n",
+               (af & 0x80) ? 'S' : 's',
+               (af & 0x40) ? 'Z' : 'z',
+               (af & 0x10) ? 'H' : 'h',
+               (af & 0x04) ? 'P' : 'p',
+               (af & 0x02) ? 'N' : 'n',
+               (af & 0x01) ? 'C' : 'c',
+               i8080_read_reg16(SP),
+               af,
+               i8080_read_reg16(BC),
+               i8080_read_reg16(DE),
+               i8080_read_reg16(HL));
+
+       char buffer[80];
+       int tstates;
+       uint16_t pc = i8080_read_reg16(PC);
+       i8080_disassemble(buffer, sizeof(buffer), pc);
+       puts(buffer);
+}
+
+static void cmd_register(void)
+{
+       char* w1 = strtok(NULL, delimiters);
+       char* w2 = strtok(NULL, delimiters);
+
+       if (w1 && w2)
+       {
+               int reg = -1;
+               if (strcmp(w1, "sp") == 0)
+                       reg = SP;
+               else if (strcmp(w1, "pc") == 0)
+                       reg = PC;
+               else if (strcmp(w1, "af") == 0)
+                       reg = AF;
+               else if (strcmp(w1, "bc") == 0)
+                       reg = BC;
+               else if (strcmp(w1, "de") == 0)
+                       reg = DE;
+               else if (strcmp(w1, "hl") == 0)
+                       reg = HL;
+               else
+               {
+                       printf("Bad register\n");
+                       return;
+               }
+
+               i8080_write_reg16(reg, strtoul(w2, NULL, 16));
+       }
+
+       showregs();
+}
+
+static void cmd_break(void)
+{
+       int i;
+       char* w1 = strtok(NULL, delimiters);
+       if (w1)
+       {
+               uint16_t breakpc = strtoul(w1, NULL, 16);
+               for (i=0; i<sizeof(breakpoints)/sizeof(*breakpoints); i++)
+               {
+                       if (breakpoints[i] == 0xffff)
+                       {
+                               breakpoints[i] = breakpc;
+                               return;
+                       }
+               }
+               printf("Too many breakpoints\n");
+       }
+       else
+       {
+               for (i=0; i<sizeof(breakpoints)/sizeof(*breakpoints); i++)
+               {
+                       if (breakpoints[i] != 0xffff)
+                               printf("%04x\n", breakpoints[i]);
+               }
+       }
+}
+
+static void cmd_watch(void)
+{
+       int i;
+       char* w1 = strtok(NULL, delimiters);
+       if (w1)
+       {
+               uint16_t watchaddr = strtoul(w1, NULL, 16);
+               for (i=0; i<sizeof(watchpoints)/sizeof(*watchpoints); i++)
+               {
+                       struct watchpoint* w = &watchpoints[i];
+                       if (!w->enabled)
+                       {
+                               w->address = watchaddr;
+                               w->enabled = true;
+                               w->value = ram[watchaddr];
+                               return;
+                       }
+               }
+               printf("Too many breakpoints\n");
+       }
+       else
+       {
+               for (i=0; i<sizeof(watchpoints)/sizeof(*watchpoints); i++)
+               {
+                       struct watchpoint* w = &watchpoints[i];
+                       if (w->enabled)
+                               printf("%04x (current value: %02x)\n", w->address, w->value);
+               }
+       }
+}
+
+static void cmd_delete_breakpoint(void)
+{
+       int i;
+       char* w1 = strtok(NULL, delimiters);
+       if (w1)
+       {
+               uint16_t breakpc = strtoul(w1, NULL, 16);
+               for (i=0; i<sizeof(breakpoints)/sizeof(*breakpoints); i++)
+               {
+                       if (breakpoints[i] == breakpc)
+                       {
+                               breakpoints[i] = 0xffff;
+                               return;
+                       }
+               }
+               printf("No such breakpoint\n");
+       }
+}
+
+static void cmd_delete_watchpoint(void)
+{
+       int i;
+       char* w1 = strtok(NULL, delimiters);
+       if (w1)
+       {
+               uint16_t address = strtoul(w1, NULL, 16);
+               for (i=0; i<sizeof(breakpoints)/sizeof(*breakpoints); i++)
+               {
+                       struct watchpoint* w = &watchpoints[i];
+                       if (w->enabled && (w->address == address))
+                       {
+                               w->enabled = false;
+                               return;
+                       }
+               }
+               printf("No such watchpoint\n");
+       }
+}
+
+static void cmd_memory(void)
+{
+       int i;
+       char* w1 = strtok(NULL, delimiters);
+       char* w2 = strtok(NULL, delimiters);
+
+       if (!w2)
+               w2 = "100";
+
+       if (w1 && w2)
+       {
+               uint16_t startaddr = strtoul(w1, NULL, 16);
+               uint16_t endaddr = startaddr + strtoul(w2, NULL, 16);
+               uint16_t startrounded = startaddr & ~0xf;
+               uint16_t endrounded = (endaddr + 0xf) & ~0xf;
+
+               uint16_t p = startrounded;
+
+               while (p < endrounded)
+               {
+                       printf("%04x : ", p);
+                       for (i = 0; i < 16; i++)
+                       {
+                               uint16_t pp = p + i;
+                               if ((pp >= startaddr) && (pp < endaddr))
+                                       printf("%02x ", ram[pp]);
+                               else
+                                       printf("   ");
+                       }
+                       printf(": ");
+                       for (i = 0; i < 16; i++)
+                       {
+                               uint16_t pp = p + i;
+                               if ((pp >= startaddr) && (pp < endaddr))
+                               {
+                                       uint8_t c = ram[pp];
+                                       if ((c < 32) || (c > 127))
+                                               c = '.';
+                                       putchar(c);
+                               }
+                               else
+                                       putchar(' ');
+                       }
+                       p += 16;
+                       putchar('\n');
+               }
+       }
+}
+
+static void cmd_unassemble(void)
+{
+       char* w1 = strtok(NULL, delimiters);
+       char* w2 = strtok(NULL, delimiters);
+       uint16_t startaddr = i8080_read_reg16(PC);
+       uint16_t endaddr;
+
+       if (w1)
+               startaddr = strtoul(w1, NULL, 16);
+       endaddr = startaddr + 0x20;
+       if (w2)
+               endaddr = startaddr + strtoul(w2, NULL, 16);
+
+       while (startaddr < endaddr)
+       {
+               char buffer[80];
+               startaddr = i8080_disassemble(buffer, sizeof(buffer), startaddr);
+               puts(buffer);
+       }
+}
+
+static void cmd_bdos(void)
+{
+       char* w1 = strtok(NULL, delimiters);
+       if (w1)
+               bdosbreak = !!strtoul(w1, NULL, 16);
+       else
+               printf("break on bdos entry: %s\n", bdosbreak ? "on" : "off");
+}
+
+static void cmd_tracing(void)
+{
+       char* w1 = strtok(NULL, delimiters);
+       if (w1)
+               tracing = !!strtoul(w1, NULL, 16);
+       else
+               printf("tracing: %s\n", tracing ? "on" : "off");
+}
+
+static void cmd_help(void)
+{
+       printf("Sleazy debugger\n"
+              "  r               show registers\n"
+                  "  r <reg> <value> set register\n"
+                  "  b               show breakpoints\n"
+                  "  b <addr>        set breakpoint\n"
+                  "  db <addr>       delete breakpoint\n"
+                  "  w <addr>        set watchpoint\n"
+                  "  dw <addr>       delete watchpoint\n"
+                  "  m <addr> <len>  show memory\n"
+                  "  u <addr> <len>  unassemble memory\n"
+                  "  s               single step\n"
+                  "  g               continue\n"
+                  "  bdos 0|1        enable break on bdos entry\n"
+                  "  tracing 0|1     enable tracing\n"
+       );
+}
+
+static void debug(void)
+{
+       bool go = false;
+       showregs();
+       while (!go)
+       {
+               char cmdline[80];
+               printf("debug> ");
+               fflush(stdout);
+               if (!fgets(cmdline, sizeof(cmdline), stdin))
+                       exit(0);
+
+               char* token = strtok(cmdline, delimiters);
+               if (token != NULL)
+               {
+                       if (strcmp(token, "?") == 0)
+                               cmd_help();
+                       else if (strcmp(token, "r") == 0)
+                               cmd_register();
+                       else if (strcmp(token, "b") == 0)
+                               cmd_break();
+                       else if (strcmp(token, "w") == 0)
+                               cmd_watch();
+                       else if (strcmp(token, "db") == 0)
+                               cmd_delete_breakpoint();
+                       else if (strcmp(token, "dw") == 0)
+                               cmd_delete_watchpoint();
+                       else if (strcmp(token, "m") == 0)
+                               cmd_memory();
+                       else if (strcmp(token, "u") == 0)
+                               cmd_unassemble();
+                       else if (strcmp(token, "s") == 0)
+                       {
+                               singlestepping = true;
+                               go = true;
+                       }
+                       else if (strcmp(token, "g") == 0)
+                       {
+                               singlestepping = false;
+                               go = true;
+                       }
+                       else if (strcmp(token, "bdos") == 0)
+                               cmd_bdos();
+                       else if (strcmp(token, "tracing") == 0)
+                               cmd_tracing();
+                       else
+                               printf("Bad command\n");
+               }
+       }
+}
+
+static void sigusr1_cb(int number)
+{
+       singlestepping = true;
+}
+
+void emulator_init(void)
+{
+       int i;
+       for (i=0; i<sizeof(breakpoints)/sizeof(*breakpoints); i++)
+               breakpoints[i] = 0xffff;
+
+       singlestepping = flag_enter_debugger;
+
+       struct sigaction action = {
+               .sa_handler = sigusr1_cb
+       };
+       sigaction(SIGUSR1, &action, NULL);
+}
+
+void emulator_run(void)
+{
+       int i;
+       for (;;)
+       {
+               uint16_t pc = i8080_read_reg16(PC);
+               if (!singlestepping)
+               {
+                       for (i=0; i<sizeof(breakpoints)/sizeof(*breakpoints); i++)
+                               if (pc == breakpoints[i])
+                                       singlestepping = true;
+               }
+               for (i=0; i<sizeof(watchpoints)/sizeof(*watchpoints); i++)
+               {
+                       struct watchpoint* w = &watchpoints[i];
+                       if (w->enabled && (ram[w->address] != w->value))
+                       {
+                               printf("\nWatchpoint hit: %04x has changed from %02x to %02x\n",
+                                       w->address, w->value, ram[w->address]);
+                               w->value = ram[w->address];
+                               singlestepping = true;
+                       }
+               }
+
+               if (singlestepping)
+                       debug();
+               else if (tracing)
+                       showregs();
+
+               i8080_exec(1);
+       }
+}
+
diff --git a/plat/cpmz80/emu/fileio.c b/plat/cpmz80/emu/fileio.c
new file mode 100644 (file)
index 0000000..d3df457
--- /dev/null
@@ -0,0 +1,442 @@
+#define _XOPEN_SOURCE 700
+#include <stdio.h>
+#include <stdlib.h>
+#include <string.h>
+#include <unistd.h>
+#include <sys/types.h>
+#include <sys/stat.h>
+#include <fcntl.h>
+#include <ctype.h>
+#include <errno.h>
+#include <dirent.h>
+#include "globals.h"
+
+#define logf(args...) while (0)
+//#define logf(args...) printf(args)
+
+struct file
+{
+       struct file* prev;
+       struct file* next;
+       cpm_filename_t filename;
+       int fd;
+       int flags;
+};
+
+#define NUM_FILES 16
+static struct file files[NUM_FILES];
+static struct file* firstfile;
+
+#define NUM_DRIVES 16
+static int drives[NUM_DRIVES];
+
+static cpm_filename_t currentpattern;
+static int currentsearchdrivefd;
+static DIR* currentdir;
+
+void files_init(void)
+{
+       int i;
+       for (i=0; i<NUM_DRIVES; i++)
+               drives[i] = -1;
+       file_set_drive(0, ".");
+
+       for (i=0; i<NUM_FILES; i++)
+       {
+               struct file* f = &files[i];
+               if (i == 0)
+                       f->prev = NULL;
+               else
+                       f->prev = &files[i-1];
+
+               if (i == (NUM_FILES-1))
+                       f->next = NULL;
+               else
+                       f->next = &files[i+1];
+
+               memset(&f->filename.bytes, ' ', 11);
+               f->filename.drive = 0;
+               f->fd = -1;
+               f->flags = 0;
+       }
+
+       firstfile = &files[0];
+}
+
+void file_set_drive(int drive, const char* path)
+{
+       if ((drive < 0) || (drive >= NUM_DRIVES))
+               fatal("bad drive letter");
+               
+       if (drives[drive] != -1)
+               close(drives[drive]);
+       drives[drive] = open(path, O_RDONLY);
+       if (drives[drive] == -1)
+               fatal("could not open '%s': %s", path, strerror(errno));
+
+       struct stat st;
+       fstat(drives[drive], &st);
+       if (!S_ISDIR(st.st_mode))
+               fatal("could not open '%s': not a directory", path);
+       logf("[drive %c now pointing at %s (fd %d)]\n", drive+'A', path, drives[drive]);
+}
+
+static void bump(struct file* f)
+{
+       // logf("[bumping file %d to front]\n", f-files);
+
+       if (f != firstfile)
+       {
+               /* Remove from list. */
+               if (f->prev)
+                       f->prev->next = f->next;
+               if (f->next)
+                       f->next->prev = f->prev;
+
+               /* Reinsert at head of list. */
+               firstfile->prev = f;
+               f->prev = NULL;
+               f->next = firstfile;
+               firstfile = f;
+       }
+
+       // logf("[first file is %d]\n", firstfile-files);
+       // for (int i=0; i<NUM_FILES; i++)
+       // {
+       //      f = &files[i];
+       //      logf("[file %02d: %c:%.11s, fd=%d, prev=%d next=%d]\n",
+       //              i, 'A'-1+f->filename.drive, f->filename.bytes, f->fd,
+       //              f->prev ? (f->prev - files) : -1,
+       //              f->next ? (f->next - files) : -1);
+       // }
+}
+
+static void cpm_filename_to_unix(cpm_filename_t* cpmfilename, char* unixfilename)
+{
+       int i;
+       char* pin = cpmfilename->bytes;
+       char* pout = unixfilename;
+
+       for (i=0; i<8; i++)
+       {
+               char c = *pin++;
+               if (c != ' ')
+                       *pout++ = tolower(c);
+       }
+       *pout++ = '.';
+       for (i=0; i<3; i++)
+       {
+               char c = *pin++;
+               if (c != ' ')
+                       *pout++ = tolower(c);
+       }
+       if (pout[-1] == '.')
+               pout--;
+       *pout = '\0';
+}
+
+static bool unix_filename_to_cpm(const char* unixfilename, cpm_filename_t* cpmfilename)
+{
+       const char* pin = unixfilename;
+
+       memset(cpmfilename, ' ', sizeof(cpm_filename_t));
+       char* pout = &cpmfilename->bytes[0];
+       int count = 0;
+       int maxcount = 8;
+       for (;;)
+       {
+               char c = *pin++;
+               if ((c == '.') && (maxcount == 8))
+               {
+                       maxcount = 3;
+                       count = 0;
+                       pout = &cpmfilename->bytes[8];
+               }
+               else if (c == '\0')
+                       break;
+               else if (count == maxcount)
+                       return false;
+               else if (isupper(c))
+                       return false;
+               else
+               {
+                       *pout++ = toupper(c);
+                       count++;
+               }
+       }
+
+       return true;
+}
+
+static bool match_filenames(cpm_filename_t* pattern, cpm_filename_t* filename)
+{
+       int i;
+       if (pattern->drive != filename->drive)
+               return false;
+
+       for (i=0; i<sizeof(pattern->bytes); i++)
+       {
+               char p = pattern->bytes[i];
+               if (p == '?')
+                       continue;
+               if (p != filename->bytes[i])
+                       return false;
+       }
+       return true;
+}
+
+static int get_drive_fd(cpm_filename_t* filename)
+{
+       int drive = filename->drive - 1;
+       if ((drive < 0) || (drive >= NUM_DRIVES))
+       {
+               logf("[reference to bad drive %c]\n", drive + 'A');
+               return -1;
+       }
+       int drivefd = drives[drive];
+       if (drivefd == -1)
+       {
+               logf("[reference to undefined drive %c]\n", drive + 'A');
+               return -1;
+       }
+       logf("[selecting drive %c on fd %d]\n", drive + 'A', drivefd);
+       return drivefd;
+}
+
+static void reopen(struct file* f, int flags)
+{
+       if ((f->fd == -1) || ((f->flags == O_RDONLY) && (flags == O_RDWR)))
+       {
+               char unixfilename[13];
+               cpm_filename_to_unix(&f->filename, unixfilename);
+
+               if (f->fd != -1)
+               {
+                       logf("[reopening actual file '%s' on %d with different flags]\n", unixfilename, f->fd);
+                       close(f->fd);
+               }
+
+               int drivefd = get_drive_fd(&f->filename);
+               if (drivefd == -1)
+                       return;
+
+               f->flags = flags & O_ACCMODE;
+               errno = 0;
+               f->fd = openat(drivefd, unixfilename, flags, 0666);
+               logf("[opened actual file '%s' to fd %d: %s]\n", unixfilename, f->fd, strerror(errno));
+       }
+
+}
+
+static struct file* find_file(cpm_filename_t* filename)
+{
+       struct file* f = firstfile;
+       for (;;)
+       {
+               if (memcmp(filename, &f->filename, sizeof(cpm_filename_t)) == 0)
+                       break;
+
+               if (f->next)
+                       f = f->next;
+               else
+               {
+                       logf("[allocating file %d for '%.11s']\n", f-files, filename->bytes);
+                       bump(f);
+                       if (f->fd != -1)
+                       {
+                               logf("[closing old file %d for '%.11s']\n", f-files, f->filename.bytes);
+                               close(f->fd);
+                       }
+                       f->fd = -1;
+                       f->filename = *filename;
+                       f->flags = 0;
+                       break;
+               }
+       }
+       return f;
+}
+
+struct file* file_open(cpm_filename_t* filename)
+{
+       struct file* f = find_file(filename);
+       reopen(f, O_RDONLY);
+       if (f->fd == -1)
+               return NULL;
+       return f;
+}
+
+struct file* file_create(cpm_filename_t* filename)
+{
+       struct file* f = find_file(filename);
+       logf("[creating file %d for '%.11s']\n", f-files, f->filename.bytes);
+       reopen(f, O_RDWR | O_CREAT);
+       if (f->fd == -1)
+               return NULL;
+       return f;
+}
+
+int file_close(cpm_filename_t* filename)
+{
+       struct file* f = find_file(filename);
+
+       logf("[explicitly closing file %d for '%.11s']\n", f-files, f->filename.bytes);
+       if (f->fd != -1)
+       {
+               logf("[closing file descriptor %d]\n", f->fd);
+               close(f->fd);
+       }
+
+       memset(&f->filename.bytes, ' ', 11);
+       f->fd = -1;
+       f->flags = 0;
+
+       return 0;
+}
+
+int file_read(struct file* f, uint8_t* data, uint16_t record)
+{
+       reopen(f, O_RDONLY);
+       
+       logf("[read record %04x from file %d for '%.11s']\n", record, f-files, f->filename.bytes);
+       bump(f);
+       memset(data, '\0', 128);
+       return pread(f->fd, data, 128, record*128);
+}
+
+int file_write(struct file* f, uint8_t* data, uint16_t record)
+{
+       reopen(f, O_RDWR);
+
+       logf("[write record %04x from file %d for '%.11s']\n", record, f-files, f->filename.bytes);
+       bump(f);
+       return pwrite(f->fd, data, 128, record*128);
+}
+
+int file_getrecordcount(struct file* f)
+{
+       reopen(f, O_RDONLY);
+       
+       struct stat st;
+       fstat(f->fd, &st);
+       return (st.st_size + 127) >> 7;
+}
+
+void file_setrecordcount(struct file* f, int count)
+{
+       reopen(f, O_RDONLY);
+       
+       if (count != file_getrecordcount(f))
+       {
+               logf("[truncating file %d to %d records]\n", f-files, count);
+               reopen(f, O_RDWR);
+               ftruncate(f->fd, count*128);
+       }
+}
+
+int file_findfirst(cpm_filename_t* pattern)
+{
+       if (currentdir)
+       {
+               closedir(currentdir);
+               currentdir = NULL;
+       }
+
+       currentpattern = *pattern;
+       logf("[reset search; current find pattern is '%.11s']\n", currentpattern.bytes);
+       currentsearchdrivefd = get_drive_fd(pattern);
+       if (currentsearchdrivefd == -1)
+               return 0;
+
+       currentdir = fdopendir(dup(currentsearchdrivefd));
+       if (currentdir)
+       {
+               rewinddir(currentdir);
+               return 0;
+       }
+       return -1;
+}
+
+int file_findnext(cpm_filename_t* result)
+{
+       for (;;)
+       {
+               if (!currentdir)
+                       return -1;
+
+               struct dirent* de = readdir(currentdir);
+               if (!de)
+               {
+                       closedir(currentdir);
+                       currentdir = NULL;
+                       logf("[finished search]\n");
+                       return -1;
+               }
+
+               struct stat st;
+               if ((fstatat(currentsearchdrivefd, de->d_name, &st, 0) == 0)
+                       && S_ISREG(st.st_mode)
+                       && unix_filename_to_cpm(de->d_name, result))
+               {
+                       result->drive = currentpattern.drive;
+                       logf("[compare '%.11s' with pattern '%.11s']\n", result->bytes, currentpattern.bytes);
+                       if (match_filenames(&currentpattern, result))
+                       {
+                               logf("[positive match]\n");
+                               return 0;
+                       }
+               }
+       }
+}
+
+int file_delete(cpm_filename_t* pattern)
+{
+       logf("[attempting to delete pattern '%.11s' on drive %c]\n", pattern->bytes, '@'+pattern->drive);
+       int drivefd = get_drive_fd(pattern);
+       DIR* dir = fdopendir(dup(drivefd));
+       if (!dir)
+               return -1;
+       rewinddir(dir);
+
+       int result = -1;
+       for (;;)
+       {
+               struct dirent* de = readdir(dir);
+               if (!de)
+                       break;
+
+               struct stat st;
+               cpm_filename_t candidate;
+
+               if ((fstatat(drivefd, de->d_name, &st, 0) == 0)
+                       && S_ISREG(st.st_mode)
+                       && unix_filename_to_cpm(de->d_name, &candidate))
+               {
+                       candidate.drive = pattern->drive;
+                       logf("[compare '%.11s' with pattern '%.11s']\n", candidate.bytes, pattern->bytes);
+                       if (match_filenames(pattern, &candidate))
+                       {
+                               logf("[positive match, deleting]\n");
+                               unlinkat(drivefd, de->d_name, 0);
+                               result = 0;
+                       }
+               }
+       }
+
+       closedir(dir);
+       return result;
+}
+
+int file_rename(cpm_filename_t* src, cpm_filename_t* dest)
+{
+       logf("[renaming %.11s to %.11s on drive %c]\n",
+               src->bytes, dest->bytes, '@'+src->drive);
+
+       char srcunixfilename[13];
+       cpm_filename_to_unix(src, srcunixfilename);
+
+       char destunixfilename[13];
+       cpm_filename_to_unix(dest, destunixfilename);
+
+       int drivefd = get_drive_fd(src);
+       return renameat(drivefd, srcunixfilename, drivefd, destunixfilename);
+}
diff --git a/plat/cpmz80/emu/globals.h b/plat/cpmz80/emu/globals.h
new file mode 100644 (file)
index 0000000..2ac4143
--- /dev/null
@@ -0,0 +1,51 @@
+#ifndef GLOBALS_H
+#define GLOBALS_H
+
+#include <stdint.h>
+#include <stdbool.h>
+#include <stdint.h>
+
+extern uint8_t ram[0x10000];
+
+extern void emulator_init(void);
+extern void emulator_run(void);
+extern void showregs(void);
+
+extern const uint8_t ccp_data[];
+extern const int ccp_len;
+
+extern const uint8_t bdos_data[];
+extern const int bdos_len;
+
+extern void bios_coldboot(void);
+
+extern void biosbdos_entry(int syscall);
+
+typedef struct
+{
+       uint8_t drive;
+       char bytes[11];
+}
+cpm_filename_t;
+
+extern void files_init(void);
+extern void file_set_drive(int drive, const char* path);
+extern struct file* file_open(cpm_filename_t* filename);
+extern struct file* file_create(cpm_filename_t* filename);
+extern int file_close(cpm_filename_t* filename);
+extern int file_read(struct file* file, uint8_t* data, uint16_t record);
+extern int file_write(struct file* file, uint8_t* data, uint16_t record);
+extern int file_getrecordcount(struct file* f);
+extern void file_setrecordcount(struct file* f, int count);
+extern int file_findfirst(cpm_filename_t* pattern);
+extern int file_findnext(cpm_filename_t* result);
+extern int file_delete(cpm_filename_t* pattern);
+extern int file_rename(cpm_filename_t* src, cpm_filename_t* dest);
+
+extern void fatal(const char* message, ...);
+
+extern bool flag_enter_debugger;
+extern char* const* user_command_line;
+
+#endif
+
diff --git a/plat/cpmz80/emu/intel_8080_emulator.c b/plat/cpmz80/emu/intel_8080_emulator.c
new file mode 100644 (file)
index 0000000..af99ba4
--- /dev/null
@@ -0,0 +1,874 @@
+/*\r
+  Intel 8080 emulator in C\r
+  Written by Mike Chambers, April 2018\r
+\r
+  Use this code for whatever you want. I don't care. It's officially public domain.\r
+  Credit would be appreciated.\r
+*/\r
+\r
+#include <stdio.h>\r
+#include <stdint.h>\r
+#include <stdlib.h>\r
+#include "intel_8080_emulator.h"\r
+\r
+#define ALLOW_UNDEFINED\r
+\r
+#define reg16_PSW (((uint16_t)reg8[A] << 8) | (uint16_t)reg8[FLAGS])\r
+#define reg16_BC (((uint16_t)reg8[B] << 8) | (uint16_t)reg8[C])\r
+#define reg16_DE (((uint16_t)reg8[D] << 8) | (uint16_t)reg8[E])\r
+#define reg16_HL (((uint16_t)reg8[H] << 8) | (uint16_t)reg8[L])\r
+\r
+uint8_t reg8[9], INTE = 0;\r
+uint16_t reg_SP, reg_PC;\r
+\r
+#define set_S() reg8[FLAGS] |= 0x80\r
+#define set_Z() reg8[FLAGS] |= 0x40\r
+#define set_AC() reg8[FLAGS] |= 0x10\r
+#define set_P() reg8[FLAGS] |= 0x04\r
+#define set_C() reg8[FLAGS] |= 0x01\r
+#define clear_S() reg8[FLAGS] &= 0x7F\r
+#define clear_Z() reg8[FLAGS] &= 0xBF\r
+#define clear_AC() reg8[FLAGS] &= 0xEF\r
+#define clear_P() reg8[FLAGS] &= 0xFB\r
+#define clear_C() reg8[FLAGS] &= 0xFE\r
+#define test_S() (reg8[FLAGS] & 0x80)\r
+#define test_Z() (reg8[FLAGS] & 0x40)\r
+#define test_AC() (reg8[FLAGS] & 0x10)\r
+#define test_P() (reg8[FLAGS] & 0x04)\r
+#define test_C() (reg8[FLAGS] & 0x01)\r
+\r
+static const uint8_t parity[0x100] = {\r
+       1, 0, 0, 1, 0, 1, 1, 0, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 0, 0, 1, 1, 0, 0, 1, 0, 1, 1, 0,\r
+       0, 1, 1, 0, 1, 0, 0, 1, 1, 0, 0, 1, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 1, 0, 0, 1, 1, 0, 1, 0, 0, 1,\r
+       0, 1, 1, 0, 1, 0, 0, 1, 1, 0, 0, 1, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 1, 0, 0, 1, 1, 0, 1, 0, 0, 1,\r
+       1, 0, 0, 1, 0, 1, 1, 0, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 0, 0, 1, 1, 0, 0, 1, 0, 1, 1, 0,\r
+       0, 1, 1, 0, 1, 0, 0, 1, 1, 0, 0, 1, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 1, 0, 0, 1, 1, 0, 1, 0, 0, 1,\r
+       1, 0, 0, 1, 0, 1, 1, 0, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 0, 0, 1, 1, 0, 0, 1, 0, 1, 1, 0,\r
+       1, 0, 0, 1, 0, 1, 1, 0, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 1, 0, 1, 0, 0, 1, 1, 0, 0, 1, 0, 1, 1, 0,\r
+       0, 1, 1, 0, 1, 0, 0, 1, 1, 0, 0, 1, 0, 1, 1, 0, 1, 0, 0, 1, 0, 1, 1, 0, 0, 1, 1, 0, 1, 0, 0, 1\r
+};\r
+\r
+uint16_t read_RP(uint8_t rp) {\r
+       switch (rp) {\r
+               case 0x00:\r
+                       return reg16_BC;\r
+               case 0x01:\r
+                       return reg16_DE;\r
+               case 0x02:\r
+                       return reg16_HL;\r
+               case 0x03:\r
+                       return reg_SP;\r
+       }\r
+       return 0;\r
+}\r
+\r
+uint16_t read_RP_PUSHPOP(uint8_t rp) {\r
+       switch (rp) {\r
+               case 0x00:\r
+                       return reg16_BC;\r
+               case 0x01:\r
+                       return reg16_DE;\r
+               case 0x02:\r
+                       return reg16_HL;\r
+               case 0x03:\r
+                       return (reg16_PSW | 0x02) & 0xFFD7;\r
+       }\r
+       return 0;\r
+}\r
+\r
+void write_RP(uint8_t rp, uint8_t lb, uint8_t hb) {\r
+       switch (rp) {\r
+               case 0x00:\r
+                       reg8[C] = lb;\r
+                       reg8[B] = hb;\r
+                       break;\r
+               case 0x01:\r
+                       reg8[E] = lb;\r
+                       reg8[D] = hb;\r
+                       break;\r
+               case 0x02:\r
+                       reg8[L] = lb;\r
+                       reg8[H] = hb;\r
+                       break;\r
+               case 0x03:\r
+                       reg_SP = (uint16_t)lb | ((uint16_t)hb << 8);\r
+                       break;\r
+       }\r
+}\r
+\r
+void write16_RP(uint8_t rp, uint16_t value) {\r
+       switch (rp) {\r
+               case 0x00:\r
+                       reg8[C] = value & 0x00FF;\r
+                       reg8[B] = value >> 8;\r
+                       break;\r
+               case 0x01:\r
+                       reg8[E] = value & 0x00FF;\r
+                       reg8[D] = value >> 8;\r
+                       break;\r
+               case 0x02:\r
+                       reg8[L] = value & 0x00FF;\r
+                       reg8[H] = value >> 8;\r
+                       break;\r
+               case 0x03:\r
+                       reg_SP = value;\r
+                       break;\r
+       }\r
+}\r
+\r
+void write16_RP_PUSHPOP(uint8_t rp, uint16_t value) {\r
+       switch (rp) {\r
+               case 0x00:\r
+                       reg8[C] = value & 0x00FF;\r
+                       reg8[B] = value >> 8;\r
+                       break;\r
+               case 0x01:\r
+                       reg8[E] = value & 0x00FF;\r
+                       reg8[D] = value >> 8;\r
+                       break;\r
+               case 0x02:\r
+                       reg8[L] = value & 0x00FF;\r
+                       reg8[H] = value >> 8;\r
+                       break;\r
+               case 0x03:\r
+                       reg8[FLAGS] = ((value & 0x00FF) | 0x02) & 0xD7;\r
+                       reg8[A] = value >> 8;\r
+                       break;\r
+       }\r
+}\r
+\r
+void calc_SZP(uint8_t value) {\r
+       if (value == 0) set_Z(); else clear_Z();\r
+       if (value & 0x80) set_S(); else clear_S();\r
+       if (parity[value]) set_P(); else clear_P();\r
+}\r
+\r
+void calc_AC(uint8_t val1, uint8_t val2) {\r
+       if (((val1 & 0x0F) + (val2 & 0x0F)) > 0x0F) {\r
+               set_AC();\r
+       } else {\r
+               clear_AC();\r
+       }\r
+}\r
+\r
+void calc_AC_carry(uint8_t val1, uint8_t val2) {\r
+       if (((val1 & 0x0F) + (val2 & 0x0F)) >= 0x0F) {\r
+               set_AC();\r
+       } else {\r
+               clear_AC();\r
+       }\r
+}\r
+\r
+void calc_subAC(int8_t val1, uint8_t val2) {\r
+       if ((val2 & 0x0F) <= (val1 & 0x0F)) {\r
+               set_AC();\r
+       } else {\r
+               clear_AC();\r
+       }\r
+}\r
+\r
+void calc_subAC_borrow(int8_t val1, uint8_t val2) {\r
+       if ((val2 & 0x0F) < (val1 & 0x0F)) {\r
+               set_AC();\r
+       } else {\r
+               clear_AC();\r
+       }\r
+}\r
+\r
+uint8_t test_cond(uint8_t code) {\r
+       switch (code) {\r
+               case 0: //Z not set\r
+                       if (!test_Z()) return 1; else return 0;\r
+               case 1: //Z set\r
+                       if (test_Z()) return 1; else return 0;\r
+               case 2: //C not set\r
+                       if (!test_C()) return 1; else return 0;\r
+               case 3: //C set\r
+                       if (test_C()) return 1; else return 0;\r
+               case 4: //P not set\r
+                       if (!test_P()) return 1; else return 0;\r
+               case 5: //P set\r
+                       if (test_P()) return 1; else return 0;\r
+               case 6: //S not set\r
+                       if (!test_S()) return 1; else return 0;\r
+               case 7: //S set\r
+                       if (test_S()) return 1; else return 0;\r
+       }\r
+       return 0;\r
+}\r
+\r
+void i8080_push(uint16_t value) {\r
+       i8080_write(--reg_SP, value >> 8);\r
+       i8080_write(--reg_SP, (uint8_t)value);\r
+}\r
+\r
+uint16_t i8080_pop() {\r
+       uint16_t temp;\r
+       temp = i8080_read(reg_SP++);\r
+       temp |= (uint16_t)i8080_read(reg_SP++) << 8;\r
+       return temp;\r
+}\r
+\r
+void i8080_interrupt(uint8_t n) {\r
+       if (!INTE) return;\r
+       i8080_push(reg_PC);\r
+       reg_PC = (uint16_t)n << 3;\r
+       INTE = 0;\r
+}\r
+\r
+void i8080_jump(uint16_t addr) {\r
+       reg_PC = addr;\r
+}\r
+\r
+void i8080_reset() {\r
+       reg_PC = reg_SP = 0x0000;\r
+       //reg8[FLAGS] = 0x02;\r
+}\r
+\r
+void i8080_write_reg8(reg_t reg, uint8_t value) {\r
+       if (reg == M) {\r
+               i8080_write(reg16_HL, value);\r
+       } else {\r
+               reg8[reg] = value;\r
+       }\r
+}\r
+\r
+uint8_t i8080_read_reg8(reg_t reg) {\r
+       if (reg == M) {\r
+               return i8080_read(reg16_HL);\r
+       } else {\r
+               return reg8[reg];\r
+       }\r
+}\r
+\r
+uint16_t i8080_read_reg16(reg_t reg) {\r
+       switch (reg) {\r
+               case AF: return reg16_PSW;\r
+               case BC: return reg16_BC;\r
+               case DE: return reg16_DE;\r
+               case HL: return reg16_HL;\r
+               case SP: return reg_SP;\r
+               case PC: return reg_PC;\r
+       }\r
+       return 0;\r
+}\r
+\r
+void i8080_write_reg16(reg_t reg, uint16_t value) {\r
+       switch (reg) {\r
+               case AF: reg8[A] = value>>8; reg8[FLAGS] = value; break;\r
+               case BC: reg8[B] = value>>8; reg8[C] = value; break;\r
+               case DE: reg8[D] = value>>8; reg8[E] = value; break;\r
+               case HL: reg8[H] = value>>8; reg8[L] = value; break;\r
+               case SP: reg_SP = value; break;\r
+               case PC: reg_PC = value; break;\r
+       }\r
+}\r
+\r
+int i8080_exec(int cycles) {\r
+       uint8_t opcode, temp8, reg, reg2;\r
+       uint16_t temp16;\r
+       uint32_t temp32;\r
+\r
+       while (cycles > 0) {\r
+               opcode = i8080_read(reg_PC++);\r
+\r
+               switch (opcode) {\r
+                       case 0x3A: //LDA a - load A from memory\r
+                               temp16 = (uint16_t)i8080_read(reg_PC) | ((uint16_t)i8080_read(reg_PC+1)<<8);\r
+                               reg8[A] = i8080_read(temp16);\r
+                               reg_PC += 2;\r
+                               cycles -= 13;\r
+                               break;\r
+                       case 0x32: //STA a - store A to memory\r
+                               temp16 = (uint16_t)i8080_read(reg_PC) | ((uint16_t)i8080_read(reg_PC+1)<<8);\r
+                               i8080_write(temp16, reg8[A]);\r
+                               reg_PC += 2;\r
+                               cycles -= 13;\r
+                               break;\r
+                       case 0x2A: //LHLD a - load H:L from memory\r
+                               temp16 = (uint16_t)i8080_read(reg_PC) | ((uint16_t)i8080_read(reg_PC+1)<<8);\r
+                               reg8[L] = i8080_read(temp16++);\r
+                               reg8[H] = i8080_read(temp16);\r
+                               reg_PC += 2;\r
+                               cycles -= 16;\r
+                               break;\r
+                       case 0x22: //SHLD a - store H:L to memory\r
+                               temp16 = (uint16_t)i8080_read(reg_PC) | ((uint16_t)i8080_read(reg_PC+1)<<8);\r
+                               i8080_write(temp16++, reg8[L]);\r
+                               i8080_write(temp16, reg8[H]);\r
+                               reg_PC += 2;\r
+                               cycles -= 16;\r
+                               break;\r
+                       case 0xEB: //XCHG - exchange DE and HL content\r
+                               temp8 = reg8[D];\r
+                               reg8[D] = reg8[H];\r
+                               reg8[H] = temp8;\r
+                               temp8 = reg8[E];\r
+                               reg8[E] = reg8[L];\r
+                               reg8[L] = temp8;\r
+                               cycles -= 5;\r
+                               break;\r
+                       case 0xC6: //ADI # - add immediate to A\r
+                               temp8 = i8080_read(reg_PC++);\r
+                               temp16 = (uint16_t)reg8[A] + (uint16_t)temp8;\r
+                               if (temp16 & 0xFF00) set_C(); else clear_C();\r
+                               calc_AC(reg8[A], temp8);\r
+                               calc_SZP((uint8_t)temp16);\r
+                               reg8[A] = (uint8_t)temp16;\r
+                               cycles -= 7;\r
+                               break;\r
+                       case 0xCE: //ACI # - add immediate to A with carry\r
+                               temp8 = i8080_read(reg_PC++);\r
+                               temp16 = (uint16_t)reg8[A] + (uint16_t)temp8 + (uint16_t)test_C();\r
+                               if (test_C()) calc_AC_carry(reg8[A], temp8); else calc_AC(reg8[A], temp8);\r
+                               if (temp16 & 0xFF00) set_C(); else clear_C();\r
+                               calc_SZP((uint8_t)temp16);\r
+                               reg8[A] = (uint8_t)temp16;\r
+                               cycles -= 7;\r
+                               break;\r
+                       case 0xD6: //SUI # - subtract immediate from A\r
+                               temp8 = i8080_read(reg_PC++);\r
+                               temp16 = (uint16_t)reg8[A] - (uint16_t)temp8;\r
+                               if (((temp16 & 0x00FF) >= reg8[A]) && temp8) set_C(); else clear_C();\r
+                               calc_subAC(reg8[A], temp8);\r
+                               calc_SZP((uint8_t)temp16);\r
+                               reg8[A] = (uint8_t)temp16;\r
+                               cycles -= 7;\r
+                               break;\r
+                       case 0x27: //DAA - decimal adjust accumulator\r
+                               temp16 = reg8[A];\r
+                               if (((temp16 & 0x0F) > 0x09) || test_AC()) {\r
+                                       if (((temp16 & 0x0F) + 0x06) & 0xF0) set_AC(); else clear_AC();\r
+                                       temp16 += 0x06;\r
+                                       if (temp16 & 0xFF00) set_C(); //can also cause carry to be set during addition to the low nibble\r
+                               }\r
+                               if (((temp16 & 0xF0) > 0x90) || test_C()) {\r
+                                       temp16 += 0x60;\r
+                                       if (temp16 & 0xFF00) set_C(); //doesn't clear it if this clause is false\r
+                               }\r
+                               calc_SZP((uint8_t)temp16);\r
+                               reg8[A] = (uint8_t)temp16;\r
+                               cycles -= 4;\r
+                               break;\r
+                       case 0xE6: //ANI # - AND immediate with A\r
+                               temp8 = i8080_read(reg_PC++);\r
+                               if ((reg8[A] | temp8) & 0x08) set_AC(); else clear_AC();\r
+                               reg8[A] &= temp8;\r
+                               clear_C();\r
+                               calc_SZP(reg8[A]);\r
+                               cycles -= 7;\r
+                               break;\r
+                       case 0xF6: //ORI # - OR immediate with A\r
+                               reg8[A] |= i8080_read(reg_PC++);\r
+                               clear_AC();\r
+                               clear_C();\r
+                               calc_SZP(reg8[A]);\r
+                               cycles -= 7;\r
+                               break;\r
+                       case 0xEE: //XRI # - XOR immediate with A\r
+                               reg8[A] ^= i8080_read(reg_PC++);\r
+                               clear_AC();\r
+                               clear_C();\r
+                               calc_SZP(reg8[A]);\r
+                               cycles -= 7;\r
+                               break;\r
+                       case 0xDE: //SBI # - subtract immediate from A with borrow\r
+                               temp8 = i8080_read(reg_PC++);\r
+                               temp16 = (uint16_t)reg8[A] - (uint16_t)temp8 - (uint16_t)test_C();\r
+                               if (test_C()) calc_subAC_borrow(reg8[A], temp8); else calc_subAC(reg8[A], temp8);\r
+                               if (((temp16 & 0x00FF) >= reg8[A]) && (temp8 | test_C())) set_C(); else clear_C();\r
+                               calc_SZP((uint8_t)temp16);\r
+                               reg8[A] = (uint8_t)temp16;\r
+                               cycles -= 7;\r
+                               break;\r
+                       case 0xFE: //CPI # - compare immediate with A\r
+                               temp8 = i8080_read(reg_PC++);\r
+                               temp16 = (uint16_t)reg8[A] - (uint16_t)temp8;\r
+                               if (((temp16 & 0x00FF) >= reg8[A]) && temp8) set_C(); else clear_C();\r
+                               calc_subAC(reg8[A], temp8);\r
+                               calc_SZP((uint8_t)temp16);\r
+                               cycles -= 7;\r
+                               break;\r
+                       case 0x07: //RLC - rotate A left\r
+                               if (reg8[A] & 0x80) set_C(); else clear_C();\r
+                               reg8[A] = (reg8[A] >> 7) | (reg8[A] << 1);\r
+                               cycles -= 4;\r
+                               break;\r
+                       case 0x0F: //RRC - rotate A right\r
+                               if (reg8[A] & 0x01) set_C(); else clear_C();\r
+                               reg8[A] = (reg8[A] << 7) | (reg8[A] >> 1);\r
+                               cycles -= 4;\r
+                               break;\r
+                       case 0x17: //RAL - rotate A left through carry\r
+                               temp8 = test_C();\r
+                               if (reg8[A] & 0x80) set_C(); else clear_C();\r
+                               reg8[A] = (reg8[A] << 1) | temp8;\r
+                               cycles -= 4;\r
+                               break;\r
+                       case 0x1F: //RAR - rotate A right through carry\r
+                               temp8 = test_C();\r
+                               if (reg8[A] & 0x01) set_C(); else clear_C();\r
+                               reg8[A] = (reg8[A] >> 1) | (temp8 << 7);\r
+                               cycles -= 4;\r
+                               break;\r
+                       case 0x2F: //CMA - compliment A\r
+                               reg8[A] = ~reg8[A];\r
+                               cycles -= 4;\r
+                               break;\r
+                       case 0x3F: //CMC - compliment carry flag\r
+                               reg8[FLAGS] ^= 1;\r
+                               cycles -= 4;\r
+                               break;\r
+                       case 0x37: //STC - set carry flag\r
+                               set_C();\r
+                               cycles -= 4;\r
+                               break;\r
+                       case 0xC7: //RST n - restart (call n*8)\r
+                       case 0xD7:\r
+                       case 0xE7:\r
+                       case 0xF7:\r
+                       case 0xCF:\r
+                       case 0xDF:\r
+                       case 0xEF:\r
+                       case 0xFF:\r
+                               i8080_push(reg_PC);\r
+                               reg_PC = (uint16_t)((opcode >> 3) & 7) << 3;\r
+                               cycles -= 11;\r
+                               break;\r
+                       case 0xE9: //PCHL - jump to address in H:L\r
+                               reg_PC = reg16_HL;\r
+                               cycles -= 5;\r
+                               break;\r
+                       case 0xE3: //XTHL - swap H:L with top word on stack\r
+                               temp16 = i8080_pop();\r
+                               i8080_push(reg16_HL);\r
+                               write16_RP(2, temp16);\r
+                               cycles -= 18;\r
+                               break;\r
+                       case 0xF9: //SPHL - set SP to content of HL\r
+                               reg_SP = reg16_HL;\r
+                               cycles -= 5;\r
+                               break;\r
+                       case 0xDB: //IN p - read input port into A\r
+                               reg8[A] = i8080_inport(i8080_read(reg_PC++));\r
+                               cycles -= 10;\r
+                               break;\r
+                       case 0xD3: //OUT p - write A to output port\r
+                               i8080_outport(i8080_read(reg_PC++), reg8[A]);\r
+                               cycles -= 10;\r
+                               break;\r
+                       case 0xFB: //EI - enable interrupts\r
+                               INTE = 1;\r
+                               cycles -= 4;\r
+                               break;\r
+                       case 0xF3: //DI - disbale interrupts\r
+                               INTE = 0;\r
+                               cycles -= 4;\r
+                               break;\r
+                       case 0x76: //HLT - halt processor\r
+                               reg_PC--;\r
+                               cycles -= 7;\r
+                               break;\r
+                       case 0x00: //NOP - no operation\r
+#ifdef ALLOW_UNDEFINED\r
+                       case 0x10:\r
+                       case 0x20:\r
+                       case 0x30:\r
+                       case 0x08:\r
+                       case 0x18:\r
+                       case 0x28:\r
+                       case 0x38:\r
+#endif\r
+                               cycles -= 4;\r
+                               break;\r
+                       case 0x40: case 0x50: case 0x60: case 0x70: //MOV D,S - move register to register\r
+                       case 0x41: case 0x51: case 0x61: case 0x71:\r
+                       case 0x42: case 0x52: case 0x62: case 0x72:\r
+                       case 0x43: case 0x53: case 0x63: case 0x73:\r
+                       case 0x44: case 0x54: case 0x64: case 0x74:\r
+                       case 0x45: case 0x55: case 0x65: case 0x75:\r
+                       case 0x46: case 0x56: case 0x66:\r
+                       case 0x47: case 0x57: case 0x67: case 0x77:\r
+                       case 0x48: case 0x58: case 0x68: case 0x78:\r
+                       case 0x49: case 0x59: case 0x69: case 0x79:\r
+                       case 0x4A: case 0x5A: case 0x6A: case 0x7A:\r
+                       case 0x4B: case 0x5B: case 0x6B: case 0x7B:\r
+                       case 0x4C: case 0x5C: case 0x6C: case 0x7C:\r
+                       case 0x4D: case 0x5D: case 0x6D: case 0x7D:\r
+                       case 0x4E: case 0x5E: case 0x6E: case 0x7E:\r
+                       case 0x4F: case 0x5F: case 0x6F: case 0x7F:\r
+                               reg = (opcode >> 3) & 7;\r
+                               reg2 = opcode & 7;\r
+                               i8080_write_reg8(reg, i8080_read_reg8(reg2));\r
+                               if ((reg == M) || (reg2 == M)) {\r
+                                       cycles -= 7;\r
+                               } else {\r
+                                       cycles -= 5;\r
+                               }\r
+                               break;\r
+                       case 0x06: //MVI D,# - move immediate to register\r
+                       case 0x16:\r
+                       case 0x26:\r
+                       case 0x36:\r
+                       case 0x0E:\r
+                       case 0x1E:\r
+                       case 0x2E:\r
+                       case 0x3E:\r
+                               reg = (opcode >> 3) & 7;\r
+                               i8080_write_reg8(reg, i8080_read(reg_PC++));\r
+                               if (reg == M) {\r
+                                       cycles -= 10;\r
+                               } else {\r
+                                       cycles -= 7;\r
+                               }\r
+                               break;\r
+                       case 0x01: //LXI RP,# - load register pair immediate\r
+                       case 0x11:\r
+                       case 0x21:\r
+                       case 0x31:\r
+                               reg = (opcode >> 4) & 3;\r
+                               write_RP(reg, i8080_read(reg_PC), i8080_read(reg_PC + 1));\r
+                               reg_PC += 2;\r
+                               cycles -= 10;\r
+                               break;\r
+                       case 0x0A: //LDAX BC - load A indirect through BC\r
+                               reg8[A] = i8080_read(reg16_BC);\r
+                               cycles -= 7;\r
+                               break;\r
+                       case 0x1A: //LDAX DE - load A indirect through DE\r
+                               reg8[A] = i8080_read(reg16_DE);\r
+                               cycles -= 7;\r
+                               break;\r
+                       case 0x02: //STAX BC - store A indirect through BC\r
+                               i8080_write(reg16_BC, reg8[A]);\r
+                               cycles -= 7;\r
+                               break;\r
+                       case 0x12: //STAX DE - store A indirect through DE\r
+                               i8080_write(reg16_DE, reg8[A]);\r
+                               cycles -= 7;\r
+                               break;\r
+                       case 0x04: //INR D - increment register\r
+                       case 0x14:\r
+                       case 0x24:\r
+                       case 0x34:\r
+                       case 0x0C:\r
+                       case 0x1C:\r
+                       case 0x2C:\r
+                       case 0x3C:\r
+                               reg = (opcode >> 3) & 7;\r
+                               temp8 = i8080_read_reg8(reg); //reg8[reg];\r
+                               calc_AC(temp8, 1);\r
+                               calc_SZP(temp8 + 1);\r
+                               i8080_write_reg8(reg, temp8 + 1); //reg8[reg]++;\r
+                               if (reg == M) {\r
+                                       cycles -= 10;\r
+                               } else {\r
+                                       cycles -= 5;\r
+                               }\r
+                               break;\r
+                       case 0x05: //DCR D - decrement register\r
+                       case 0x15:\r
+                       case 0x25:\r
+                       case 0x35:\r
+                       case 0x0D:\r
+                       case 0x1D:\r
+                       case 0x2D:\r
+                       case 0x3D:\r
+                               reg = (opcode >> 3) & 7;\r
+                               temp8 = i8080_read_reg8(reg); //reg8[reg];\r
+                               calc_subAC(temp8, 1);\r
+                               calc_SZP(temp8 - 1);\r
+                               i8080_write_reg8(reg, temp8 - 1); //reg8[reg]--;\r
+                               if (reg == M) {\r
+                                       cycles -= 10;\r
+                               } else {\r
+                                       cycles -= 5;\r
+                               }\r
+                               break;\r
+                       case 0x03: //INX RP - increment register pair\r
+                       case 0x13:\r
+                       case 0x23:\r
+                       case 0x33:\r
+                               reg = (opcode >> 4) & 3;\r
+                               write16_RP(reg, read_RP(reg) + 1);\r
+                               cycles -= 5;\r
+                               break;\r
+                       case 0x0B: //DCX RP - decrement register pair\r
+                       case 0x1B:\r
+                       case 0x2B:\r
+                       case 0x3B:\r
+                               reg = (opcode >> 4) & 3;\r
+                               write16_RP(reg, read_RP(reg) - 1);\r
+                               cycles -= 5;\r
+                               break;\r
+                       case 0x09: //DAD RP - add register pair to HL\r
+                       case 0x19:\r
+                       case 0x29:\r
+                       case 0x39:\r
+                               reg = (opcode >> 4) & 3;\r
+                               temp32 = (uint32_t)reg16_HL + (uint32_t)read_RP(reg);\r
+                               write16_RP(2, (uint16_t)temp32);\r
+                               if (temp32 & 0xFFFF0000) set_C(); else clear_C();\r
+                               cycles -= 10;\r
+                               break;\r
+                       case 0x80: //ADD S - add register or memory to A\r
+                       case 0x81:\r
+                       case 0x82:\r
+                       case 0x83:\r
+                       case 0x84:\r
+                       case 0x85:\r
+                       case 0x86:\r
+                       case 0x87:\r
+                               reg = opcode & 7;\r
+                               temp8 = i8080_read_reg8(reg);\r
+                               temp16 = (uint16_t)reg8[A] + (uint16_t)temp8;\r
+                               if (temp16 & 0xFF00) set_C(); else clear_C();\r
+                               calc_AC(reg8[A], temp8);\r
+                               calc_SZP((uint8_t)temp16);\r
+                               reg8[A] = (uint8_t)temp16;\r
+                               if (reg == M) {\r
+                                       cycles -= 7;\r
+                               } else {\r
+                                       cycles -= 4;\r
+                               }\r
+                               break;\r
+                       case 0x88: //ADC S - add register or memory to A with carry\r
+                       case 0x89:\r
+                       case 0x8A:\r
+                       case 0x8B:\r
+                       case 0x8C:\r
+                       case 0x8D:\r
+                       case 0x8E:\r
+                       case 0x8F:\r
+                               reg = opcode & 7;\r
+                               temp8 = i8080_read_reg8(reg);\r
+                               temp16 = (uint16_t)reg8[A] + (uint16_t)temp8 + (uint16_t)test_C();\r
+                               if (test_C()) calc_AC_carry(reg8[A], temp8); else calc_AC(reg8[A], temp8);\r
+                               if (temp16 & 0xFF00) set_C(); else clear_C();\r
+                               calc_SZP((uint8_t)temp16);\r
+                               reg8[A] = (uint8_t)temp16;\r
+                               if (reg == M) {\r
+                                       cycles -= 7;\r
+                               } else {\r
+                                       cycles -= 4;\r
+                               }\r
+                               break;\r
+                       case 0x90: //SUB S - subtract register or memory from A\r
+                       case 0x91:\r
+                       case 0x92:\r
+                       case 0x93:\r
+                       case 0x94:\r
+                       case 0x95:\r
+                       case 0x96:\r
+                       case 0x97:\r
+                               reg = opcode & 7;\r
+                               temp8 = i8080_read_reg8(reg);\r
+                               temp16 = (uint16_t)reg8[A] - (uint16_t)temp8;\r
+                               if (((temp16 & 0x00FF) >= reg8[A]) && temp8) set_C(); else clear_C();\r
+                               calc_subAC(reg8[A], temp8);\r
+                               calc_SZP((uint8_t)temp16);\r
+                               reg8[A] = (uint8_t)temp16;\r
+                               if (reg == M) {\r
+                                       cycles -= 7;\r
+                               } else {\r
+                                       cycles -= 4;\r
+                               }\r
+                               break;\r
+                       case 0x98: //SBB S - subtract register or memory from A with borrow\r
+                       case 0x99:\r
+                       case 0x9A:\r
+                       case 0x9B:\r
+                       case 0x9C:\r
+                       case 0x9D:\r
+                       case 0x9E:\r
+                       case 0x9F:\r
+                               reg = opcode & 7;\r
+                               temp8 = i8080_read_reg8(reg);\r
+                               temp16 = (uint16_t)reg8[A] - (uint16_t)temp8 - (uint16_t)test_C();\r
+                               if (test_C()) calc_subAC_borrow(reg8[A], temp8); else calc_subAC(reg8[A], temp8);\r
+                               if (((temp16 & 0x00FF) >= reg8[A]) && (temp8 | test_C())) set_C(); else clear_C();\r
+                               calc_SZP((uint8_t)temp16);\r
+                               reg8[A] = (uint8_t)temp16;\r
+                               if (reg == M) {\r
+                                       cycles -= 7;\r
+                               } else {\r
+                                       cycles -= 4;\r
+                               }\r
+                               break;\r
+                       case 0xA0: //ANA S - AND register with A\r
+                       case 0xA1:\r
+                       case 0xA2:\r
+                       case 0xA3:\r
+                       case 0xA4:\r
+                       case 0xA5:\r
+                       case 0xA6:\r
+                       case 0xA7:\r
+                               reg = opcode & 7;\r
+                               temp8 = i8080_read_reg8(reg);\r
+                               if ((reg8[A] | temp8) & 0x08) set_AC(); else clear_AC();\r
+                               reg8[A] &= temp8;\r
+                               clear_C();\r
+                               calc_SZP(reg8[A]);\r
+                               if (reg == M) {\r
+                                       cycles -= 7;\r
+                               } else {\r
+                                       cycles -= 4;\r
+                               }\r
+                               break;\r
+                       case 0xB0: //ORA S - OR register with A\r
+                       case 0xB1:\r
+                       case 0xB2:\r
+                       case 0xB3:\r
+                       case 0xB4:\r
+                       case 0xB5:\r
+                       case 0xB6:\r
+                       case 0xB7:\r
+                               reg = opcode & 7;\r
+                               reg8[A] |= i8080_read_reg8(reg);\r
+                               clear_AC();\r
+                               clear_C();\r
+                               calc_SZP(reg8[A]);\r
+                               if (reg == M) {\r
+                                       cycles -= 7;\r
+                               } else {\r
+                                       cycles -= 4;\r
+                               }\r
+                               break;\r
+                       case 0xA8: //XRA S - XOR register with A\r
+                       case 0xA9:\r
+                       case 0xAA:\r
+                       case 0xAB:\r
+                       case 0xAC:\r
+                       case 0xAD:\r
+                       case 0xAE:\r
+                       case 0xAF:\r
+                               reg = opcode & 7;\r
+                               reg8[A] ^= i8080_read_reg8(reg);\r
+                               clear_AC();\r
+                               clear_C();\r
+                               calc_SZP(reg8[A]);\r
+                               if (reg == M) {\r
+                                       cycles -= 7;\r
+                               } else {\r
+                                       cycles -= 4;\r
+                               }\r
+                               break;\r
+                       case 0xB8: //CMP S - compare register with A\r
+                       case 0xB9:\r
+                       case 0xBA:\r
+                       case 0xBB:\r
+                       case 0xBC:\r
+                       case 0xBD:\r
+                       case 0xBE:\r
+                       case 0xBF:\r
+                               reg = opcode & 7;\r
+                               temp8 = i8080_read_reg8(reg);\r
+                               temp16 = (uint16_t)reg8[A] - (uint16_t)temp8;\r
+                               if (((temp16 & 0x00FF) >= reg8[A]) && temp8) set_C(); else clear_C();\r
+                               calc_subAC(reg8[A], temp8);\r
+                               calc_SZP((uint8_t)temp16);\r
+                               if (reg == M) {\r
+                                       cycles -= 7;\r
+                               } else {\r
+                                       cycles -= 4;\r
+                               }\r
+                               break;\r
+                       case 0xC3: //JMP a - unconditional jump\r
+#ifdef ALLOW_UNDEFINED\r
+                       case 0xCB:\r
+#endif\r
+                               temp16 = (uint16_t)i8080_read(reg_PC) | (((uint16_t)i8080_read(reg_PC + 1)) << 8);\r
+                               reg_PC = temp16;\r
+                               cycles -= 10;\r
+                               break;\r
+                       case 0xC2: //Jccc - conditional jumps\r
+                       case 0xCA:\r
+                       case 0xD2:\r
+                       case 0xDA:\r
+                       case 0xE2:\r
+                       case 0xEA:\r
+                       case 0xF2:\r
+                       case 0xFA:\r
+                               temp16 = (uint16_t)i8080_read(reg_PC) | (((uint16_t)i8080_read(reg_PC + 1)) << 8);\r
+                               if (test_cond((opcode >> 3) & 7)) reg_PC = temp16; else reg_PC += 2;\r
+                               cycles -= 10;\r
+                               break;\r
+                       case 0xCD: //CALL a - unconditional call\r
+#ifdef ALLOW_UNDEFINED\r
+                       case 0xDD:\r
+                       case 0xED:\r
+                       case 0xFD:\r
+#endif\r
+                               temp16 = (uint16_t)i8080_read(reg_PC) | (((uint16_t)i8080_read(reg_PC + 1)) << 8);\r
+                               i8080_push(reg_PC + 2);\r
+                               reg_PC = temp16;\r
+                               cycles -= 17;\r
+                               break;\r
+                       case 0xC4: //Cccc - conditional calls\r
+                       case 0xCC:\r
+                       case 0xD4:\r
+                       case 0xDC:\r
+                       case 0xE4:\r
+                       case 0xEC:\r
+                       case 0xF4:\r
+                       case 0xFC:\r
+                               temp16 = (uint16_t)i8080_read(reg_PC) | (((uint16_t)i8080_read(reg_PC + 1)) << 8);\r
+                               if (test_cond((opcode >> 3) & 7)) {\r
+                                       i8080_push(reg_PC + 2);\r
+                                       reg_PC = temp16;\r
+                                       cycles -= 17;\r
+                               } else {\r
+                                       reg_PC += 2;\r
+                                       cycles -= 11;\r
+                               }\r
+                               break;\r
+                       case 0xC9: //RET - unconditional return\r
+#ifdef ALLOW_UNDEFINED\r
+                       case 0xD9:\r
+#endif\r
+                               reg_PC = i8080_pop();\r
+                               cycles -= 10;\r
+                               break;\r
+                       case 0xC0: //Rccc - conditional returns\r
+                       case 0xC8:\r
+                       case 0xD0:\r
+                       case 0xD8:\r
+                       case 0xE0:\r
+                       case 0xE8:\r
+                       case 0xF0:\r
+                       case 0xF8:\r
+                               if (test_cond((opcode >> 3) & 7)) {\r
+                                       reg_PC = i8080_pop();\r
+                                       cycles -= 11;\r
+                               } else {\r
+                                       cycles -= 5;\r
+                               }\r
+                               break;\r
+                       case 0xC5: //PUSH RP - push register pair on the stack\r
+                       case 0xD5:\r
+                       case 0xE5:\r
+                       case 0xF5:\r
+                               reg = (opcode >> 4) & 3;\r
+                               i8080_push(read_RP_PUSHPOP(reg));\r
+                               cycles -= 11;\r
+                               break;\r
+                       case 0xC1: //POP RP - pop register pair from the stack\r
+                       case 0xD1:\r
+                       case 0xE1:\r
+                       case 0xF1:\r
+                               reg = (opcode >> 4) & 3;\r
+                               write16_RP_PUSHPOP(reg, i8080_pop());\r
+                               cycles -= 10;\r
+                               break;\r
+\r
+#ifndef ALLOW_UNDEFINED\r
+                       default:\r
+                               printf("UNRECOGNIZED INSTRUCTION @ %04Xh: %02X\n", reg_PC - 1, opcode);\r
+                               exit(0);\r
+#endif\r
+               }\r
+\r
+       }\r
+\r
+       return cycles;\r
+}\r
diff --git a/plat/cpmz80/emu/intel_8080_emulator.h b/plat/cpmz80/emu/intel_8080_emulator.h
new file mode 100644 (file)
index 0000000..cbfca20
--- /dev/null
@@ -0,0 +1,25 @@
+#ifndef INTEL_I8080_EMULATOR_H
+#define INTEL_I8080_EMULATOR_H
+
+typedef enum
+{
+       B=0, C, D, E, H, L, M, A, FLAGS,
+       AF, BC, DE, HL, SP, PC
+}
+reg_t;
+
+extern uint8_t i8080_read(uint16_t addr);
+extern void i8080_write(uint16_t addr, uint8_t value);
+extern uint8_t i8080_inport(uint8_t port);
+extern void i8080_outport(uint8_t port, uint8_t value);
+
+extern uint8_t i8080_read_reg8(reg_t reg);
+extern void i8080_write_reg8(reg_t reg, uint8_t value);
+
+extern uint16_t i8080_read_reg16(reg_t reg);
+extern void i8080_write_reg16(reg_t reg, uint16_t value);
+
+extern int i8080_exec(int cycles);
+
+#endif
+
diff --git a/plat/cpmz80/emu/main.c b/plat/cpmz80/emu/main.c
new file mode 100644 (file)
index 0000000..98eca0b
--- /dev/null
@@ -0,0 +1,83 @@
+#include <stdio.h>
+#include <stdlib.h>
+#include <stdint.h>
+#include <stdarg.h>
+#include <getopt.h>
+#include <ctype.h>
+#include "globals.h"
+
+bool flag_enter_debugger = false;
+char* const* user_command_line = NULL;
+
+void fatal(const char* message, ...)
+{
+       va_list ap;
+       va_start(ap, message);
+       fprintf(stderr, "fatal: ");
+       vfprintf(stderr, message, ap);
+       fprintf(stderr, "\n");
+       exit(1);
+}
+
+static void syntax(void)
+{
+       printf("cpm [<flags>] [command] [args]:\n");
+       printf("  -h             this help\n");
+       printf("  -d             enter debugger on startup\n");
+       printf("  -p DRIVE=PATH  map a drive to a path (by default, A=.)\n");
+       printf("If command is specified, a Unix file of that name will be loaded and\n");
+       printf("injected directly into memory (it's not loaded through the CCP).\n");
+       printf("Arguments may also be provided, but note that any FCBs aren't set up,\n");
+       printf("so traditional Unix utilities probably won't work.\n");
+       exit(1);
+}
+
+static void parse_options(int argc, char* const* argv)
+{
+       for (;;)
+       {
+               switch (getopt(argc, argv, "hdp:"))
+               {
+                       case -1:
+                               goto end_of_flags;
+
+                       case 'd':
+                               flag_enter_debugger = true;
+                               break;
+
+                       case 'p':
+                       {
+                               if (!optarg[0] || (optarg[1] != '='))
+                                       fatal("invalid syntax in drive assignment");
+
+                               uint8_t drive = toupper(optarg[0]) - 'A';
+                               const char* path = &optarg[2];
+                               file_set_drive(drive, path);
+                               break;
+                       }
+
+                       default:
+                               syntax();
+               }
+       }
+
+end_of_flags:
+       user_command_line = &argv[optind];
+}
+
+int main(int argc, char* const* argv)
+{
+       files_init();
+       parse_options(argc, argv);
+
+       emulator_init();
+       bios_coldboot();
+       
+       for (;;)
+       {
+               emulator_run();
+       }
+
+       return 0;
+}
+
diff --git a/plat/cpmz80/include/ack/plat.h b/plat/cpmz80/include/ack/plat.h
new file mode 100644 (file)
index 0000000..321dadf
--- /dev/null
@@ -0,0 +1,14 @@
+/* $Source$
+ * $State$
+ * $Revision$
+ */
+
+#ifndef _ACK_PLAT_H
+#define _ACK_PLAT_H
+
+/* We're providing a time() system call rather than wanting a wrapper around
+ * gettimeofday() in the libc. */
+#define ACKCONF_WANT_EMULATED_TIME 0
+
+#endif
diff --git a/plat/cpmz80/include/build.lua b/plat/cpmz80/include/build.lua
new file mode 100644 (file)
index 0000000..7430e85
--- /dev/null
@@ -0,0 +1,25 @@
+include("plat/build.lua")
+
+headermap = {}
+packagemap = {}
+
+local function addheader(h)
+       headermap[h] = "./"..h
+       packagemap["$(PLATIND)/cpmz80/include/"..h] = "./"..h
+end
+
+addheader("ack/plat.h")
+addheader("sys/types.h")
+addheader("cpm.h")
+
+acklibrary {
+       name = "headers",
+       hdrs = headermap
+}
+
+installable {
+       name = "pkg",
+       map = packagemap
+}
+
+
diff --git a/plat/cpmz80/include/cpm.h b/plat/cpmz80/include/cpm.h
new file mode 100644 (file)
index 0000000..bdda5ed
--- /dev/null
@@ -0,0 +1,66 @@
+/*
+ * unistd.h - standard system calls
+ */
+/* $Id$ */
+
+#ifndef _CPM_H
+#define _CPM_H
+
+#include <stdint.h>
+
+/* These interface provides a very bare-bones interface to the CP/M BDOS. Set
+ * the following four variables as you wish, call cpm_bdos(), and the contents
+ * of the variables will have been updated accordingly. */
+extern uint8_t cpm_a_register;
+extern uint16_t cpm_bc_register;
+extern uint16_t cpm_de_register;
+extern uint16_t cpm_hl_register;
+
+extern void cpm_bdos(void);
+
+/* Describes the available CP/M BDOS calls. They're a fairly conservative set
+ * taken from the CP/M 2.0 manual. */
+
+enum
+{
+       CPM_BDOS_SYSTEM_RESET,
+       CPM_BDOS_CONSOLE_INPUT,
+       CPM_BDOS_CONSOLE_OUTPUT,
+       CPM_BDOS_READER_INPUT,
+       CPM_BDOS_PUNCH_OUTPUT,
+       CPM_BDOS_LIST_OUTPUT,
+       CPM_BDOS_CONSOLE_IO,
+       CPM_BDOS_GET_IO_BYTE,
+       CPM_BDOS_SET_IO_BYTE,
+       CPM_BDOS_PRINT_STRING,
+       CPM_BDOS_READ_CONSOLE_BUFFER,
+       CPM_BDOS_GET_CONSOLE_STATUS,
+       CPM_BDOS_GET_VERSION_NUMBER,
+       CPM_BDOS_RESET_DISK_SYSTEM,
+       CPM_BDOS_SELECT_DISK,
+       CPM_BDOS_OPEN_FILE,
+       CPM_BDOS_CLOSE_FILE,
+       CPM_BDOS_SEARCHFIRST,
+       CPM_BDOS_SEARCHNEXT,
+       CPM_BDOS_DELETE_FILE,
+       CPM_BDOS_READ_SEQ,
+       CPM_BDOS_WRITE_SEQ,
+       CPM_BDOS_MAKE_FILE,
+       CPM_BDOS_RENAME_FILE,
+       CPM_BDOS_GET_LOGIN_VECTOR,
+       CPM_BDOS_GET_CURRENT_DISK,
+       CPM_BDOS_SET_DMA_ADDRESS,
+       CPM_BDOS_GET_ALLOC_VECTOR,
+       CPM_BDOS_WRITE_PROTECT,
+       CPM_BDOS_GET_RO_VECTOR,
+       CPM_BDOS_SET_FILE_ATTR,
+       CPM_BDOS_GET_DISK_PARMS,
+       CPM_BDOS_SETGET_USER,
+       CPM_BDOS_READ_RANDOM,
+       CPM_BDOS_WRITE_RANDOM,
+       CPM_BDOS_GET_FILE_SIZE,
+       CPM_BDOS_SET_RANDOM
+};
+
+#endif
diff --git a/plat/cpmz80/include/sys/types.h b/plat/cpmz80/include/sys/types.h
new file mode 100644 (file)
index 0000000..6a0c3d3
--- /dev/null
@@ -0,0 +1,9 @@
+#ifndef _SYS_TYPES_H
+#define _SYS_TYPES_H
+
+typedef int pid_t;
+typedef int mode_t;
+typedef long time_t;
+typedef long suseconds_t;
+
+#endif
diff --git a/plat/cpmz80/libsys/_bdos.s b/plat/cpmz80/libsys/_bdos.s
new file mode 100644 (file)
index 0000000..9b6f548
--- /dev/null
@@ -0,0 +1,41 @@
+#
+! $Source$
+! $State$
+! $Revision$
+
+! Declare segments (the order is important).
+
+.sect .text
+.sect .rom
+.sect .data
+.sect .bss
+
+.sect .text
+
+! Calls a BDOS routine.
+
+.define _cpm_bdos
+_cpm_bdos:
+       push bc
+       
+       ld a, (_cpm_a_register)
+       ld bc, (_cpm_bc_register)
+       ld de, (_cpm_de_register)
+       ld hl, (_cpm_hl_register)
+       
+       call 5
+       
+       ld (_cpm_hl_register), hl
+       ld (_cpm_de_register), de
+       ld (_cpm_bc_register), bc
+       ld (_cpm_a_register), a
+       
+       pop bc
+       ret
+
+.sect .bss
+.define _cpm_a_register, _cpm_bc_register, _cpm_de_register, _cpm_hl_register
+.comm _cpm_a_register, 1
+.comm _cpm_bc_register, 2
+.comm _cpm_de_register, 2
+.comm _cpm_hl_register, 2
diff --git a/plat/cpmz80/libsys/_hol0.s b/plat/cpmz80/libsys/_hol0.s
new file mode 100644 (file)
index 0000000..f01566f
--- /dev/null
@@ -0,0 +1,19 @@
+#
+! $Source$
+! $State$
+! $Revision$
+
+! Declare segments (the order is important).
+
+.sect .text
+.sect .rom
+.sect .data
+.sect .bss
+
+.sect .bss
+
+! This data block is used to store information about the current line number
+! and file.
+
+.define hol0
+.comm hol0, 8
diff --git a/plat/cpmz80/libsys/_inn2.s b/plat/cpmz80/libsys/_inn2.s
new file mode 100644 (file)
index 0000000..c415691
--- /dev/null
@@ -0,0 +1,50 @@
+#
+! $Source$
+! $State$
+! $Revision$
+
+! Declare segments (the order is important).
+
+.sect .text
+.sect .rom
+.sect .data
+.sect .bss
+
+! Bit test on 16 bits set
+! Expects on stack:    bit number
+!                      set to be tested
+! Yields in de-registers:      0 if bit is reset or bit number out of range
+!                              1 if bit is set
+
+.sect .text
+.define .inn2
+.inn2: pop hl
+       ld (.retadr),hl
+
+       pop de          !bit number
+       pop hl          !set to be tested
+       ld a,e
+       cp 16
+       jr nc,3f
+       cp 8
+       jr nc,1f
+       ld e,a
+       ld a,l          !l-reg contains the wanted bit
+       jr 2f
+
+1:     sub 8
+       ld e,a
+       ld a,h          !h-reg contains the wanted bit
+
+2:     dec e
+       jp m,4f
+       rra
+       jr 2b
+
+3:     xor a           !return 0 if bit number out of range
+4:     and 1
+       ld e,a
+       ld d,0
+
+       ld hl,(.retadr)
+       jp (hl)
diff --git a/plat/cpmz80/libsys/_trap.s b/plat/cpmz80/libsys/_trap.s
new file mode 100644 (file)
index 0000000..4b62b21
--- /dev/null
@@ -0,0 +1,220 @@
+#
+! $Source$
+! $State$
+! $Revision$
+
+! Declare segments (the order is important).
+
+.sect .text
+.sect .rom
+.sect .data
+.sect .bss
+
+.define .trp
+.define earray, erange, eset, eiovfl, efovfl, efunfl, eidivz, eidivz
+.define efdivz, eiund, efund, econv, estack, eheap, eillins, eoddz
+.define ecase, ememflt, ebadptr, ebadpc, ebadlae, ebadmon, ebadlin, ebadgto
+.define eunimpl
+
+.sect .text
+
+! Trap routine
+! Expects trap number on stack.
+! Just returns if trap has to be ignored.
+! Otherwise it calls a user-defined trap handler if provided.
+! When no user-defined trap handler is provided or when the user-defined
+! trap handler causes a new trap, a message is printed
+! and control is returned to the monitor.
+
+       EARRAY  =  0
+       ERANGE  =  1
+       ESET    =  2
+       EIOVFL  =  3
+       EFOVFL  =  4
+       EFUNFL  =  5
+       EIDIVZ  =  6
+       EFDIVZ  =  7
+       EIUND   =  8
+       EFUND   =  9
+       ECONV   = 10
+       ESTACK  = 16
+       EHEAP   = 17
+       EILLINS = 18
+       EODDZ   = 19
+       ECASE   = 20
+       EMEMFLT = 21
+       EBADPTR = 22
+       EBADPC  = 23
+       EBADLAE = 24
+       EBADMON = 25
+       EBADLIN = 26
+       EBADGTO = 27
+       EUNIMPL = 63            ! unimplemented em-instruction called
+
+earray:        ld hl,EARRAY
+       push hl
+       call .trp
+       ret
+
+erange:        ld hl,ERANGE
+       push hl
+       call .trp
+       ret
+
+eset:  ld hl,ESET
+       push hl
+       call .trp
+       ret
+
+eiovfl:        ld hl,EIOVFL
+       push hl
+       call .trp
+       ret
+
+efovfl:        ld hl,EFOVFL
+       push hl
+       call .trp
+       ret
+
+efunfl:        ld hl,EFUNFL
+       push hl
+       call .trp
+       ret
+
+eidivz:        ld hl,EIDIVZ
+       push hl
+       call .trp
+       ret
+
+efdivz:        ld hl,EFDIVZ
+       push hl
+       call .trp
+       ret
+
+eiund: ld hl,EIUND
+       push hl
+       call .trp
+       ret
+
+efund: ld hl,EFUND
+       push hl
+       call .trp
+       ret
+
+econv: ld hl,ECONV
+       push hl
+       call .trp
+       ret
+
+estack:        ld hl,ESTACK
+       push hl
+       call .trp
+       ret
+
+eheap: ld hl,EHEAP
+       push hl
+       call .trp
+       ret
+
+eillins:ld hl,EILLINS
+       push hl
+       call .trp
+       ret
+
+eoddz: ld hl,EODDZ
+       push hl
+       call .trp
+       ret
+
+ecase: ld hl,ECASE
+       push hl
+       call .trp
+       ret
+
+ememflt:ld hl,EMEMFLT
+       push hl
+       call .trp
+       ret
+
+ebadptr:ld hl,EBADPTR
+       push hl
+       call .trp
+       ret
+
+ebadpc:        ld hl,EBADPC
+       push hl
+       call .trp
+       ret
+
+ebadlae:ld hl,EBADLAE
+       push hl
+       call .trp
+       ret
+
+ebadmon:ld hl,EBADMON
+       push hl
+       call .trp
+       ret
+
+ebadlin:ld hl,EBADLIN
+       push hl
+       call .trp
+       ret
+
+ebadgto:ld hl,EBADGTO
+       push hl
+       call .trp
+       ret
+
+eunimpl:ld hl,EUNIMPL
+       push hl
+       call .trp
+       ret
+
+.trp:
+       pop hl
+       ex (sp),hl
+       push hl                 ! trap number and return address exchanged
+       ld a,l
+       cp 16
+       jr nc,3f                ! jump if trap cannot be ignored
+
+! check if trap has to be ignored
+       ex de,hl                ! de = trap number
+       ld hl,(.ignmask)
+       push hl                 ! hl = set to be tested
+       push de
+       call .inn2              ! de = 1 if bit is set, 0 otherwise
+       ld a,e
+       rra
+       jr nc,3f                ! jump if trap should not be ignored
+       pop hl                  ! remove trap number
+       ret                     ! OGEN DICHT EN ... SPRING!!!
+
+3:
+       ld hl,(.trapproc)       ! user defined trap handler?
+       ld a,l
+       or h
+       jr z,1f                 ! jump if there was not
+       xor a
+       ld (.trapproc),a        ! .trapproc := 0
+       ld (.trapproc+1),a
+       ld de,2f                
+       push de
+       jp (hl)                 ! call user defined trap handler
+2:
+       pop de
+       ret
+1:
+       ld hl, 6
+       push hl
+       ld hl, text
+       push hl
+       ld hl, 1
+       push hl
+       call _write
+       jp EXIT
+
+.sect .rom
+text: .ascii "TRAP!\n"
+
diff --git a/plat/cpmz80/libsys/brk.c b/plat/cpmz80/libsys/brk.c
new file mode 100644 (file)
index 0000000..6c139dd
--- /dev/null
@@ -0,0 +1,55 @@
+/* $Source$
+ * $State$
+ * $Revision$
+ */
+
+#include <stdlib.h>
+#include <errno.h>
+#include <unistd.h>
+
+#define        OUT_OF_MEMORY (void*)(-1)       /* sbrk returns this on failure */
+#define STACK_BUFFER 128 /* number of bytes to leave for stack */
+
+extern char _end[1];
+static char* current = _end;
+
+int brk(void* newend)
+{
+       /* We determine the amount of free memory by looking at the address of the
+        * BDOS vector at 0x0006. */
+       char* memtop = (char*) ((*(unsigned char*)0x0007)<<8);
+       char* p = newend;
+       
+       if ((p >= memtop) ||
+           (p < _end)) 
+               return -1;
+               
+       current = p;
+       return 0;
+}
+
+void* sbrk(int increment)
+{
+       char* old;
+       char* new;
+       
+       if (increment == 0)
+               return current;
+               
+       old = current;
+       new = old + increment;
+
+       if ((increment > 0) && (new <= old))
+               goto out_of_memory;
+       else if ((increment < 0) && (new >= old))
+               goto out_of_memory;
+
+       if (brk(new) < 0)
+               goto out_of_memory;
+
+       return old;
+
+out_of_memory:
+       errno = ENOMEM;
+       return OUT_OF_MEMORY;
+}
diff --git a/plat/cpmz80/libsys/build.lua b/plat/cpmz80/libsys/build.lua
new file mode 100644 (file)
index 0000000..1280390
--- /dev/null
@@ -0,0 +1,15 @@
+acklibrary {
+    name = "lib",
+    srcs = {
+        "./*.c",
+        "./*.s",
+    },
+       deps = {
+               "lang/cem/libcc.ansi/headers+headers",
+               "plat/cpmz80/include+headers",
+       },
+    vars = {
+        plat = "cpmz80"
+    }
+}
+
diff --git a/plat/cpmz80/libsys/close.c b/plat/cpmz80/libsys/close.c
new file mode 100644 (file)
index 0000000..1c57002
--- /dev/null
@@ -0,0 +1,14 @@
+/* $Source$
+ * $State$
+ * $Revision$
+ */
+
+#include <stdlib.h>
+#include <errno.h>
+#include <unistd.h>
+
+int close(int fd)
+{
+       errno = EBADF;
+       return -1;
+}
diff --git a/plat/cpmz80/libsys/creat.c b/plat/cpmz80/libsys/creat.c
new file mode 100644 (file)
index 0000000..65af5c2
--- /dev/null
@@ -0,0 +1,13 @@
+/* $Source$
+ * $State$
+ * $Revision$
+ */
+
+#include <stdlib.h>
+#include <errno.h>
+#include <unistd.h>
+
+int creat(const char* path, int mode)
+{
+       return open(path, O_CREAT|O_WRONLY|O_TRUNC, mode);
+}
diff --git a/plat/cpmz80/libsys/errno.s b/plat/cpmz80/libsys/errno.s
new file mode 100644 (file)
index 0000000..9858d26
--- /dev/null
@@ -0,0 +1,28 @@
+#
+! $Source$
+! $State$
+! $Revision$
+
+! Declare segments (the order is important).
+
+.sect .text
+.sect .rom
+.sect .data
+.sect .bss
+
+#define D(e) .define e; e
+
+.sect .data
+
+! Define various ACK error numbers. Note that these are *not* ANSI C
+! errnos, and are used for different purposes.
+
+D(ERANGE)         = 1
+D(ESET)           = 2
+D(EIDIVZ)         = 6
+D(EHEAP)          = 17
+D(EILLINS)        = 18
+D(EODDZ)          = 19
+D(ECASE)          = 20
+D(EBADMON)        = 25
+
diff --git a/plat/cpmz80/libsys/getpid.c b/plat/cpmz80/libsys/getpid.c
new file mode 100644 (file)
index 0000000..5e6eb00
--- /dev/null
@@ -0,0 +1,13 @@
+/* $Source$
+ * $State$
+ * $Revision$
+ */
+
+#include <stdlib.h>
+#include <errno.h>
+#include <unistd.h>
+
+pid_t getpid(void)
+{
+       return 0;
+}
diff --git a/plat/cpmz80/libsys/isatty.c b/plat/cpmz80/libsys/isatty.c
new file mode 100644 (file)
index 0000000..ad01e34
--- /dev/null
@@ -0,0 +1,13 @@
+/* $Source$
+ * $State$
+ * $Revision$
+ */
+
+#include <stdlib.h>
+#include <errno.h>
+#include <unistd.h>
+
+int isatty(int fd)
+{
+       return 1;
+}
diff --git a/plat/cpmz80/libsys/kill.c b/plat/cpmz80/libsys/kill.c
new file mode 100644 (file)
index 0000000..4a179c4
--- /dev/null
@@ -0,0 +1,14 @@
+/* $Source$
+ * $State$
+ * $Revision$
+ */
+
+#include <stdlib.h>
+#include <errno.h>
+#include <unistd.h>
+
+int kill(pid_t pid, int sig)
+{
+       errno = EINVAL;
+       return -1;
+}
diff --git a/plat/cpmz80/libsys/lseek.c b/plat/cpmz80/libsys/lseek.c
new file mode 100644 (file)
index 0000000..ecbc4b5
--- /dev/null
@@ -0,0 +1,14 @@
+/* $Source$
+ * $State$
+ * $Revision$
+ */
+
+#include <stdlib.h>
+#include <errno.h>
+#include <unistd.h>
+
+off_t lseek(int fd, off_t offset, int whence)
+{
+       errno = EINVAL;
+       return -1;
+}
diff --git a/plat/cpmz80/libsys/open.c b/plat/cpmz80/libsys/open.c
new file mode 100644 (file)
index 0000000..f3522ea
--- /dev/null
@@ -0,0 +1,14 @@
+/* $Source$
+ * $State$
+ * $Revision$
+ */
+
+#include <stdlib.h>
+#include <errno.h>
+#include <unistd.h>
+
+int open(const char* path, int access, ...)
+{
+       errno = EACCES;
+       return -1;
+}
diff --git a/plat/cpmz80/libsys/read.c b/plat/cpmz80/libsys/read.c
new file mode 100644 (file)
index 0000000..df4a3ef
--- /dev/null
@@ -0,0 +1,53 @@
+/* $Source$
+ * $State$
+ * $Revision$
+ */
+
+#include <stdlib.h>
+#include <errno.h>
+#include <unistd.h>
+#include <cpm.h>
+
+ssize_t read(int fd, void* buffer, size_t count)
+{
+       short save;
+       unsigned char before_n;
+
+       /* We're only allowed to read from fd 0, 1 or 2. */
+       if ((fd < 0) || (fd > 2))
+       {
+               errno = EBADF;
+               return -1;
+       }
+
+       /* We need room for at least 1 char plus '\n'. */
+       if (count < 2)
+       {
+               errno = EINVAL;
+               return -1;
+       }
+
+       /* Make room to append '\n' later. */
+       before_n = count > 255 ? 255 : count - 1;
+
+       /* Borrow 2 bytes of RAM before the buffer. */
+       /* This might overwrite count!!! */
+       save = ((short*)buffer)[-1];
+
+       /* Read one line from the console. */
+       ((unsigned char*)buffer)[-2] = before_n;
+       cpm_bc_register = CPM_BDOS_READ_CONSOLE_BUFFER;
+       cpm_de_register = (uint16_t)(char*)buffer - 2;
+       cpm_bdos();
+       before_n = ((unsigned char*)buffer)[-1];
+
+       ((char*)buffer)[before_n] = '\n'; /* Append '\n'. */
+       ((short*)buffer)[-1] = save; /* Give back borrowed bytes. */
+
+       /* Echo '\n' to console. */
+       cpm_bc_register = CPM_BDOS_PRINT_STRING;
+       cpm_de_register = (uint16_t)"\r\n$";
+       cpm_bdos();
+
+       return (int)before_n + 1;
+}
diff --git a/plat/cpmz80/libsys/signal.c b/plat/cpmz80/libsys/signal.c
new file mode 100644 (file)
index 0000000..8f145f6
--- /dev/null
@@ -0,0 +1,14 @@
+/* $Source$
+ * $State$
+ * $Revision$
+ */
+
+#include <stdlib.h>
+#include <errno.h>
+#include <unistd.h>
+#include <signal.h>
+
+sighandler_t signal(int signum, sighandler_t handler)
+{
+       return SIG_DFL;
+}
diff --git a/plat/cpmz80/libsys/time.c b/plat/cpmz80/libsys/time.c
new file mode 100644 (file)
index 0000000..4215a3b
--- /dev/null
@@ -0,0 +1,16 @@
+/* $Source$
+ * $State$
+ * $Revision$
+ */
+
+#include <stdlib.h>
+#include <errno.h>
+#include <unistd.h>
+#include <time.h>
+
+time_t time(time_t* t)
+{
+       if (t)
+               *t = 0;
+       return 0;
+}
diff --git a/plat/cpmz80/libsys/write.c b/plat/cpmz80/libsys/write.c
new file mode 100644 (file)
index 0000000..21dbc90
--- /dev/null
@@ -0,0 +1,51 @@
+/* $Source$
+ * $State$
+ * $Revision$
+ */
+
+#include <stdlib.h>
+#include <errno.h>
+#include <unistd.h>
+#include <cpm.h>
+
+void _sys_write_tty(char c)
+{
+       cpm_bc_register = CPM_BDOS_CONSOLE_OUTPUT;
+       cpm_de_register = c;
+       cpm_bdos();
+
+       if (c == '\n')
+       {
+               cpm_bc_register = CPM_BDOS_CONSOLE_OUTPUT;
+               cpm_de_register = '\r';
+               cpm_bdos();
+       }
+}
+
+ssize_t write(int fd, void* buffer, size_t count)
+{
+       int i;
+       char* p = buffer;
+       
+       /* We're only allowed to write to fd 0, 1 or 2. */
+       
+       if ((fd < 0) || (fd > 2))
+       {
+               errno = EBADF;
+               return -1;
+       }
+       
+       /* Write all data. */
+       
+       i = 0;
+       while (i < count)
+       {
+               _sys_write_tty(*p++);
+                       
+               i++;
+       }
+       
+       /* No failures. */
+       
+       return count;
+}
diff --git a/plat/cpmz80/tests/build.lua b/plat/cpmz80/tests/build.lua
new file mode 100644 (file)
index 0000000..392a41e
--- /dev/null
@@ -0,0 +1,8 @@
+include("tests/plat/build.lua")
+
+plat_testsuite {
+    name = "tests",
+    plat = "cpmz80",
+    method = "plat/cpmz80/emu+emu",
+       skipsets = {"floats"},
+}