Modula-2 now works.
--HG-- branch : dtrg-buildsystem rename : lang/pc/build.mk => lang/m2/build.mk rename : lang/pc/libpc/build.mk => lang/m2/comp/build.mk rename : lang/pc/libpc/build.mk => lang/m2/libm2/build.mk
This commit is contained in:
		
							parent
							
								
									66aebcdd91
								
							
						
					
					
						commit
						f6c43b95ef
					
				
					 38 changed files with 267 additions and 48 deletions
				
			
		
							
								
								
									
										1
									
								
								Makefile
									
										
									
									
									
								
							
							
						
						
									
										1
									
								
								Makefile
									
										
									
									
									
								
							|  | @ -56,6 +56,7 @@ include util/topgen/build.mk | ||||||
| include lang/cem/build.mk | include lang/cem/build.mk | ||||||
| include lang/basic/build.mk | include lang/basic/build.mk | ||||||
| include lang/pc/build.mk | include lang/pc/build.mk | ||||||
|  | include lang/m2/build.mk | ||||||
| 
 | 
 | ||||||
| include mach/proto/as/build.mk | include mach/proto/as/build.mk | ||||||
| include mach/proto/ncg/build.mk | include mach/proto/ncg/build.mk | ||||||
|  |  | ||||||
							
								
								
									
										3
									
								
								lang/m2/build.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										3
									
								
								lang/m2/build.mk
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,3 @@ | ||||||
|  | include lang/m2/libm2/build.mk | ||||||
|  | include lang/m2/comp/build.mk | ||||||
|  | 
 | ||||||
|  | @ -13,10 +13,8 @@ | ||||||
| #include	<stdio.h> | #include	<stdio.h> | ||||||
| #include	<string.h> | #include	<string.h> | ||||||
| 
 | 
 | ||||||
|  | #include "parameters.h" | ||||||
| #include	"debug.h" | #include	"debug.h" | ||||||
| #include	"idfsize.h" |  | ||||||
| #include	"numsize.h" |  | ||||||
| #include	"strsize.h" |  | ||||||
| 
 | 
 | ||||||
| #include	"alloc.h" | #include	"alloc.h" | ||||||
| #include	"em_arith.h" | #include	"em_arith.h" | ||||||
|  | @ -32,7 +30,6 @@ | ||||||
| #include	"def.h" | #include	"def.h" | ||||||
| #include	"type.h" | #include	"type.h" | ||||||
| #include	"warning.h" | #include	"warning.h" | ||||||
| #include	"errout.h" |  | ||||||
| 
 | 
 | ||||||
| extern char *getwdir(); | extern char *getwdir(); | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -19,6 +19,7 @@ | ||||||
| #include	<em_arith.h> | #include	<em_arith.h> | ||||||
| #include	<em_label.h> | #include	<em_label.h> | ||||||
| 
 | 
 | ||||||
|  | #include "parameters.h" | ||||||
| #include	"idf.h" | #include	"idf.h" | ||||||
| #include	"LLlex.h" | #include	"LLlex.h" | ||||||
| #include	"Lpars.h" | #include	"Lpars.h" | ||||||
|  |  | ||||||
							
								
								
									
										129
									
								
								lang/m2/comp/build.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										129
									
								
								lang/m2/comp/build.mk
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,129 @@ | ||||||
|  | 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 file, $(LIBEM_MES)) | ||||||
|  | $(call file, $(LIBEMK)) | ||||||
|  | $(call file, $(LIBEM_DATA)) | ||||||
|  | $(call file, $(LIBINPUT)) | ||||||
|  | $(call file, $(LIBASSERT)) | ||||||
|  | $(call file, $(LIBALLOC)) | ||||||
|  | $(call file, $(LIBFLT_ARITH)) | ||||||
|  | $(call file, $(LIBPRINT)) | ||||||
|  | $(call file, $(LIBSYSTEM)) | ||||||
|  | $(call file, $(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)) | ||||||
|  | @ -16,6 +16,7 @@ | ||||||
| 	cases themselves. | 	cases themselves. | ||||||
| */ | */ | ||||||
| 
 | 
 | ||||||
|  | #include "parameters.h" | ||||||
| #include	"debug.h" | #include	"debug.h" | ||||||
| 
 | 
 | ||||||
| #include	<em_label.h> | #include	<em_label.h> | ||||||
|  | @ -33,8 +34,6 @@ | ||||||
| #include	"chk_expr.h" | #include	"chk_expr.h" | ||||||
| #include	"def.h" | #include	"def.h" | ||||||
| 
 | 
 | ||||||
| #include	"density.h" |  | ||||||
| 
 |  | ||||||
| struct switch_hdr	{ | struct switch_hdr	{ | ||||||
| 	label sh_break;			/* label of statement after this one */ | 	label sh_break;			/* label of statement after this one */ | ||||||
| 	label sh_default;		/* label of ELSE part, or 0 */ | 	label sh_default;		/* label of ELSE part, or 0 */ | ||||||
|  |  | ||||||
|  | @ -14,6 +14,7 @@ | ||||||
| 
 | 
 | ||||||
| #include   <stdlib.h> | #include   <stdlib.h> | ||||||
| #include   <string.h> | #include   <string.h> | ||||||
|  | #include "parameters.h" | ||||||
| #include	"debug.h" | #include	"debug.h" | ||||||
| 
 | 
 | ||||||
| #include	<em_arith.h> | #include	<em_arith.h> | ||||||
|  | @ -21,7 +22,6 @@ | ||||||
| #include	<assert.h> | #include	<assert.h> | ||||||
| #include	<alloc.h> | #include	<alloc.h> | ||||||
| 
 | 
 | ||||||
| #include	"strict3rd.h" |  | ||||||
| #include	"Lpars.h" | #include	"Lpars.h" | ||||||
| #include	"idf.h" | #include	"idf.h" | ||||||
| #include	"type.h" | #include	"type.h" | ||||||
|  | @ -34,7 +34,6 @@ | ||||||
| #include	"misc.h" | #include	"misc.h" | ||||||
| #include	"warning.h" | #include	"warning.h" | ||||||
| #include	"main.h" | #include	"main.h" | ||||||
| #include	"nostrict.h" |  | ||||||
| 
 | 
 | ||||||
| extern char *symbol2str(); | extern char *symbol2str(); | ||||||
| extern char *sprint(); | extern char *sprint(); | ||||||
|  |  | ||||||
|  | @ -12,6 +12,7 @@ | ||||||
| /*	Code generation for expressions and coercions
 | /*	Code generation for expressions and coercions
 | ||||||
| */ | */ | ||||||
| 
 | 
 | ||||||
|  | #include "parameters.h" | ||||||
| #include	"debug.h" | #include	"debug.h" | ||||||
| 
 | 
 | ||||||
| #include	<em_arith.h> | #include	<em_arith.h> | ||||||
|  | @ -30,7 +31,6 @@ | ||||||
| #include	"Lpars.h" | #include	"Lpars.h" | ||||||
| #include	"standards.h" | #include	"standards.h" | ||||||
| #include	"walk.h" | #include	"walk.h" | ||||||
| #include	"bigresult.h" |  | ||||||
| 
 | 
 | ||||||
| extern int	proclevel; | extern int	proclevel; | ||||||
| extern char	options[]; | extern char	options[]; | ||||||
|  |  | ||||||
|  | @ -9,9 +9,9 @@ | ||||||
| 
 | 
 | ||||||
| /* $Id$ */ | /* $Id$ */ | ||||||
| 
 | 
 | ||||||
|  | #include <stdlib.h> | ||||||
|  | #include "parameters.h" | ||||||
| #include	"debug.h" | #include	"debug.h" | ||||||
| #include	"target_sizes.h" |  | ||||||
| #include	"uns_arith.h" |  | ||||||
| 
 | 
 | ||||||
| #include	<em_arith.h> | #include	<em_arith.h> | ||||||
| #include	<em_label.h> | #include	<em_label.h> | ||||||
|  |  | ||||||
|  | @ -9,8 +9,6 @@ | ||||||
| 
 | 
 | ||||||
| /* $Id$ */ | /* $Id$ */ | ||||||
| 
 | 
 | ||||||
| #include "debugcst.h" |  | ||||||
| 
 |  | ||||||
| #ifdef DEBUG | #ifdef DEBUG | ||||||
| #define DO_DEBUG(x, y)	((x) && (y)) | #define DO_DEBUG(x, y)	((x) && (y)) | ||||||
| #define STATIC | #define STATIC | ||||||
|  |  | ||||||
|  | @ -10,6 +10,7 @@ | ||||||
| /* $Id$ */ | /* $Id$ */ | ||||||
| 
 | 
 | ||||||
| { | { | ||||||
|  | #include "parameters.h" | ||||||
| #include	"debug.h" | #include	"debug.h" | ||||||
| 
 | 
 | ||||||
| #include	<em_arith.h> | #include	<em_arith.h> | ||||||
|  | @ -17,7 +18,6 @@ | ||||||
| #include	<alloc.h> | #include	<alloc.h> | ||||||
| #include	<assert.h> | #include	<assert.h> | ||||||
| 
 | 
 | ||||||
| #include	"strict3rd.h" |  | ||||||
| #include	"idf.h" | #include	"idf.h" | ||||||
| #include	"LLlex.h" | #include	"LLlex.h" | ||||||
| #include	"def.h" | #include	"def.h" | ||||||
|  | @ -28,7 +28,6 @@ | ||||||
| #include	"main.h" | #include	"main.h" | ||||||
| #include	"chk_expr.h" | #include	"chk_expr.h" | ||||||
| #include	"warning.h" | #include	"warning.h" | ||||||
| #include	"nostrict.h" |  | ||||||
| 
 | 
 | ||||||
| int		proclevel = 0;		/* nesting level of procedures */ | int		proclevel = 0;		/* nesting level of procedures */ | ||||||
| int		return_occurred;	/* set if a return occurs in a block */ | int		return_occurred;	/* set if a return occurs in a block */ | ||||||
|  |  | ||||||
|  | @ -11,6 +11,7 @@ | ||||||
| 
 | 
 | ||||||
| #include   <stdlib.h> | #include   <stdlib.h> | ||||||
| #include   <string.h> | #include   <string.h> | ||||||
|  | #include "parameters.h" | ||||||
| #include	"debug.h" | #include	"debug.h" | ||||||
| 
 | 
 | ||||||
| #include	<alloc.h> | #include	<alloc.h> | ||||||
|  |  | ||||||
|  | @ -9,6 +9,7 @@ | ||||||
| 
 | 
 | ||||||
| /* $Id$ */ | /* $Id$ */ | ||||||
| 
 | 
 | ||||||
|  | #include "parameters.h" | ||||||
| #include	"debug.h" | #include	"debug.h" | ||||||
| 
 | 
 | ||||||
| #include	<assert.h> | #include	<assert.h> | ||||||
|  |  | ||||||
|  | @ -16,6 +16,7 @@ | ||||||
| 	or perform a store. | 	or perform a store. | ||||||
| */ | */ | ||||||
| 
 | 
 | ||||||
|  | #include "parameters.h" | ||||||
| #include	"debug.h" | #include	"debug.h" | ||||||
| 
 | 
 | ||||||
| #include	<em_arith.h> | #include	<em_arith.h> | ||||||
|  | @ -32,7 +33,6 @@ | ||||||
| #include	"node.h" | #include	"node.h" | ||||||
| #include	"warning.h" | #include	"warning.h" | ||||||
| #include	"walk.h" | #include	"walk.h" | ||||||
| #include	"squeeze.h" |  | ||||||
| 
 | 
 | ||||||
| extern int	proclevel; | extern int	proclevel; | ||||||
| extern arith	NewPtr(); | extern arith	NewPtr(); | ||||||
|  |  | ||||||
|  | @ -13,6 +13,7 @@ | ||||||
| #include	<stdio.h> | #include	<stdio.h> | ||||||
| #include	<string.h> | #include	<string.h> | ||||||
| 
 | 
 | ||||||
|  | #include "parameters.h" | ||||||
| #include	"debug.h" | #include	"debug.h" | ||||||
| 
 | 
 | ||||||
| #include	"alloc.h" | #include	"alloc.h" | ||||||
|  | @ -21,7 +22,6 @@ | ||||||
| #include	"em_code.h" | #include	"em_code.h" | ||||||
| #include	"assert.h" | #include	"assert.h" | ||||||
| 
 | 
 | ||||||
| #include	"dbsymtab.h" |  | ||||||
| #include	"idf.h" | #include	"idf.h" | ||||||
| #include	"LLlex.h" | #include	"LLlex.h" | ||||||
| #include	"def.h" | #include	"def.h" | ||||||
|  |  | ||||||
|  | @ -14,7 +14,7 @@ | ||||||
| 	number of arguments! | 	number of arguments! | ||||||
| */ | */ | ||||||
| 
 | 
 | ||||||
| #include	"errout.h" | #include "parameters.h" | ||||||
| #include	"debug.h" | #include	"debug.h" | ||||||
| 
 | 
 | ||||||
| #if __STDC__ | #if __STDC__ | ||||||
|  | @ -28,14 +28,12 @@ | ||||||
| #include	<em_label.h> | #include	<em_label.h> | ||||||
| #include	<em_code.h> | #include	<em_code.h> | ||||||
| 
 | 
 | ||||||
| #include	"strict3rd.h" |  | ||||||
| #include	"input.h" | #include	"input.h" | ||||||
| #include	"f_info.h" | #include	"f_info.h" | ||||||
| #include	"LLlex.h" | #include	"LLlex.h" | ||||||
| #include	"main.h" | #include	"main.h" | ||||||
| #include	"node.h" | #include	"node.h" | ||||||
| #include	"warning.h" | #include	"warning.h" | ||||||
| #include	"nostrict.h" |  | ||||||
| 
 | 
 | ||||||
| /* error classes */ | /* error classes */ | ||||||
| #define	ERROR		1 | #define	ERROR		1 | ||||||
|  |  | ||||||
|  | @ -10,6 +10,7 @@ | ||||||
| /* $Id$ */ | /* $Id$ */ | ||||||
| 
 | 
 | ||||||
| { | { | ||||||
|  | #include "parameters.h" | ||||||
| #include	"debug.h" | #include	"debug.h" | ||||||
| 
 | 
 | ||||||
| #include	<alloc.h> | #include	<alloc.h> | ||||||
|  |  | ||||||
|  | @ -9,5 +9,6 @@ | ||||||
| 
 | 
 | ||||||
| /* $Id$ */ | /* $Id$ */ | ||||||
| 
 | 
 | ||||||
|  | #include "parameters.h" | ||||||
| #include	"idf.h" | #include	"idf.h" | ||||||
| #include	<idf_pkg.body> | #include	<idf_pkg.body> | ||||||
|  |  | ||||||
|  | @ -12,6 +12,7 @@ | ||||||
| #include <stdlib.h> | #include <stdlib.h> | ||||||
| #include <stdio.h> | #include <stdio.h> | ||||||
| #include <string.h> | #include <string.h> | ||||||
|  | #include "parameters.h" | ||||||
| #include	"f_info.h" | #include	"f_info.h" | ||||||
| struct f_info	file_info; | struct f_info	file_info; | ||||||
| #include	"input.h" | #include	"input.h" | ||||||
|  |  | ||||||
|  | @ -9,8 +9,6 @@ | ||||||
| 
 | 
 | ||||||
| /* $Id$ */ | /* $Id$ */ | ||||||
| 
 | 
 | ||||||
| #include	"inputtype.h" |  | ||||||
| 
 |  | ||||||
| #define INP_NPUSHBACK 2 | #define INP_NPUSHBACK 2 | ||||||
| #define INP_TYPE	struct f_info | #define INP_TYPE	struct f_info | ||||||
| #define INP_VAR		file_info | #define INP_VAR		file_info | ||||||
|  |  | ||||||
|  | @ -9,6 +9,7 @@ | ||||||
| 
 | 
 | ||||||
| /* $Id$ */ | /* $Id$ */ | ||||||
| 
 | 
 | ||||||
|  | #include "parameters.h" | ||||||
| #include	"debug.h" | #include	"debug.h" | ||||||
| 
 | 
 | ||||||
| #include	<em_arith.h> | #include	<em_arith.h> | ||||||
|  |  | ||||||
|  | @ -9,6 +9,7 @@ | ||||||
| 
 | 
 | ||||||
| /* $Id$ */ | /* $Id$ */ | ||||||
| 
 | 
 | ||||||
|  | #include "parameters.h" | ||||||
| #include	"debug.h" | #include	"debug.h" | ||||||
| 
 | 
 | ||||||
| #include	<system.h> | #include	<system.h> | ||||||
|  | @ -19,8 +20,6 @@ | ||||||
| #include	<assert.h> | #include	<assert.h> | ||||||
| #include	<stb.h> | #include	<stb.h> | ||||||
| 
 | 
 | ||||||
| #include	"strict3rd.h" |  | ||||||
| #include	"dbsymtab.h" |  | ||||||
| #include	"input.h" | #include	"input.h" | ||||||
| #include	"f_info.h" | #include	"f_info.h" | ||||||
| #include	"idf.h" | #include	"idf.h" | ||||||
|  |  | ||||||
|  | @ -17,6 +17,7 @@ | ||||||
| #include	"em_arith.h" | #include	"em_arith.h" | ||||||
| #include	"em_label.h" | #include	"em_label.h" | ||||||
| 
 | 
 | ||||||
|  | #include "parameters.h" | ||||||
| #include	"f_info.h" | #include	"f_info.h" | ||||||
| #include	"misc.h" | #include	"misc.h" | ||||||
| #include	"LLlex.h" | #include	"LLlex.h" | ||||||
|  |  | ||||||
|  | @ -9,6 +9,7 @@ | ||||||
| 
 | 
 | ||||||
| /* $Id$ */ | /* $Id$ */ | ||||||
| 
 | 
 | ||||||
|  | #include "parameters.h" | ||||||
| #include	"debug.h" | #include	"debug.h" | ||||||
| 
 | 
 | ||||||
| #include	<em_label.h> | #include	<em_label.h> | ||||||
|  |  | ||||||
|  | @ -9,21 +9,16 @@ | ||||||
| 
 | 
 | ||||||
| /* $Id$ */ | /* $Id$ */ | ||||||
| 
 | 
 | ||||||
| #include	"idfsize.h" | #include "parameters.h" | ||||||
| 
 | 
 | ||||||
| #include	<em_arith.h> | #include	<em_arith.h> | ||||||
| #include	<em_label.h> | #include	<em_label.h> | ||||||
| #include	<alloc.h> | #include	<alloc.h> | ||||||
| 
 | 
 | ||||||
| #include	"strict3rd.h" |  | ||||||
| #include	"dbsymtab.h" |  | ||||||
| #include	"type.h" | #include	"type.h" | ||||||
| #include	"main.h" | #include	"main.h" | ||||||
| #include	"warning.h" | #include	"warning.h" | ||||||
| #include	"nostrict.h" |  | ||||||
| #include	"nocross.h" |  | ||||||
| #include	"class.h" | #include	"class.h" | ||||||
| #include	"squeeze.h" |  | ||||||
| 
 | 
 | ||||||
| #define	MINIDFSIZE	14 | #define	MINIDFSIZE	14 | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -12,6 +12,7 @@ | ||||||
| { | { | ||||||
| #include    <stdlib.h> | #include    <stdlib.h> | ||||||
| #include    <string.h> | #include    <string.h> | ||||||
|  | #include "parameters.h" | ||||||
| #include	"debug.h" | #include	"debug.h" | ||||||
| 
 | 
 | ||||||
| #include	<alloc.h> | #include	<alloc.h> | ||||||
|  | @ -20,8 +21,6 @@ | ||||||
| #include	<em_code.h> | #include	<em_code.h> | ||||||
| #include	<stb.h> | #include	<stb.h> | ||||||
| 
 | 
 | ||||||
| #include	"dbsymtab.h" |  | ||||||
| #include	"strict3rd.h" |  | ||||||
| #include	"main.h" | #include	"main.h" | ||||||
| #include	"idf.h" | #include	"idf.h" | ||||||
| #include	"LLlex.h" | #include	"LLlex.h" | ||||||
|  |  | ||||||
|  | @ -9,6 +9,7 @@ | ||||||
| 
 | 
 | ||||||
| /* $Id$ */ | /* $Id$ */ | ||||||
| 
 | 
 | ||||||
|  | #include "parameters.h" | ||||||
| #include	"debug.h" | #include	"debug.h" | ||||||
| 
 | 
 | ||||||
| #include	<assert.h> | #include	<assert.h> | ||||||
|  |  | ||||||
|  | @ -9,7 +9,7 @@ | ||||||
| 
 | 
 | ||||||
| /* $Id$ */ | /* $Id$ */ | ||||||
| 
 | 
 | ||||||
| #include "dbsymtab.h" | #include "parameters.h" | ||||||
| 
 | 
 | ||||||
| #ifdef DBSYMTAB | #ifdef DBSYMTAB | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -14,6 +14,7 @@ | ||||||
| #include	<em_arith.h> | #include	<em_arith.h> | ||||||
| #include	<em_label.h> | #include	<em_label.h> | ||||||
| 
 | 
 | ||||||
|  | #include "parameters.h" | ||||||
| #include	"idf.h" | #include	"idf.h" | ||||||
| #include	"LLlex.h" | #include	"LLlex.h" | ||||||
| #include	"scope.h" | #include	"scope.h" | ||||||
|  |  | ||||||
|  | @ -16,6 +16,7 @@ | ||||||
| 	have local variabes. | 	have local variabes. | ||||||
| */ | */ | ||||||
| 
 | 
 | ||||||
|  | #include "parameters.h" | ||||||
| #include	"debug.h" | #include	"debug.h" | ||||||
| 
 | 
 | ||||||
| #include	<em_arith.h> | #include	<em_arith.h> | ||||||
|  |  | ||||||
|  | @ -9,6 +9,7 @@ | ||||||
| 
 | 
 | ||||||
| /* $Id$ */ | /* $Id$ */ | ||||||
| 
 | 
 | ||||||
|  | #include "parameters.h" | ||||||
| #include	"tokenname.h" | #include	"tokenname.h" | ||||||
| #include	"Lpars.h" | #include	"Lpars.h" | ||||||
| #include	"idf.h" | #include	"idf.h" | ||||||
|  |  | ||||||
|  | @ -9,8 +9,6 @@ | ||||||
| 
 | 
 | ||||||
| /* $Id$ */ | /* $Id$ */ | ||||||
| 
 | 
 | ||||||
| #include "dbsymtab.h" |  | ||||||
| 
 |  | ||||||
| struct paramlist {		/* structure for parameterlist of a PROCEDURE */ | struct paramlist {		/* structure for parameterlist of a PROCEDURE */ | ||||||
| 	struct paramlist *par_next; | 	struct paramlist *par_next; | ||||||
| 	struct def *par_def;	/* "df" of parameter */ | 	struct def *par_def;	/* "df" of parameter */ | ||||||
|  | @ -142,9 +140,7 @@ extern t_type | ||||||
| 	*std_type, | 	*std_type, | ||||||
| 	*error_type;		/* All from type.c */ | 	*error_type;		/* All from type.c */ | ||||||
| 
 | 
 | ||||||
| #include "nocross.h" |  | ||||||
| #ifdef NOCROSS | #ifdef NOCROSS | ||||||
| #include "target_sizes.h" |  | ||||||
| #define	word_align	(AL_WORD) | #define	word_align	(AL_WORD) | ||||||
| #define	short_align	(AL_SHORT) | #define	short_align	(AL_SHORT) | ||||||
| #define	int_align	(AL_INT) | #define	int_align	(AL_INT) | ||||||
|  |  | ||||||
|  | @ -9,6 +9,7 @@ | ||||||
| 
 | 
 | ||||||
| /* $Id$ */ | /* $Id$ */ | ||||||
| 
 | 
 | ||||||
|  | #include "parameters.h" | ||||||
| #include	"debug.h" | #include	"debug.h" | ||||||
| 
 | 
 | ||||||
| #include	<assert.h> | #include	<assert.h> | ||||||
|  | @ -17,7 +18,6 @@ | ||||||
| #include	<em_label.h> | #include	<em_label.h> | ||||||
| #include	<em_code.h> | #include	<em_code.h> | ||||||
| 
 | 
 | ||||||
| #include	"nostrict.h" |  | ||||||
| #include	"LLlex.h" | #include	"LLlex.h" | ||||||
| #include	"def.h" | #include	"def.h" | ||||||
| #include	"type.h" | #include	"type.h" | ||||||
|  | @ -28,10 +28,8 @@ | ||||||
| #include	"main.h" | #include	"main.h" | ||||||
| #include	"chk_expr.h" | #include	"chk_expr.h" | ||||||
| #include	"warning.h" | #include	"warning.h" | ||||||
| #include	"uns_arith.h" |  | ||||||
| 
 | 
 | ||||||
| #ifndef NOCROSS | #ifndef NOCROSS | ||||||
| #include	"target_sizes.h" |  | ||||||
| int | int | ||||||
| 	word_align = AL_WORD, | 	word_align = AL_WORD, | ||||||
| 	short_align = AL_SHORT, | 	short_align = AL_SHORT, | ||||||
|  |  | ||||||
|  | @ -12,13 +12,13 @@ | ||||||
| /*	Routines for testing type equivalence, type compatibility, and
 | /*	Routines for testing type equivalence, type compatibility, and
 | ||||||
| 	assignment compatibility | 	assignment compatibility | ||||||
| */ | */ | ||||||
|  | #include "parameters.h" | ||||||
| #include	"debug.h" | #include	"debug.h" | ||||||
| 
 | 
 | ||||||
| #include	<em_arith.h> | #include	<em_arith.h> | ||||||
| #include	<em_label.h> | #include	<em_label.h> | ||||||
| #include	<assert.h> | #include	<assert.h> | ||||||
| 
 | 
 | ||||||
| #include	"strict3rd.h" |  | ||||||
| #include	"type.h" | #include	"type.h" | ||||||
| #include	"LLlex.h" | #include	"LLlex.h" | ||||||
| #include	"idf.h" | #include	"idf.h" | ||||||
|  |  | ||||||
|  | @ -15,6 +15,7 @@ | ||||||
| 
 | 
 | ||||||
| #include   <stdlib.h> | #include   <stdlib.h> | ||||||
| #include   <string.h> | #include   <string.h> | ||||||
|  | #include "parameters.h" | ||||||
| #include	"debug.h" | #include	"debug.h" | ||||||
| 
 | 
 | ||||||
| #include	<em_arith.h> | #include	<em_arith.h> | ||||||
|  | @ -26,8 +27,6 @@ | ||||||
| #include	<alloc.h> | #include	<alloc.h> | ||||||
| #include	<stb.h> | #include	<stb.h> | ||||||
| 
 | 
 | ||||||
| #include	"strict3rd.h" |  | ||||||
| #include	"dbsymtab.h" |  | ||||||
| #include	"LLlex.h" | #include	"LLlex.h" | ||||||
| #include	"def.h" | #include	"def.h" | ||||||
| #include	"type.h" | #include	"type.h" | ||||||
|  | @ -42,8 +41,6 @@ | ||||||
| #include	"walk.h" | #include	"walk.h" | ||||||
| #include	"misc.h" | #include	"misc.h" | ||||||
| #include	"warning.h" | #include	"warning.h" | ||||||
| #include	"bigresult.h" |  | ||||||
| #include	"use_insert.h" |  | ||||||
| 
 | 
 | ||||||
| extern arith		NewPtr(); | extern arith		NewPtr(); | ||||||
| extern arith		NewInt(); | extern arith		NewInt(); | ||||||
|  |  | ||||||
|  | @ -19,8 +19,6 @@ extern int (*WalkTable[])(); | ||||||
| extern label	text_label; | extern label	text_label; | ||||||
| extern label	data_label; | extern label	data_label; | ||||||
| 
 | 
 | ||||||
| #include "squeeze.h" |  | ||||||
| 
 |  | ||||||
| #ifndef SQUEEZE | #ifndef SQUEEZE | ||||||
| #define c_loc(x)	C_loc((arith) (x)) | #define c_loc(x)	C_loc((arith) (x)) | ||||||
| #define c_lae_dlb(x)	C_lae_dlb(x,(arith) 0) | #define c_lae_dlb(x)	C_lae_dlb(x,(arith) 0) | ||||||
|  |  | ||||||
							
								
								
									
										103
									
								
								lang/m2/libm2/build.mk
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										103
									
								
								lang/m2/libm2/build.mk
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,103 @@ | ||||||
|  | define build-runtime-libmodula2-impl | ||||||
|  | 
 | ||||||
|  | $(call reset) | ||||||
|  | $(eval objdir := $(PLATFORM)) | ||||||
|  | 
 | ||||||
|  | $(call ackfile, lang/m2/libm2/Termcap.mod) | ||||||
|  | $(call ackfile, lang/m2/libm2/CSP.mod) | ||||||
|  | $(call ackfile, lang/m2/libm2/PascalIO.mod) | ||||||
|  | $(call ackfile, lang/m2/libm2/RealInOut.mod) | ||||||
|  | $(call ackfile, lang/m2/libm2/InOut.mod) | ||||||
|  | $(call ackfile, lang/m2/libm2/Streams.mod) | ||||||
|  | $(call ackfile, lang/m2/libm2/MathLib0.mod) | ||||||
|  | $(call ackfile, lang/m2/libm2/Mathlib.mod) | ||||||
|  | $(call ackfile, lang/m2/libm2/Processes.mod) | ||||||
|  | $(call ackfile, lang/m2/libm2/RealConver.mod) | ||||||
|  | $(call ackfile, lang/m2/libm2/Storage.mod) | ||||||
|  | $(call ackfile, lang/m2/libm2/Conversion.mod) | ||||||
|  | $(call ackfile, lang/m2/libm2/Semaphores.mod) | ||||||
|  | $(call ackfile, lang/m2/libm2/random.mod) | ||||||
|  | $(call ackfile, lang/m2/libm2/Strings.mod) | ||||||
|  | $(call ackfile, lang/m2/libm2/ArraySort.mod) | ||||||
|  | $(call ackfile, lang/m2/libm2/catch.c) | ||||||
|  | $(call ackfile, lang/m2/libm2/Traps.mod) | ||||||
|  | $(call ackfile, lang/m2/libm2/XXTermcap.c) | ||||||
|  | $(call ackfile, lang/m2/libm2/dvi.c) | ||||||
|  | $(call ackfile, lang/m2/libm2/Arguments.c) | ||||||
|  | $(call ackfile, lang/m2/libm2/LtoUset.e) | ||||||
|  | $(call ackfile, lang/m2/libm2/StrAss.c) | ||||||
|  | $(call ackfile, lang/m2/libm2/cap.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/halt.c) | ||||||
|  | $(call ackfile, lang/m2/libm2/SYSTEM.c) | ||||||
|  | $(call ackfile, lang/m2/libm2/par_misc.e) | ||||||
|  | $(call ackfile, lang/m2/libm2/init.c) | ||||||
|  | $(call ackfile, lang/m2/libm2/sigtrp.c) | ||||||
|  | $(call ackfile, lang/m2/libm2/store.c) | ||||||
|  | $(call ackfile, lang/m2/libm2/confarray.c) | ||||||
|  | $(call ackfile, lang/m2/libm2/load.c) | ||||||
|  | $(call ackfile, lang/m2/libm2/blockmove.c) | ||||||
|  | $(call ackfile, lang/m2/libm2/stackprio.c) | ||||||
|  | $(call ackfile, lang/m2/libm2/ucheck.c) | ||||||
|  | $(call ackfile, lang/m2/libm2/rcka.c) | ||||||
|  | $(call ackfile, lang/m2/libm2/rcku.c) | ||||||
|  | $(call ackfile, lang/m2/libm2/rcki.c) | ||||||
|  | $(call ackfile, lang/m2/libm2/rckul.c) | ||||||
|  | $(call ackfile, lang/m2/libm2/rckil.c) | ||||||
|  | $(call ackfile, lang/m2/libm2/EM.e) | ||||||
|  | 
 | ||||||
|  | $(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 file, lang/m2/libm2/$f) \
 | ||||||
|  | 	$(call installto, $(PLATIND)/include/modula2/$f)) | ||||||
|  | 
 | ||||||
|  | endef | ||||||
|  | 
 | ||||||
|  | $(eval $(build-headers-libmodula2-impl)) | ||||||
|  | @ -4,7 +4,7 @@ | ||||||
| # Don't generate line updating code by default (i.e.: -L flag provided to cem). | # Don't generate line updating code by default (i.e.: -L flag provided to cem). | ||||||
| # To put it on again: use -NL | # To put it on again: use -NL | ||||||
| var LFLAG=-L | var LFLAG=-L | ||||||
| var MODULA2_INCLUDES=-I{EM}/share/ack/include/m2 | var MODULA2_INCLUDES=-I{EM}/share/ack/include/modula2 | ||||||
| var OCCAM_INCLUDES=-I{EM}/share/ack/include/occam | var OCCAM_INCLUDES=-I{EM}/share/ack/include/occam | ||||||
| var C_INCLUDES=-I{EM}/share/ack/include/ansi | var C_INCLUDES=-I{EM}/share/ack/include/ansi | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		
		Reference in a new issue