Remove the old make-based build system, plus some big chunks of horribly
obsolete protomake build system.
This commit is contained in:
@@ -1,3 +0,0 @@
|
||||
include lang/basic/lib/build.mk
|
||||
include lang/basic/src/build.mk
|
||||
|
||||
@@ -1,48 +0,0 @@
|
||||
define build-runtime-libbasic-impl
|
||||
|
||||
$(call reset)
|
||||
$(eval objdir := $(PLATFORM))
|
||||
|
||||
$(call ackfile, lang/basic/lib/fif.e)
|
||||
$(call ackfile, lang/basic/lib/fef.e)
|
||||
$(call ackfile, lang/basic/lib/setline.e)
|
||||
$(call ackfile, lang/basic/lib/abs.c)
|
||||
$(call ackfile, lang/basic/lib/asc.c)
|
||||
$(call ackfile, lang/basic/lib/asrt.c)
|
||||
$(call ackfile, lang/basic/lib/atn.c)
|
||||
$(call ackfile, lang/basic/lib/chr.c)
|
||||
$(call ackfile, lang/basic/lib/conversion.c)
|
||||
$(call ackfile, lang/basic/lib/error.c)
|
||||
$(call ackfile, lang/basic/lib/exp.c)
|
||||
$(call ackfile, lang/basic/lib/file.c)
|
||||
$(call ackfile, lang/basic/lib/hlt.c)
|
||||
$(call ackfile, lang/basic/lib/io.c)
|
||||
$(call ackfile, lang/basic/lib/log.c)
|
||||
$(call ackfile, lang/basic/lib/mki.c)
|
||||
$(call ackfile, lang/basic/lib/oct.c)
|
||||
$(call ackfile, lang/basic/lib/peek.c)
|
||||
$(call ackfile, lang/basic/lib/power.c)
|
||||
$(call ackfile, lang/basic/lib/print.c)
|
||||
$(call ackfile, lang/basic/lib/random.c)
|
||||
$(call ackfile, lang/basic/lib/read.c)
|
||||
$(call ackfile, lang/basic/lib/return.c)
|
||||
$(call ackfile, lang/basic/lib/salloc.c)
|
||||
$(call ackfile, lang/basic/lib/sgn.c)
|
||||
$(call ackfile, lang/basic/lib/sin.c)
|
||||
$(call ackfile, lang/basic/lib/sqt.c)
|
||||
$(call ackfile, lang/basic/lib/stop.c)
|
||||
$(call ackfile, lang/basic/lib/string.c)
|
||||
$(call ackfile, lang/basic/lib/swap.c)
|
||||
$(call ackfile, lang/basic/lib/trace.c)
|
||||
$(call ackfile, lang/basic/lib/trap.c)
|
||||
$(call ackfile, lang/basic/lib/write.c)
|
||||
|
||||
$(call acklibrary, $(LIBDIR)/$(PLATFORM)/libbasic.a)
|
||||
$(call installto, $(PLATIND)/$(PLATFORM)/libbasic.a)
|
||||
|
||||
endef
|
||||
|
||||
build-runtime-libbasic = $(eval $(build-runtime-libbasic-impl))
|
||||
|
||||
$(eval RUNTIMES += libbasic)
|
||||
|
||||
@@ -1,44 +0,0 @@
|
||||
D := lang/basic/src
|
||||
|
||||
define build-bem-impl
|
||||
|
||||
$(call reset)
|
||||
$(eval cflags += -I$(OBJDIR)/$D -I$D)
|
||||
|
||||
$(call cfile, $D/bem.c)
|
||||
$(call cfile, $D/symbols.c)
|
||||
$(call cfile, $D/initialize.c)
|
||||
$(call cfile, $D/compile.c)
|
||||
$(call cfile, $D/parsepar.c)
|
||||
$(call cfile, $D/gencode.c)
|
||||
$(call cfile, $D/util.c)
|
||||
$(call cfile, $D/graph.c)
|
||||
$(call cfile, $D/eval.c)
|
||||
$(call cfile, $D/func.c)
|
||||
|
||||
$(call llgen, $(OBJDIR)/$D, $D/basic.g)
|
||||
|
||||
$(eval g := $(OBJDIR)/$D/tokentab.h)
|
||||
$(eval $q: $g)
|
||||
$(eval CLEANABLES += $g)
|
||||
$g: $D/maketokentab $(OBJDIR)/$D/Lpars.h
|
||||
@echo TOKENTAB $$@
|
||||
@mkdir -p $$(dir $$@)
|
||||
$(hide) cd $(OBJDIR)/$D && $(abspath $$^)
|
||||
|
||||
$(eval $q: $(OBJDIR)/$D/Lpars.h)
|
||||
$(eval $q: $(INCDIR)/print.h)
|
||||
|
||||
$(call rawfile, $(LIBEM_MES))
|
||||
$(call rawfile, $(LIBEMK))
|
||||
$(call rawfile, $(LIBEM_DATA))
|
||||
$(call rawfile, $(LIBALLOC))
|
||||
$(call rawfile, $(LIBPRINT))
|
||||
$(call rawfile, $(LIBSTRING))
|
||||
$(call rawfile, $(LIBSYSTEM))
|
||||
$(call cprogram, $(BINDIR)/em_bem)
|
||||
$(call installto, $(PLATDEP)/em_bem)
|
||||
|
||||
endef
|
||||
|
||||
$(eval $(build-bem-impl))
|
||||
@@ -1,6 +0,0 @@
|
||||
include lang/cem/cpp.ansi/build.mk
|
||||
include lang/cem/cemcom.ansi/build.mk
|
||||
include lang/cem/libcc.ansi/build.mk
|
||||
|
||||
$(eval CCOMPILER := $(CPPANSI) $(CEMCOMANSI) $(LIBCCANSIHEADERS))
|
||||
|
||||
@@ -1,156 +0,0 @@
|
||||
D := lang/cem/cemcom.ansi
|
||||
|
||||
define build-cemcom-ansi-allocd-header
|
||||
$(eval g := $(OBJDIR)/$D/$(strip $1).h)
|
||||
$g: $D/$(strip $1).str $D/make.allocd
|
||||
@echo ALLOCD $$@
|
||||
@mkdir -p $$(dir $$@)
|
||||
$(hide) $D/make.allocd < $$^ > $$@
|
||||
|
||||
$(eval CLEANABLES += $g)
|
||||
$(eval $q: $g)
|
||||
endef
|
||||
|
||||
define build-cemcom-ansi-next
|
||||
$(eval CLEANABLES += $(OBJDIR)/$D/next.c)
|
||||
$(OBJDIR)/$D/next.c: $D/make.next $1
|
||||
@echo NEXT $$@
|
||||
@mkdir -p $$(dir $$@)
|
||||
$(hide) $$^ > $$@
|
||||
$(call cfile, $(OBJDIR)/$D/next.c)
|
||||
|
||||
$(foreach f, $1, $(call build-cemcom-ansi-allocd-header, \
|
||||
$(basename $(notdir $f))))
|
||||
endef
|
||||
|
||||
define build-cemcom-ansi-impl
|
||||
|
||||
$(call reset)
|
||||
$(eval cflags += -I$(OBJDIR)/$D -I$D)
|
||||
|
||||
$(call cfile, $D/arith.c)
|
||||
$(call dependson, $(INCDIR)/flt_arith.h)
|
||||
|
||||
$(call cfile, $D/blocks.c)
|
||||
$(call dependson, $(INCDIR)/em_codeEK.h)
|
||||
|
||||
$(call cfile, $D/LLlex.c)
|
||||
$(call cfile, $D/LLmessage.c)
|
||||
|
||||
$(call cfile, $D/ch3.c)
|
||||
$(call cfile, $D/ch3bin.c)
|
||||
$(call cfile, $D/ch3mon.c)
|
||||
$(call cfile, $D/code.c)
|
||||
$(call cfile, $D/conversion.c)
|
||||
$(call cfile, $D/cstoper.c)
|
||||
$(call cfile, $D/dataflow.c)
|
||||
$(call cfile, $D/declarator.c)
|
||||
$(call cfile, $D/decspecs.c)
|
||||
$(call cfile, $D/domacro.c)
|
||||
$(call cfile, $D/dumpidf.c)
|
||||
$(call cfile, $D/error.c)
|
||||
$(call cfile, $D/eval.c)
|
||||
$(call cfile, $D/expr.c)
|
||||
$(call cfile, $D/field.c)
|
||||
$(call cfile, $D/fltcstoper.c)
|
||||
$(call cfile, $D/idf.c)
|
||||
$(call cfile, $D/init.c)
|
||||
$(call cfile, $D/input.c)
|
||||
$(call cfile, $D/l_comment.c)
|
||||
$(call cfile, $D/l_ev_ord.c)
|
||||
$(call cfile, $D/l_lint.c)
|
||||
$(call cfile, $D/l_misc.c)
|
||||
$(call cfile, $D/l_outdef.c)
|
||||
$(call cfile, $D/l_states.c)
|
||||
$(call cfile, $D/label.c)
|
||||
$(call cfile, $D/main.c)
|
||||
$(call cfile, $D/options.c)
|
||||
$(call cfile, $D/pragma.c)
|
||||
$(call cfile, $D/proto.c)
|
||||
$(call cfile, $D/replace.c)
|
||||
$(call cfile, $D/skip.c)
|
||||
$(call cfile, $D/stab.c)
|
||||
$(call cfile, $D/stack.c)
|
||||
$(call cfile, $D/struct.c)
|
||||
$(call cfile, $D/switch.c)
|
||||
$(call cfile, $D/tokenname.c)
|
||||
$(call cfile, $D/type.c)
|
||||
$(call cfile, $D/util.c)
|
||||
|
||||
$(call llgen, $(OBJDIR)/$D, \
|
||||
$(OBJDIR)/$D/tokenfile.g \
|
||||
$D/program.g \
|
||||
$D/declar.g \
|
||||
$D/expression.g \
|
||||
$D/statement.g \
|
||||
$D/ival.g)
|
||||
|
||||
$(eval CLEANABLES += $(OBJDIR)/$D/tokenfile.g)
|
||||
$(OBJDIR)/$D/tokenfile.g: $D/make.tokfile $D/tokenname.c
|
||||
@echo TOKENFILE $$@
|
||||
@mkdir -p $$(dir $$@)
|
||||
$(hide) sh $D/make.tokfile < $D/tokenname.c > $$@
|
||||
|
||||
$(call tabgen, $D/char.tab)
|
||||
|
||||
$(eval $q: $(OBJDIR)/$D/parameters.h)
|
||||
|
||||
$(eval CLEANABLES += $(OBJDIR)/$D/parameters.h)
|
||||
$(OBJDIR)/$D/parameters.h: $D/BigPars
|
||||
@echo PARAMETERS $$@
|
||||
@mkdir -p $$(dir $$@)
|
||||
$(hide) echo '#ifndef PARAMETERS_H' > $$@
|
||||
$(hide) echo '#define PARAMETERS_H' >> $$@
|
||||
$(hide) grep -v '^!' < $D/BigPars >> $$@
|
||||
$(hide) echo '#endif' >> $$@
|
||||
|
||||
$(eval CLEANABLES += $(OBJDIR)/$D/symbol2str.c)
|
||||
$(OBJDIR)/$D/symbol2str.c: $D/make.tokcase $D/tokenname.c
|
||||
@echo TOKCASE $$@
|
||||
@mkdir -p $$(dir $$@)
|
||||
$(hide) $D/make.tokcase < $D/tokenname.c > $$@
|
||||
$(call cfile, $(OBJDIR)/$D/symbol2str.c)
|
||||
|
||||
$(call build-cemcom-ansi-next, \
|
||||
$D/code.str \
|
||||
$D/declar.str \
|
||||
$D/def.str \
|
||||
$D/expr.str \
|
||||
$D/field.str \
|
||||
$D/estack.str \
|
||||
$D/util.str \
|
||||
$D/proto.str \
|
||||
$D/replace.str \
|
||||
$D/idf.str \
|
||||
$D/macro.str \
|
||||
$D/stack.str \
|
||||
$D/stmt.str \
|
||||
$D/struct.str \
|
||||
$D/switch.str \
|
||||
$D/type.str \
|
||||
$D/l_brace.str \
|
||||
$D/l_state.str \
|
||||
$D/l_outdef.str)
|
||||
|
||||
$(eval $q: $(OBJDIR)/$D/Lpars.h)
|
||||
|
||||
$(call rawfile, $(LIBEM_MES))
|
||||
$(call rawfile, $(LIBEMK))
|
||||
$(call rawfile, $(LIBEM_DATA))
|
||||
$(call rawfile, $(LIBINPUT))
|
||||
$(call rawfile, $(LIBASSERT))
|
||||
$(call rawfile, $(LIBALLOC))
|
||||
$(call rawfile, $(LIBFLT_ARITH))
|
||||
$(call rawfile, $(LIBPRINT))
|
||||
$(call rawfile, $(LIBSYSTEM))
|
||||
$(call rawfile, $(LIBSTRING))
|
||||
$(call cprogram, $(BINDIR)/cemcom.ansi)
|
||||
$(call installto, $(PLATDEP)/em_cemcom.ansi)
|
||||
$(eval CEMCOMANSI := $o)
|
||||
|
||||
$(call reset)
|
||||
$(eval q := $D/cemcom.ansi.1)
|
||||
$(call installto, $(INSDIR)/share/man/man1/cemcom.6)
|
||||
endef
|
||||
|
||||
$(eval $(build-cemcom-ansi-impl))
|
||||
@@ -1,104 +0,0 @@
|
||||
D := lang/cem/cpp.ansi
|
||||
|
||||
define build-cpp-ansi-allocd-header
|
||||
$1: $2 $D/make.allocd
|
||||
@echo ALLOCD $1
|
||||
@mkdir -p $(dir $1)
|
||||
$(hide) $D/make.allocd < $2 > $1
|
||||
|
||||
$(eval CLEANABLES += $1)
|
||||
endef
|
||||
|
||||
define build-cpp-ansi-tokfile
|
||||
$(OBJDIR)/$D/tokenfile.g: $D/make.tokfile $D/tokenname.c
|
||||
@echo TOKENFILE $$@
|
||||
@mkdir -p $$(dir $$@)
|
||||
$(hide) sh $D/make.tokfile < $D/tokenname.c > $$@
|
||||
|
||||
$(eval CLEANABLES += $(OBJDIR)/$D/tokenfile.g)
|
||||
endef
|
||||
|
||||
define build-cpp-ansi-tokcase
|
||||
$(OBJDIR)/$D/symbol2str.c: $D/make.tokcase $D/tokenname.c
|
||||
@echo TOKCASE $$@
|
||||
@mkdir -p $$(dir $$@)
|
||||
$(hide) sh $D/make.tokcase < $D/tokenname.c > $$@
|
||||
|
||||
$(eval CLEANABLES += $(OBJDIR)/$D/symbol2str.c)
|
||||
endef
|
||||
|
||||
define build-cpp-ansi-next
|
||||
$(OBJDIR)/$D/next.c: $D/make.next $D/macro.str $D/replace.str
|
||||
@echo NEXT $$@
|
||||
@mkdir -p $$(dir $$@)
|
||||
$(hide) sh $D/make.next $D/macro.str $D/replace.str > $$@
|
||||
|
||||
$(eval CLEANABLES += $(OBJDIR)/$D/next.c)
|
||||
endef
|
||||
|
||||
define build-cpp-ansi-impl
|
||||
$(eval $(call build-cpp-ansi-next))
|
||||
$(eval $(call build-cpp-ansi-tokcase))
|
||||
$(eval $(call build-cpp-ansi-tokfile))
|
||||
$(eval $(call build-cpp-ansi-allocd-header, \
|
||||
$(OBJDIR)/$D/macro.h, $D/macro.str \
|
||||
))
|
||||
$(eval $(call build-cpp-ansi-allocd-header, \
|
||||
$(OBJDIR)/$D/replace.h, $D/replace.str \
|
||||
))
|
||||
|
||||
$(call reset)
|
||||
$(eval cflags += -I$(OBJDIR)/$D -I$D)
|
||||
|
||||
$(call cfile, $D/LLlex.c)
|
||||
$(call cfile, $D/LLmessage.c)
|
||||
$(call cfile, $D/ch3bin.c)
|
||||
$(call cfile, $D/ch3mon.c)
|
||||
$(call cfile, $D/domacro.c)
|
||||
$(call cfile, $D/error.c)
|
||||
$(call cfile, $D/idf.c)
|
||||
$(call cfile, $D/init.c)
|
||||
$(call cfile, $D/input.c)
|
||||
$(call cfile, $D/main.c)
|
||||
$(call cfile, $D/options.c)
|
||||
$(call cfile, $D/preprocess.c)
|
||||
$(call cfile, $D/replace.c)
|
||||
$(call cfile, $D/skip.c)
|
||||
$(call cfile, $D/tokenname.c)
|
||||
$(call cfile, $D/expr.c)
|
||||
$(call cfile, $(OBJDIR)/$D/symbol2str.c)
|
||||
$(call cfile, $(OBJDIR)/$D/next.c)
|
||||
|
||||
$(call llgen, $(OBJDIR)/$D, $(OBJDIR)/$D/tokenfile.g $D/expression.g)
|
||||
|
||||
$(call rawfile, $(LIBINPUT))
|
||||
$(call rawfile, $(LIBASSERT))
|
||||
$(call rawfile, $(LIBALLOC))
|
||||
$(call rawfile, $(LIBPRINT))
|
||||
$(call rawfile, $(LIBSYSTEM))
|
||||
$(call rawfile, $(LIBSTRING))
|
||||
|
||||
$(call tabgen, $D/char.tab)
|
||||
|
||||
$(eval $q: \
|
||||
$(OBJDIR)/$D/macro.h \
|
||||
$(OBJDIR)/$D/Lpars.h \
|
||||
$(INCDIR)/alloc.h \
|
||||
$(INCDIR)/inp_pkg.spec \
|
||||
$(INCDIR)/idf_pkg.spec \
|
||||
$(OBJDIR)/$D/replace.h \
|
||||
$(INCDIR)/system.h \
|
||||
$(INCDIR)/inp_pkg.body \
|
||||
$(INCDIR)/inp_pkg.spec \
|
||||
$(INCDIR)/idf_pkg.body)
|
||||
|
||||
$(call cprogram, $(BINDIR)/cpp.ansi)
|
||||
$(call installto, $(PLATDEP)/cpp.ansi)
|
||||
$(eval CPPANSI := $o)
|
||||
|
||||
$(call reset)
|
||||
$(eval q := $D/ncpp.6)
|
||||
$(call installto, $(INSDIR)/share/man/man6/cpp.ansi.6)
|
||||
endef
|
||||
|
||||
$(eval $(build-cpp-ansi-impl))
|
||||
@@ -1,275 +0,0 @@
|
||||
define build-libcc-ansi-headers-install-one-impl
|
||||
$(call reset)
|
||||
$(eval q := lang/cem/libcc.ansi/headers/$(strip $1))
|
||||
$(call installto, $(PLATIND)/include/ansi/$(strip $1))
|
||||
$(eval LIBCCANSIHEADERS += $o)
|
||||
endef
|
||||
|
||||
define build-libcc-ansi-headers-impl
|
||||
$(eval g := \
|
||||
sys/time.h \
|
||||
sys/ioctl.h \
|
||||
assert.h \
|
||||
ctype.h \
|
||||
errno.h \
|
||||
fcntl.h \
|
||||
float.h \
|
||||
limits.h \
|
||||
math.h \
|
||||
malloc.h \
|
||||
setjmp.h \
|
||||
signal.h \
|
||||
stdarg.h \
|
||||
stddef.h \
|
||||
stdint.h \
|
||||
stdio.h \
|
||||
stdlib.h \
|
||||
string.h \
|
||||
time.h \
|
||||
iso646.h \
|
||||
stdbool.h \
|
||||
locale.h \
|
||||
tgmath.h)
|
||||
|
||||
$(eval LIBCCANSIHEADERS :=)
|
||||
$(foreach f,$g,$(call build-libcc-ansi-headers-install-one-impl,$f))
|
||||
endef
|
||||
|
||||
$(eval $(build-libcc-ansi-headers-impl))
|
||||
|
||||
define build-runtime-libcc-ansi-impl
|
||||
|
||||
$(call reset)
|
||||
$(eval objdir := $(PLATFORM))
|
||||
|
||||
# Assert
|
||||
|
||||
$(call ackfile, lang/cem/libcc.ansi/assert/assert.c)
|
||||
|
||||
# CType
|
||||
|
||||
$(call ackfile, lang/cem/libcc.ansi/ctype/tolower.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/ctype/toupper.c)
|
||||
$(call acktabgen, lang/cem/libcc.ansi/ctype/char.tab)
|
||||
|
||||
$(eval g := \
|
||||
isalnum.c \
|
||||
isalpha.c \
|
||||
iscntrl.c \
|
||||
isdigit.c \
|
||||
isgraph.c \
|
||||
islower.c \
|
||||
isprint.c \
|
||||
ispunct.c \
|
||||
isspace.c \
|
||||
isupper.c \
|
||||
isxdigit.c \
|
||||
isascii.c)
|
||||
$(eval g := $(addprefix $(OBJDIR)/$(objdir)/ctype/, $g))
|
||||
|
||||
$(wordlist 2, $(words $g), $g): $(firstword $g)
|
||||
$(firstword $g): lang/cem/libcc.ansi/ctype/genfiles
|
||||
@echo GENFILES $$@
|
||||
@mkdir -p $$(dir $$@)
|
||||
$(hide) cd $$(dir $$@) && sh $$(abspath $$^)
|
||||
|
||||
$(eval CLEANABLES += $g)
|
||||
$(foreach f, $g, $(call ackfile, $f))
|
||||
|
||||
# errno
|
||||
|
||||
$(call ackfile, lang/cem/libcc.ansi/errno/errlist.c)
|
||||
|
||||
# locale
|
||||
|
||||
$(call ackfile, lang/cem/libcc.ansi/locale/localeconv.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/locale/setlocale.c)
|
||||
|
||||
# math
|
||||
|
||||
$(call ackfile, lang/cem/libcc.ansi/math/asin.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/math/atan2.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/math/atan.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/math/ceil.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/math/fabs.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/math/pow.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/math/log10.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/math/log.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/math/sin.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/math/sinh.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/math/sqrt.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/math/tan.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/math/tanh.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/math/exp.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/math/ldexp.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/math/fmod.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/math/floor.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/math/hugeval.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/math/frexp.e)
|
||||
$(call ackfile, lang/cem/libcc.ansi/math/modf.e)
|
||||
$(call ackfile, lang/cem/libcc.ansi/math/isnan.c)
|
||||
|
||||
# Misc
|
||||
|
||||
$(call ackfile, lang/cem/libcc.ansi/misc/environ.c)
|
||||
# (lots of stuff missing here, as not being appropriate on modern systems)
|
||||
|
||||
# setjmp
|
||||
|
||||
$(call ackfile, lang/cem/libcc.ansi/setjmp/setjmp.e)
|
||||
|
||||
# signal
|
||||
|
||||
$(call ackfile, lang/cem/libcc.ansi/signal/raise.c)
|
||||
|
||||
# stdio
|
||||
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/tmpfile.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/tmpnam.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/fopen.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/freopen.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/setbuf.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/setvbuf.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/perror.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/fprintf.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/printf.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/sprintf.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/snprintf.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/vfprintf.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/vprintf.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/vsprintf.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/vsnprintf.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/doprnt.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/icompute.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/fscanf.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/scanf.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/sscanf.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/doscan.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/fgetc.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/fgets.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/getc.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/getchar.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/gets.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/putc.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/putchar.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/fputc.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/puts.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/fputs.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/ungetc.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/fread.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/fwrite.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/fgetpos.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/fsetpos.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/rewind.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/fseek.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/ftell.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/clearerr.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/feof.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/ferror.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/fileno.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/fltpr.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/ecvt.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/fillbuf.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/fclose.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/flushbuf.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/fflush.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdio/data.c)
|
||||
|
||||
# stdlib
|
||||
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdlib/abort.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdlib/abs.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdlib/atof.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdlib/atoi.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdlib/atol.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdlib/bsearch.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdlib/div.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdlib/atexit.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdlib/exit.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdlib/getenv.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdlib/setenv.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdlib/labs.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdlib/ldiv.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdlib/mblen.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdlib/mbstowcs.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdlib/mbtowc.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdlib/qsort.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdlib/rand.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdlib/strtod.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdlib/strtol.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdlib/wcstombs.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdlib/wctomb.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/stdlib/ext_comp.c)
|
||||
|
||||
$(eval g := $(OBJDIR)/$(objdir)/malloc.c)
|
||||
$(eval CLEANABLES += $g)
|
||||
$(eval srcs := \
|
||||
READ_ME size_type.h param.h impl.h check.h \
|
||||
log.h phys.h mal.c log.c phys.c check.c)
|
||||
$(eval srcs := $(addprefix lang/cem/libcc.ansi/stdlib/malloc/, $(srcs)))
|
||||
|
||||
$g: lang/cem/libcc.ansi/stdlib/malloc/add_file $(srcs)
|
||||
@echo MALLOC $g
|
||||
@mkdir -p $(dir $g)
|
||||
$(hide) $(RM) $g && for i in $(srcs); do \
|
||||
lang/cem/libcc.ansi/stdlib/malloc/add_file $$$$i >> $g; done
|
||||
|
||||
$(call ackfile, $g)
|
||||
|
||||
# String
|
||||
|
||||
$(call ackfile, lang/cem/libcc.ansi/string/memchr.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/string/memcmp.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/string/memcpy.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/string/memmove.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/string/memset.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/string/strcat.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/string/strchr.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/string/strcmp.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/string/strcoll.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/string/strcpy.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/string/strcspn.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/string/strerror.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/string/strncat.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/string/strncpy.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/string/strrchr.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/string/strstr.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/string/strlen.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/string/strtok.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/string/strpbrk.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/string/strspn.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/string/strncmp.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/string/strxfrm.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/string/strdup.c)
|
||||
|
||||
# Time
|
||||
|
||||
$(call ackfile, lang/cem/libcc.ansi/time/ctime.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/time/asctime.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/time/localtime.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/time/clock.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/time/difftime.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/time/gmtime.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/time/mktime.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/time/strftime.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/time/time.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/time/tzset.c)
|
||||
$(call ackfile, lang/cem/libcc.ansi/time/misc.c)
|
||||
|
||||
$(call acklibrary, $(LIBDIR)/$(PLATFORM)/libc.a)
|
||||
$(call installto, $(PLATIND)/$(PLATFORM)/libc.a)
|
||||
|
||||
# CRT
|
||||
|
||||
$(call reset)
|
||||
$(eval objdir := $(PLATFORM))
|
||||
$(eval ackflags += -Ih)
|
||||
$(call ackfile, lang/cem/libcc.ansi/head_ac.e)
|
||||
$(call installto, $(PLATIND)/$(PLATFORM)/c-ansi.o)
|
||||
|
||||
endef
|
||||
|
||||
build-runtime-libcc-ansi = $(eval $(build-runtime-libcc-ansi-impl))
|
||||
|
||||
$(eval RUNTIMES += libcc-ansi)
|
||||
|
||||
@@ -1,3 +0,0 @@
|
||||
include lang/m2/libm2/build.mk
|
||||
include lang/m2/comp/build.mk
|
||||
|
||||
@@ -1,129 +0,0 @@
|
||||
D := lang/m2/comp
|
||||
|
||||
define build-m2-allocd-header
|
||||
$2: $1 $D/make.allocd
|
||||
@echo ALLOCD $$@
|
||||
@mkdir -p $$(dir $$@)
|
||||
$(hide) $D/make.allocd < $$^ > $$@
|
||||
|
||||
$(eval CLEANABLES += $2)
|
||||
$(eval $q: $2)
|
||||
endef
|
||||
|
||||
define build-m2-next
|
||||
$(eval CLEANABLES += $(OBJDIR)/$D/next.c)
|
||||
$(OBJDIR)/$D/next.c: $D/make.next $1
|
||||
@echo NEXT $$@
|
||||
@mkdir -p $$(dir $$@)
|
||||
$(hide) $$^ > $$@
|
||||
$(call cfile, $(OBJDIR)/$D/next.c)
|
||||
|
||||
$(foreach f, $1, $(call build-m2-allocd-header, \
|
||||
$f, $(OBJDIR)/$(basename $f).h))
|
||||
endef
|
||||
|
||||
define build-m2-impl
|
||||
|
||||
$(call reset)
|
||||
$(eval cflags += -I$(OBJDIR)/$D -I$D)
|
||||
|
||||
$(call cfile, $D/LLlex.c)
|
||||
$(call cfile, $D/LLmessage.c)
|
||||
$(call cfile, $D/chk_expr.c)
|
||||
$(call cfile, $D/code.c)
|
||||
$(call cfile, $D/cstoper.c)
|
||||
$(call cfile, $D/def.c)
|
||||
$(call cfile, $D/defmodule.c)
|
||||
$(call cfile, $D/desig.c)
|
||||
$(call cfile, $D/enter.c)
|
||||
$(call cfile, $D/error.c)
|
||||
$(call cfile, $D/idf.c)
|
||||
$(call cfile, $D/input.c)
|
||||
$(call cfile, $D/lookup.c)
|
||||
$(call cfile, $D/main.c)
|
||||
$(call cfile, $D/misc.c)
|
||||
$(call cfile, $D/node.c)
|
||||
$(call cfile, $D/options.c)
|
||||
$(call cfile, $D/stab.c)
|
||||
$(call cfile, $D/tokenname.c)
|
||||
$(call cfile, $D/type.c)
|
||||
$(call cfile, $D/typequiv.c)
|
||||
$(call cfile, $D/walk.c)
|
||||
|
||||
$(call llgen, $(OBJDIR)/$D, \
|
||||
$(OBJDIR)/$D/tokenfile.g \
|
||||
$D/program.g \
|
||||
$D/declar.g \
|
||||
$D/expression.g \
|
||||
$D/statement.g)
|
||||
|
||||
$(eval CLEANABLES += $(OBJDIR)/$D/tokenfile.g)
|
||||
$(OBJDIR)/$D/tokenfile.g: $D/make.tokfile $D/tokenname.c
|
||||
@echo TOKENFILE $$@
|
||||
@mkdir -p $$(dir $$@)
|
||||
$(hide) sh $D/make.tokfile < $D/tokenname.c > $$@
|
||||
|
||||
$(call tabgen, $D/char.tab)
|
||||
|
||||
$(eval $q: $(OBJDIR)/$D/parameters.h)
|
||||
|
||||
$(eval CLEANABLES += $(OBJDIR)/$D/parameters.h)
|
||||
$(OBJDIR)/$D/parameters.h: $D/BigPars
|
||||
@echo PARAMETERS $$@
|
||||
@mkdir -p $$(dir $$@)
|
||||
$(hide) echo '#ifndef PARAMETERS_H' > $$@
|
||||
$(hide) echo '#define PARAMETERS_H' >> $$@
|
||||
$(hide) grep -v '^!' < $$^ >> $$@
|
||||
$(hide) echo '#endif' >> $$@
|
||||
|
||||
$(eval CLEANABLES += $(OBJDIR)/$D/symbol2str.c)
|
||||
$(OBJDIR)/$D/symbol2str.c: $D/make.tokcase $D/tokenname.c
|
||||
@echo TOKCASE $$@
|
||||
@mkdir -p $$(dir $$@)
|
||||
$(hide) $D/make.tokcase < $D/tokenname.c > $$@
|
||||
$(call cfile, $(OBJDIR)/$D/symbol2str.c)
|
||||
|
||||
$(call build-m2-next, \
|
||||
$D/def.H \
|
||||
$D/type.H \
|
||||
$D/real.H \
|
||||
$D/node.H)
|
||||
|
||||
$(call build-m2-allocd-header, $D/tmpvar.C, $(OBJDIR)/$D/tmpvar.c)
|
||||
$(call cfile, $(OBJDIR)/$D/tmpvar.c)
|
||||
|
||||
$(call build-m2-allocd-header, $D/casestat.C, $(OBJDIR)/$D/casestat.c)
|
||||
$(call cfile, $(OBJDIR)/$D/casestat.c)
|
||||
|
||||
$(call build-m2-allocd-header, $D/scope.C, $(OBJDIR)/$D/scope.c)
|
||||
$(call cfile, $(OBJDIR)/$D/scope.c)
|
||||
|
||||
$(eval $q: $(OBJDIR)/$D/Lpars.h)
|
||||
$(eval $q: $(INCDIR)/idf_pkg.spec)
|
||||
$(eval $q: $(INCDIR)/idf_pkg.body)
|
||||
$(eval $q: $(INCDIR)/inp_pkg.spec)
|
||||
$(eval $q: $(INCDIR)/inp_pkg.body)
|
||||
$(eval $q: $(INCDIR)/alloc.h)
|
||||
$(eval $q: $(INCDIR)/em_codeEK.h)
|
||||
$(eval $q: $(INCDIR)/print.h)
|
||||
$(eval $q: $(INCDIR)/system.h)
|
||||
|
||||
$(call rawfile, $(LIBEM_MES))
|
||||
$(call rawfile, $(LIBEMK))
|
||||
$(call rawfile, $(LIBEM_DATA))
|
||||
$(call rawfile, $(LIBINPUT))
|
||||
$(call rawfile, $(LIBASSERT))
|
||||
$(call rawfile, $(LIBALLOC))
|
||||
$(call rawfile, $(LIBFLT_ARITH))
|
||||
$(call rawfile, $(LIBPRINT))
|
||||
$(call rawfile, $(LIBSYSTEM))
|
||||
$(call rawfile, $(LIBSTRING))
|
||||
$(call cprogram, $(BINDIR)/em_m2)
|
||||
$(call installto, $(PLATDEP)/em_m2)
|
||||
|
||||
$(call reset)
|
||||
$(eval q := $D/em_m2.6)
|
||||
$(call installto, $(INSDIR)/share/man/man6/em_m2.6)
|
||||
endef
|
||||
|
||||
$(eval $(build-m2-impl))
|
||||
@@ -1,103 +0,0 @@
|
||||
define build-runtime-libmodula2-impl
|
||||
|
||||
$(call reset)
|
||||
$(eval objdir := $(PLATFORM))
|
||||
|
||||
$(call ackfile, lang/m2/libm2/Arguments.c)
|
||||
$(call ackfile, lang/m2/libm2/ArraySort.mod)
|
||||
$(call ackfile, lang/m2/libm2/CSP.mod)
|
||||
$(call ackfile, lang/m2/libm2/Conversion.mod)
|
||||
$(call ackfile, lang/m2/libm2/EM.e)
|
||||
$(call ackfile, lang/m2/libm2/InOut.mod)
|
||||
$(call ackfile, lang/m2/libm2/LtoUset.e)
|
||||
$(call ackfile, lang/m2/libm2/MathLib0.mod)
|
||||
$(call ackfile, lang/m2/libm2/Mathlib.mod)
|
||||
$(call ackfile, lang/m2/libm2/PascalIO.mod)
|
||||
$(call ackfile, lang/m2/libm2/Processes.mod)
|
||||
$(call ackfile, lang/m2/libm2/RealConver.mod)
|
||||
$(call ackfile, lang/m2/libm2/RealInOut.mod)
|
||||
$(call ackfile, lang/m2/libm2/SYSTEM.c)
|
||||
$(call ackfile, lang/m2/libm2/Semaphores.mod)
|
||||
$(call ackfile, lang/m2/libm2/Storage.mod)
|
||||
$(call ackfile, lang/m2/libm2/StrAss.c)
|
||||
$(call ackfile, lang/m2/libm2/Streams.mod)
|
||||
$(call ackfile, lang/m2/libm2/Strings.mod)
|
||||
$(call ackfile, lang/m2/libm2/Termcap.mod)
|
||||
$(call ackfile, lang/m2/libm2/Traps.mod)
|
||||
$(call ackfile, lang/m2/libm2/XXTermcap.c)
|
||||
$(call ackfile, lang/m2/libm2/absd.c)
|
||||
$(call ackfile, lang/m2/libm2/absf.e)
|
||||
$(call ackfile, lang/m2/libm2/absi.c)
|
||||
$(call ackfile, lang/m2/libm2/absl.c)
|
||||
$(call ackfile, lang/m2/libm2/blockmove.c)
|
||||
$(call ackfile, lang/m2/libm2/cap.c)
|
||||
$(call ackfile, lang/m2/libm2/catch.c)
|
||||
$(call ackfile, lang/m2/libm2/confarray.c)
|
||||
$(call ackfile, lang/m2/libm2/dvi.c)
|
||||
$(call ackfile, lang/m2/libm2/halt.c)
|
||||
$(call ackfile, lang/m2/libm2/init.c)
|
||||
$(call ackfile, lang/m2/libm2/load.c)
|
||||
$(call ackfile, lang/m2/libm2/par_misc.e)
|
||||
$(call ackfile, lang/m2/libm2/random.mod)
|
||||
$(call ackfile, lang/m2/libm2/rcka.c)
|
||||
$(call ackfile, lang/m2/libm2/rcki.c)
|
||||
$(call ackfile, lang/m2/libm2/rckil.c)
|
||||
$(call ackfile, lang/m2/libm2/rcku.c)
|
||||
$(call ackfile, lang/m2/libm2/rckul.c)
|
||||
$(call ackfile, lang/m2/libm2/sigtrp.c)
|
||||
$(call ackfile, lang/m2/libm2/stackprio.c)
|
||||
$(call ackfile, lang/m2/libm2/store.c)
|
||||
$(call ackfile, lang/m2/libm2/ucheck.c)
|
||||
|
||||
$(eval $q: $(EM_M2))
|
||||
|
||||
$(call acklibrary, $(LIBDIR)/$(PLATFORM)/libmodula2.a)
|
||||
$(call installto, $(PLATIND)/$(PLATFORM)/libmodula2.a)
|
||||
|
||||
$(call reset)
|
||||
$(eval objdir := $(PLATFORM))
|
||||
$(call ackfile, lang/m2/libm2/head_m2.e)
|
||||
$(call installto, $(PLATIND)/$(PLATFORM)/modula2.o)
|
||||
|
||||
endef
|
||||
|
||||
build-runtime-libmodula2 = $(eval $(build-runtime-libmodula2-impl))
|
||||
|
||||
$(eval RUNTIMES += libmodula2)
|
||||
|
||||
define build-headers-libmodula2-impl
|
||||
|
||||
$(eval g := \
|
||||
Arguments.def \
|
||||
ArraySort.def \
|
||||
ASCII.def \
|
||||
Conversion.def \
|
||||
CSP.def \
|
||||
EM.def \
|
||||
Epilogue.def \
|
||||
InOut.def \
|
||||
MathLib0.def \
|
||||
Mathlib.def \
|
||||
PascalIO.def \
|
||||
Processes.def \
|
||||
random.def \
|
||||
RealConver.def \
|
||||
RealInOut.def \
|
||||
Semaphores.def \
|
||||
Storage.def \
|
||||
Streams.def \
|
||||
Strings.def \
|
||||
StripUnix.def \
|
||||
Termcap.def \
|
||||
Traps.def \
|
||||
Unix.def \
|
||||
XXTermcap.def)
|
||||
|
||||
$(foreach f, $g, \
|
||||
$(call reset) \
|
||||
$(call rawfile, lang/m2/libm2/$f) \
|
||||
$(call installto, $(PLATIND)/include/modula2/$f))
|
||||
|
||||
endef
|
||||
|
||||
$(eval $(build-headers-libmodula2-impl))
|
||||
@@ -1,3 +0,0 @@
|
||||
include lang/pc/libpc/build.mk
|
||||
include lang/pc/comp/build.mk
|
||||
|
||||
@@ -1,132 +0,0 @@
|
||||
D := lang/pc/comp
|
||||
|
||||
define build-pc-allocd-header
|
||||
$2: $1 $D/make.allocd
|
||||
@echo ALLOCD $$@
|
||||
@mkdir -p $$(dir $$@)
|
||||
$(hide) $D/make.allocd < $$^ > $$@
|
||||
|
||||
$(eval CLEANABLES += $2)
|
||||
$(eval $q: $2)
|
||||
endef
|
||||
|
||||
define build-pc-next
|
||||
$(eval CLEANABLES += $(OBJDIR)/$D/next.c)
|
||||
$(OBJDIR)/$D/next.c: $D/make.next $1
|
||||
@echo NEXT $$@
|
||||
@mkdir -p $$(dir $$@)
|
||||
$(hide) $$^ > $$@
|
||||
$(call cfile, $(OBJDIR)/$D/next.c)
|
||||
|
||||
$(foreach f, $1, $(call build-pc-allocd-header, \
|
||||
$f, $(OBJDIR)/$(basename $f).h))
|
||||
endef
|
||||
|
||||
define build-pc-impl
|
||||
|
||||
$(call reset)
|
||||
$(eval cflags += -I$(OBJDIR)/$D -I$D -DSTATIC=static)
|
||||
|
||||
$(call cfile, $D/LLlex.c)
|
||||
$(call cfile, $D/LLmessage.c)
|
||||
$(call cfile, $D/body.c)
|
||||
$(call cfile, $D/chk_expr.c)
|
||||
$(call cfile, $D/code.c)
|
||||
$(call cfile, $D/cstoper.c)
|
||||
$(call cfile, $D/def.c)
|
||||
$(call cfile, $D/desig.c)
|
||||
$(call cfile, $D/enter.c)
|
||||
$(call cfile, $D/error.c)
|
||||
$(call cfile, $D/idf.c)
|
||||
$(call cfile, $D/input.c)
|
||||
$(call cfile, $D/label.c)
|
||||
$(call cfile, $D/lookup.c)
|
||||
$(call cfile, $D/main.c)
|
||||
$(call cfile, $D/misc.c)
|
||||
$(call cfile, $D/node.c)
|
||||
$(call cfile, $D/options.c)
|
||||
$(call cfile, $D/progs.c)
|
||||
$(call cfile, $D/readwrite.c)
|
||||
$(call cfile, $D/scope.c)
|
||||
$(call cfile, $D/stab.c)
|
||||
$(call cfile, $D/tokenname.c)
|
||||
$(call cfile, $D/type.c)
|
||||
$(call cfile, $D/typequiv.c)
|
||||
|
||||
$(call llgen, $(OBJDIR)/$D, \
|
||||
$(OBJDIR)/$D/tokenfile.g \
|
||||
$D/program.g \
|
||||
$D/declar.g \
|
||||
$D/expression.g \
|
||||
$D/statement.g)
|
||||
|
||||
$(eval CLEANABLES += $(OBJDIR)/$D/tokenfile.g)
|
||||
$(OBJDIR)/$D/tokenfile.g: $D/make.tokfile $D/tokenname.c
|
||||
@echo TOKENFILE $$@
|
||||
@mkdir -p $$(dir $$@)
|
||||
$(hide) sh $D/make.tokfile < $D/tokenname.c > $$@
|
||||
|
||||
$(call tabgen, $D/char.tab)
|
||||
|
||||
$(eval $q: $(OBJDIR)/$D/parameters.h)
|
||||
|
||||
$(eval CLEANABLES += $(OBJDIR)/$D/parameters.h)
|
||||
$(OBJDIR)/$D/parameters.h: $D/Parameters
|
||||
@echo PARAMETERS $$@
|
||||
@mkdir -p $$(dir $$@)
|
||||
$(hide) echo '#ifndef PARAMETERS_H' > $$@
|
||||
$(hide) echo '#define PARAMETERS_H' >> $$@
|
||||
$(hide) grep -v '^!' < $$^ >> $$@
|
||||
$(hide) echo '#endif' >> $$@
|
||||
|
||||
$(eval CLEANABLES += $(OBJDIR)/$D/symbol2str.c)
|
||||
$(OBJDIR)/$D/symbol2str.c: $D/make.tokcase $D/tokenname.c
|
||||
@echo TOKCASE $$@
|
||||
@mkdir -p $$(dir $$@)
|
||||
$(hide) $D/make.tokcase < $D/tokenname.c > $$@
|
||||
$(call cfile, $(OBJDIR)/$D/symbol2str.c)
|
||||
|
||||
$(call build-pc-next, \
|
||||
$D/def.H \
|
||||
$D/type.H \
|
||||
$D/node.H \
|
||||
$D/scope.H \
|
||||
$D/desig.H \
|
||||
$D/tmpvar.C \
|
||||
$D/casestat.C)
|
||||
|
||||
$(call build-pc-allocd-header, $D/tmpvar.C, $(OBJDIR)/$D/tmpvar.c)
|
||||
$(call cfile, $(OBJDIR)/$D/tmpvar.c)
|
||||
|
||||
$(call build-pc-allocd-header, $D/casestat.C, $(OBJDIR)/$D/casestat.c)
|
||||
$(call cfile, $(OBJDIR)/$D/casestat.c)
|
||||
|
||||
$(eval $q: $(OBJDIR)/$D/Lpars.h)
|
||||
$(eval $q: $(INCDIR)/idf_pkg.spec)
|
||||
$(eval $q: $(INCDIR)/idf_pkg.body)
|
||||
$(eval $q: $(INCDIR)/inp_pkg.spec)
|
||||
$(eval $q: $(INCDIR)/inp_pkg.body)
|
||||
$(eval $q: $(INCDIR)/alloc.h)
|
||||
$(eval $q: $(INCDIR)/em_codeEK.h)
|
||||
$(eval $q: $(INCDIR)/print.h)
|
||||
$(eval $q: $(INCDIR)/system.h)
|
||||
|
||||
$(call rawfile, $(LIBEM_MES))
|
||||
$(call rawfile, $(LIBEMK))
|
||||
$(call rawfile, $(LIBEM_DATA))
|
||||
$(call rawfile, $(LIBINPUT))
|
||||
$(call rawfile, $(LIBASSERT))
|
||||
$(call rawfile, $(LIBALLOC))
|
||||
$(call rawfile, $(LIBFLT_ARITH))
|
||||
$(call rawfile, $(LIBPRINT))
|
||||
$(call rawfile, $(LIBSYSTEM))
|
||||
$(call rawfile, $(LIBSTRING))
|
||||
$(call cprogram, $(BINDIR)/em_pc)
|
||||
$(call installto, $(PLATDEP)/em_pc)
|
||||
|
||||
$(call reset)
|
||||
$(eval q := $D/em_pc.6)
|
||||
$(call installto, $(INSDIR)/share/man/man6/em_pc.6)
|
||||
endef
|
||||
|
||||
$(eval $(build-pc-impl))
|
||||
@@ -1,92 +0,0 @@
|
||||
define build-runtime-libpascal-impl
|
||||
|
||||
$(call reset)
|
||||
$(eval objdir := $(PLATFORM))
|
||||
|
||||
$(call ackfile, lang/pc/libpc/abi.c)
|
||||
$(call ackfile, lang/pc/libpc/abl.c)
|
||||
$(call ackfile, lang/pc/libpc/abr.c)
|
||||
$(call ackfile, lang/pc/libpc/arg.c)
|
||||
$(call ackfile, lang/pc/libpc/ass.c)
|
||||
$(call ackfile, lang/pc/libpc/asz.c)
|
||||
$(call ackfile, lang/pc/libpc/atn.c)
|
||||
$(call ackfile, lang/pc/libpc/bcp.c)
|
||||
$(call ackfile, lang/pc/libpc/bts.e)
|
||||
$(call ackfile, lang/pc/libpc/buff.c)
|
||||
$(call ackfile, lang/pc/libpc/catch.c)
|
||||
$(call ackfile, lang/pc/libpc/clock.c)
|
||||
$(call ackfile, lang/pc/libpc/cls.c)
|
||||
$(call ackfile, lang/pc/libpc/cvt.c)
|
||||
$(call ackfile, lang/pc/libpc/diag.c)
|
||||
$(call ackfile, lang/pc/libpc/dis.c)
|
||||
$(call ackfile, lang/pc/libpc/efl.c)
|
||||
$(call ackfile, lang/pc/libpc/eln.c)
|
||||
$(call ackfile, lang/pc/libpc/encaps.e)
|
||||
$(call ackfile, lang/pc/libpc/exp.c)
|
||||
$(call ackfile, lang/pc/libpc/fef.e)
|
||||
$(call ackfile, lang/pc/libpc/fif.e)
|
||||
$(call ackfile, lang/pc/libpc/get.c)
|
||||
$(call ackfile, lang/pc/libpc/gto.e)
|
||||
$(call ackfile, lang/pc/libpc/hlt.c)
|
||||
$(call ackfile, lang/pc/libpc/hol0.e)
|
||||
$(call ackfile, lang/pc/libpc/incpt.c)
|
||||
$(call ackfile, lang/pc/libpc/ini.c)
|
||||
$(call ackfile, lang/pc/libpc/log.c)
|
||||
$(call ackfile, lang/pc/libpc/mdi.c)
|
||||
$(call ackfile, lang/pc/libpc/mdl.c)
|
||||
$(call ackfile, lang/pc/libpc/new.c)
|
||||
$(call ackfile, lang/pc/libpc/nfa.c)
|
||||
$(call ackfile, lang/pc/libpc/nobuff.c)
|
||||
$(call ackfile, lang/pc/libpc/notext.c)
|
||||
$(call ackfile, lang/pc/libpc/opn.c)
|
||||
$(call ackfile, lang/pc/libpc/outcpt.c)
|
||||
$(call ackfile, lang/pc/libpc/pac.c)
|
||||
$(call ackfile, lang/pc/libpc/pclose.c)
|
||||
$(call ackfile, lang/pc/libpc/pcreat.c)
|
||||
$(call ackfile, lang/pc/libpc/pentry.c)
|
||||
$(call ackfile, lang/pc/libpc/perrno.c)
|
||||
$(call ackfile, lang/pc/libpc/pexit.c)
|
||||
$(call ackfile, lang/pc/libpc/popen.c)
|
||||
$(call ackfile, lang/pc/libpc/put.c)
|
||||
$(call ackfile, lang/pc/libpc/rcka.c)
|
||||
$(call ackfile, lang/pc/libpc/rdc.c)
|
||||
$(call ackfile, lang/pc/libpc/rdi.c)
|
||||
$(call ackfile, lang/pc/libpc/rdl.c)
|
||||
$(call ackfile, lang/pc/libpc/rdr.c)
|
||||
$(call ackfile, lang/pc/libpc/rf.c)
|
||||
$(call ackfile, lang/pc/libpc/rln.c)
|
||||
$(call ackfile, lang/pc/libpc/rnd.c)
|
||||
$(call ackfile, lang/pc/libpc/sav.e)
|
||||
$(call ackfile, lang/pc/libpc/sig.e)
|
||||
$(call ackfile, lang/pc/libpc/sin.c)
|
||||
$(call ackfile, lang/pc/libpc/sqt.c)
|
||||
$(call ackfile, lang/pc/libpc/string.c)
|
||||
$(call ackfile, lang/pc/libpc/trap.e)
|
||||
$(call ackfile, lang/pc/libpc/trp.e)
|
||||
$(call ackfile, lang/pc/libpc/unp.c)
|
||||
$(call ackfile, lang/pc/libpc/uread.c)
|
||||
$(call ackfile, lang/pc/libpc/uwrite.c)
|
||||
$(call ackfile, lang/pc/libpc/wdw.c)
|
||||
$(call ackfile, lang/pc/libpc/wf.c)
|
||||
$(call ackfile, lang/pc/libpc/wrc.c)
|
||||
$(call ackfile, lang/pc/libpc/wrf.c)
|
||||
$(call ackfile, lang/pc/libpc/wri.c)
|
||||
$(call ackfile, lang/pc/libpc/wrl.c)
|
||||
$(call ackfile, lang/pc/libpc/wrr.c)
|
||||
$(call ackfile, lang/pc/libpc/wrs.c)
|
||||
$(call ackfile, lang/pc/libpc/wrz.c)
|
||||
|
||||
$(call acklibrary, $(LIBDIR)/$(PLATFORM)/libpascal.a)
|
||||
$(call installto, $(PLATIND)/$(PLATFORM)/libpascal.a)
|
||||
|
||||
$(call reset)
|
||||
$(eval objdir := $(PLATFORM))
|
||||
$(call ackfile, lang/pc/libpc/head_pc.e)
|
||||
$(call installto, $(PLATIND)/$(PLATFORM)/pascal.o)
|
||||
|
||||
endef
|
||||
|
||||
build-runtime-libpascal = $(eval $(build-runtime-libpascal-impl))
|
||||
|
||||
$(eval RUNTIMES += libpascal)
|
||||
|
||||
Reference in New Issue
Block a user