Added support for the Pascal compiler.
This commit is contained in:
		
							parent
							
								
									2dbc112117
								
							
						
					
					
						commit
						f1386f3aa5
					
				
					 3 changed files with 190 additions and 1 deletions
				
			
		
							
								
								
									
										166
									
								
								lang/pc/comp/pmfile
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										166
									
								
								lang/pc/comp/pmfile
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,166 @@ | ||||||
|  | -- $Source$ | ||||||
|  | -- $State$ | ||||||
|  | 
 | ||||||
|  | local d = ROOTDIR.."lang/pc/comp/" | ||||||
|  | 
 | ||||||
|  | local extract_parameters = simple { | ||||||
|  | 	outputs = { | ||||||
|  | 		"%U%/debugcst.h", | ||||||
|  | 		"%U%/density.h", | ||||||
|  | 		"%U%/errout.h", | ||||||
|  | 		"%U%/idfsize.h", | ||||||
|  | 		"%U%/inputtype.h", | ||||||
|  | 		"%U%/numsize.h", | ||||||
|  | 		"%U%/strsize.h", | ||||||
|  | 		"%U%/target_sizes.h", | ||||||
|  | 		"%U%/nocross.h", | ||||||
|  | 		"%U%/dbsymtab.h", | ||||||
|  | 	}, | ||||||
|  | 	 | ||||||
|  | 	command = { | ||||||
|  | 		"cd %out[1]:dirname% && %in[1]% %in[2]%" | ||||||
|  | 	}, | ||||||
|  | 	 | ||||||
|  | 	file (d.."make.hfiles"), | ||||||
|  | 	file (d.."Parameters") | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | local lpars = LLgen { | ||||||
|  | 	simple { | ||||||
|  | 		outputs = {"%U%/tokenfile.g"}, | ||||||
|  | 		command = { | ||||||
|  | 			"%in[1]% < %in[2]% > %out[1]%" | ||||||
|  | 		}, | ||||||
|  | 		file (d.."make.tokfile"), | ||||||
|  | 		file (d.."tokenname.c") | ||||||
|  | 	}, | ||||||
|  | 	file (d.."program.g"), | ||||||
|  | 	file (d.."declar.g"), | ||||||
|  | 	file (d.."expression.g"), | ||||||
|  | 	file (d.."statement.g"), | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | local allocd_header = simple { | ||||||
|  | 	class = "allocd_header", | ||||||
|  | 	command = { | ||||||
|  | 		"%in[1]% < %in[2]% > %out[1]%" | ||||||
|  | 	}, | ||||||
|  | 	 | ||||||
|  | 	file (d.."make.allocd") | ||||||
|  | } | ||||||
|  | 	 | ||||||
|  | local cfile_with_headers = cfile { | ||||||
|  | 	class = "cfile_with_headers", | ||||||
|  | 	dynamicheaders = { | ||||||
|  | 		file (d), | ||||||
|  | 		extract_parameters, | ||||||
|  | 		allocd_header { outputs = {"%U%/def.h"},           (d.."def.H") }, | ||||||
|  | 		allocd_header { outputs = {"%U%/type.h"},          (d.."type.H") }, | ||||||
|  | 		allocd_header { outputs = {"%U%/scope.h"},         (d.."scope.H") }, | ||||||
|  | 		allocd_header { outputs = {"%U%/node.h"},          (d.."node.H") }, | ||||||
|  | 		allocd_header { outputs = {"%U%/desig.h"},         (d.."desig.H") }, | ||||||
|  | 		lpars | ||||||
|  | 	} | ||||||
|  | } | ||||||
|  | 	 | ||||||
|  | lang_pc_compiler = cprogram { | ||||||
|  | 	CDEFINES = {PARENT, "-DSTATIC=static"}, | ||||||
|  | 	 | ||||||
|  | 	cfile_with_headers (d.."LLlex.c"), | ||||||
|  | 	cfile_with_headers (d.."LLmessage.c"), | ||||||
|  | 	cfile_with_headers (d.."body.c"), | ||||||
|  | 	cfile_with_headers (d.."chk_expr.c"), | ||||||
|  | 	cfile_with_headers (d.."code.c"), | ||||||
|  | 	cfile_with_headers (d.."cstoper.c"), | ||||||
|  | 	cfile_with_headers (d.."def.c"), | ||||||
|  | 	cfile_with_headers (d.."desig.c"), | ||||||
|  | 	cfile_with_headers (d.."enter.c"), | ||||||
|  | 	cfile_with_headers (d.."error.c"), | ||||||
|  | 	cfile_with_headers (d.."idf.c"), | ||||||
|  | 	cfile_with_headers (d.."input.c"), | ||||||
|  | 	cfile_with_headers (d.."label.c"), | ||||||
|  | 	cfile_with_headers (d.."lookup.c"), | ||||||
|  | 	cfile_with_headers (d.."main.c"), | ||||||
|  | 	cfile_with_headers (d.."misc.c"), | ||||||
|  | 	cfile_with_headers (d.."node.c"), | ||||||
|  | 	cfile_with_headers (d.."options.c"), | ||||||
|  | 	cfile_with_headers (d.."progs.c"), | ||||||
|  | 	cfile_with_headers (d.."readwrite.c"), | ||||||
|  | 	cfile_with_headers (d.."scope.c"), | ||||||
|  | 	cfile_with_headers (d.."stab.c"), | ||||||
|  | 	cfile_with_headers (d.."tokenname.c"), | ||||||
|  | 	cfile_with_headers (d.."type.c"), | ||||||
|  | 	cfile_with_headers (d.."typequiv.c"), | ||||||
|  | 
 | ||||||
|  | 	foreach { | ||||||
|  | 		rule = cfile_with_headers, | ||||||
|  | 		ith { lpars, from=2 } | ||||||
|  | 	}, | ||||||
|  | 
 | ||||||
|  | 	cfile_with_headers { | ||||||
|  | 		simple { | ||||||
|  | 			outputs = {"%U%-symbol2str.c"}, | ||||||
|  | 			command = { | ||||||
|  | 				"%in[1]% < %in[2]% > %out[1]%" | ||||||
|  | 			}, | ||||||
|  | 			 | ||||||
|  | 			file (d.."make.tokcase"), | ||||||
|  | 			file (d.."tokenname.c") | ||||||
|  | 		} | ||||||
|  | 	}, | ||||||
|  | 	 | ||||||
|  | 	cfile_with_headers { | ||||||
|  | 		CEXTRAFLAGS = "-I"..d, | ||||||
|  | 		tabgen (d.."char.tab") | ||||||
|  | 	}, | ||||||
|  | 
 | ||||||
|  | 	cfile_with_headers { | ||||||
|  | 		simple { | ||||||
|  | 			outputs = {"%U%-next.c"}, | ||||||
|  | 			command = { | ||||||
|  | 				"%in% > %out%" | ||||||
|  | 			}, | ||||||
|  | 			 | ||||||
|  | 			file (d.."make.next"), | ||||||
|  | 
 | ||||||
|  | 			file (d.."def.H"), | ||||||
|  | 			file (d.."type.H"), | ||||||
|  | 			file (d.."node.H"), | ||||||
|  | 			file (d.."scope.H"), | ||||||
|  | 			file (d.."desig.H"), | ||||||
|  | 			file (d.."tmpvar.C"), | ||||||
|  | 			file (d.."casestat.C"), | ||||||
|  | 		} | ||||||
|  | 	}, | ||||||
|  | 
 | ||||||
|  | 	cfile_with_headers { | ||||||
|  | 		allocd_header { outputs = {"%U%-tmpvar.c"}, (d.."tmpvar.C") } | ||||||
|  | 	}, | ||||||
|  | 	 | ||||||
|  | 	cfile_with_headers { | ||||||
|  | 		allocd_header { outputs = {"%U%-casestat.c"}, (d.."casestat.C") } | ||||||
|  | 	}, | ||||||
|  | 	 | ||||||
|  | 	lib_em_mes, | ||||||
|  | 	lib_emk, | ||||||
|  | 	lib_em_data, | ||||||
|  | 	lib_input, | ||||||
|  | 	lib_assert, | ||||||
|  | 	lib_alloc, | ||||||
|  | 	lib_flt_arith, | ||||||
|  | 	lib_print, | ||||||
|  | 	lib_string, | ||||||
|  | 	lib_system, | ||||||
|  | 
 | ||||||
|  | 	outputs = {"%U%/em_pc"}, | ||||||
|  | 	install = { | ||||||
|  | 		pm.install(              "%BINDIR%%PLATDEP%/em_pc"), | ||||||
|  | 		pm.install(d.."em_pc.6", "%BINDIR%/man/man6/em_pc.6"), | ||||||
|  | 	} | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | -- Revision history | ||||||
|  | -- $Log$ | ||||||
|  | -- Revision 1.1  2006-07-22 21:03:07  dtrg | ||||||
|  | -- Added support for the Pascal compiler. | ||||||
|  | -- | ||||||
							
								
								
									
										19
									
								
								lang/pc/pmfile
									
										
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								lang/pc/pmfile
									
										
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,19 @@ | ||||||
|  | -- $Source$ | ||||||
|  | -- $State$ | ||||||
|  | 
 | ||||||
|  | local d = ROOTDIR.."lang/pc/" | ||||||
|  | 
 | ||||||
|  | include (d.."comp/pmfile") | ||||||
|  | 
 | ||||||
|  | lang_pc = group { | ||||||
|  | 	lang_pc_compiler | ||||||
|  | } | ||||||
|  | 
 | ||||||
|  | -- Revision history | ||||||
|  | -- $Log$ | ||||||
|  | -- Revision 1.1  2006-07-22 21:03:07  dtrg | ||||||
|  | -- Added support for the Pascal compiler. | ||||||
|  | -- | ||||||
|  | -- Revision 1.1  2006/07/20 23:18:18  dtrg | ||||||
|  | -- First version in CVS. | ||||||
|  | -- | ||||||
							
								
								
									
										6
									
								
								pmfile
									
										
									
									
									
								
							
							
						
						
									
										6
									
								
								pmfile
									
										
									
									
									
								
							|  | @ -48,6 +48,7 @@ include "util/led/pmfile" | ||||||
| 
 | 
 | ||||||
| include "lang/cem/cemcom/pmfile" | include "lang/cem/cemcom/pmfile" | ||||||
| include "lang/cem/cemcom.ansi/pmfile" | include "lang/cem/cemcom.ansi/pmfile" | ||||||
|  | include "lang/pc/pmfile" | ||||||
| 
 | 
 | ||||||
| include "mach/proto/pmfile" | include "mach/proto/pmfile" | ||||||
| include "mach/6500/pmfile" | include "mach/6500/pmfile" | ||||||
|  | @ -159,7 +160,10 @@ configure = simple { | ||||||
| 
 | 
 | ||||||
| -- Revision history | -- Revision history | ||||||
| -- $Log$ | -- $Log$ | ||||||
| -- Revision 1.6  2006-07-22 20:10:41  dtrg | -- Revision 1.7  2006-07-22 21:03:07  dtrg | ||||||
|  | -- Added support for the Pascal compiler. | ||||||
|  | -- | ||||||
|  | -- Revision 1.6  2006/07/22 20:10:41  dtrg | ||||||
| -- Added support for the esize object inspection tool. | -- Added support for the esize object inspection tool. | ||||||
| -- | -- | ||||||
| -- Revision 1.5  2006/07/22 20:04:41  dtrg | -- Revision 1.5  2006/07/22 20:04:41  dtrg | ||||||
|  |  | ||||||
		Loading…
	
	Add table
		
		Reference in a new issue