10d02842fSSascha Wildner#
20d02842fSSascha Wildner# iASL compiler/disassembler
30d02842fSSascha Wildner#
40d02842fSSascha Wildner
50d02842fSSascha Wildner#
60d02842fSSascha Wildner# Note: This makefile is intended to be used from within the native
70d02842fSSascha Wildner# ACPICA directory structure, from under generate/unix. It specifically
80d02842fSSascha Wildner# places all object files in a generate/unix subdirectory, not within
90d02842fSSascha Wildner# the various ACPICA source directories. This prevents collisions
100d02842fSSascha Wildner# between different compilations of the same source file with different
110d02842fSSascha Wildner# compile options, and prevents pollution of the source code.
120d02842fSSascha Wildner#
130d02842fSSascha Wildnerinclude ../Makefile.config
140d02842fSSascha WildnerFINAL_PROG = ../$(BINDIR)/iasl
150d02842fSSascha WildnerPROG = $(OBJDIR)/iasl
160d02842fSSascha Wildner
170d02842fSSascha Wildner#
180d02842fSSascha Wildner# Search paths for source files
190d02842fSSascha Wildner#
200d02842fSSascha Wildnervpath %.c \
210d02842fSSascha Wildner    $(ASL_COMPILER)\
220d02842fSSascha Wildner    $(ACPICA_DEBUGGER)\
230d02842fSSascha Wildner    $(ACPICA_DISASSEMBLER)\
240d02842fSSascha Wildner    $(ACPICA_DISPATCHER)\
250d02842fSSascha Wildner    $(ACPICA_EXECUTER)\
260d02842fSSascha Wildner    $(ACPICA_NAMESPACE)\
270d02842fSSascha Wildner    $(ACPICA_PARSER)\
280d02842fSSascha Wildner    $(ACPICA_TABLES)\
290d02842fSSascha Wildner    $(ACPICA_UTILITIES)\
300d02842fSSascha Wildner    $(ACPICA_COMMON)\
310d02842fSSascha Wildner    $(ACPICA_OSL)
320d02842fSSascha Wildner
330d02842fSSascha WildnerHEADERS = \
340d02842fSSascha Wildner    $(wildcard $(ASL_COMPILER)/*.h)\
350d02842fSSascha Wildner    $(OBJDIR)/aslcompiler.y.h\
36*e5412f1eSSascha Wildner    $(OBJDIR)/dtcompilerparser.y.h\
370d02842fSSascha Wildner    $(OBJDIR)/dtparser.y.h\
380d02842fSSascha Wildner    $(OBJDIR)/prparser.y.h
390d02842fSSascha Wildner
400d02842fSSascha WildnerOBJECTS = \
410d02842fSSascha Wildner	$(OBJDIR)/aslcompilerlex.o\
420d02842fSSascha Wildner	$(OBJDIR)/aslcompilerparse.o\
43*e5412f1eSSascha Wildner	$(OBJDIR)/dtcompilerparserlex.o\
44*e5412f1eSSascha Wildner	$(OBJDIR)/dtcompilerparserparse.o\
450d02842fSSascha Wildner	$(OBJDIR)/dtparserlex.o\
460d02842fSSascha Wildner	$(OBJDIR)/dtparserparse.o\
470d02842fSSascha Wildner	$(OBJDIR)/prparserlex.o\
480d02842fSSascha Wildner	$(OBJDIR)/prparserparse.o\
49820c5b08SSascha Wildner	$(OBJDIR)/acfileio.o\
500d02842fSSascha Wildner	$(OBJDIR)/adfile.o\
510d02842fSSascha Wildner	$(OBJDIR)/adisasm.o\
520d02842fSSascha Wildner	$(OBJDIR)/adwalk.o\
53d4972a9cSSascha Wildner	$(OBJDIR)/ahids.o\
540d02842fSSascha Wildner	$(OBJDIR)/ahpredef.o\
55896f2e3aSSascha Wildner	$(OBJDIR)/ahtable.o\
56066b6da2SSascha Wildner	$(OBJDIR)/ahuuids.o\
577bcb6cafSSascha Wildner	$(OBJDIR)/aslallocate.o\
580d02842fSSascha Wildner	$(OBJDIR)/aslanalyze.o\
5979eafdd7SSascha Wildner	$(OBJDIR)/aslascii.o\
600d02842fSSascha Wildner	$(OBJDIR)/aslbtypes.o\
617bcb6cafSSascha Wildner	$(OBJDIR)/aslcache.o\
620d02842fSSascha Wildner	$(OBJDIR)/aslcodegen.o\
630d02842fSSascha Wildner	$(OBJDIR)/aslcompile.o\
647c9678bcSSascha Wildner	$(OBJDIR)/asldebug.o\
650d02842fSSascha Wildner	$(OBJDIR)/aslerror.o\
667c9678bcSSascha Wildner	$(OBJDIR)/aslexternal.o\
670d02842fSSascha Wildner	$(OBJDIR)/aslfiles.o\
680d02842fSSascha Wildner	$(OBJDIR)/aslfileio.o\
690d02842fSSascha Wildner	$(OBJDIR)/aslfold.o\
70e5e174adSSascha Wildner	$(OBJDIR)/aslhelp.o\
710d02842fSSascha Wildner	$(OBJDIR)/aslhex.o\
720d02842fSSascha Wildner	$(OBJDIR)/asllength.o\
730d02842fSSascha Wildner	$(OBJDIR)/asllisting.o\
740d02842fSSascha Wildner	$(OBJDIR)/asllistsup.o\
750d02842fSSascha Wildner	$(OBJDIR)/aslload.o\
760d02842fSSascha Wildner	$(OBJDIR)/asllookup.o\
770d02842fSSascha Wildner	$(OBJDIR)/aslmain.o\
780d02842fSSascha Wildner	$(OBJDIR)/aslmap.o\
792e2672b8SSascha Wildner	$(OBJDIR)/aslmapenter.o\
802e2672b8SSascha Wildner	$(OBJDIR)/aslmapoutput.o\
812e2672b8SSascha Wildner	$(OBJDIR)/aslmaputils.o\
829e1c0880SSascha Wildner	$(OBJDIR)/aslmessages.o\
830d02842fSSascha Wildner	$(OBJDIR)/aslmethod.o\
840d02842fSSascha Wildner	$(OBJDIR)/aslnamesp.o\
850d02842fSSascha Wildner	$(OBJDIR)/asloffset.o\
860d02842fSSascha Wildner	$(OBJDIR)/aslopcodes.o\
870d02842fSSascha Wildner	$(OBJDIR)/asloperands.o\
880d02842fSSascha Wildner	$(OBJDIR)/aslopt.o\
890d02842fSSascha Wildner	$(OBJDIR)/asloptions.o\
901093ca81SSascha Wildner	$(OBJDIR)/aslparseop.o\
910d02842fSSascha Wildner	$(OBJDIR)/aslpredef.o\
920d02842fSSascha Wildner	$(OBJDIR)/aslprepkg.o\
932e2672b8SSascha Wildner	$(OBJDIR)/aslprintf.o\
942e2672b8SSascha Wildner	$(OBJDIR)/aslprune.o\
950d02842fSSascha Wildner	$(OBJDIR)/aslresource.o\
960d02842fSSascha Wildner	$(OBJDIR)/aslrestype1.o\
970d02842fSSascha Wildner	$(OBJDIR)/aslrestype1i.o\
980d02842fSSascha Wildner	$(OBJDIR)/aslrestype2.o\
990d02842fSSascha Wildner	$(OBJDIR)/aslrestype2d.o\
1000d02842fSSascha Wildner	$(OBJDIR)/aslrestype2e.o\
1010d02842fSSascha Wildner	$(OBJDIR)/aslrestype2q.o\
1020d02842fSSascha Wildner	$(OBJDIR)/aslrestype2s.o\
1030d02842fSSascha Wildner	$(OBJDIR)/aslrestype2w.o\
1040d02842fSSascha Wildner	$(OBJDIR)/aslstartup.o\
1050d02842fSSascha Wildner	$(OBJDIR)/aslstubs.o\
1062ffe9f16SSascha Wildner	$(OBJDIR)/aslpld.o\
1070d02842fSSascha Wildner	$(OBJDIR)/asltransform.o\
1080d02842fSSascha Wildner	$(OBJDIR)/asltree.o\
1090d02842fSSascha Wildner	$(OBJDIR)/aslutils.o\
1100d02842fSSascha Wildner	$(OBJDIR)/asluuid.o\
1110d02842fSSascha Wildner	$(OBJDIR)/aslwalks.o\
1120d02842fSSascha Wildner	$(OBJDIR)/aslxref.o\
1137c9678bcSSascha Wildner	$(OBJDIR)/aslxrefout.o\
114d638c6eeSSascha Wildner	$(OBJDIR)/cvcompiler.o\
115d638c6eeSSascha Wildner	$(OBJDIR)/cvdisasm.o\
116d638c6eeSSascha Wildner	$(OBJDIR)/cvparser.o\
117d4972a9cSSascha Wildner	$(OBJDIR)/cmfsize.o\
1180d02842fSSascha Wildner	$(OBJDIR)/dbfileio.o\
1190d02842fSSascha Wildner	$(OBJDIR)/dmbuffer.o\
1202e2672b8SSascha Wildner	$(OBJDIR)/dmcstyle.o\
1210d02842fSSascha Wildner	$(OBJDIR)/dmdeferred.o\
1220d02842fSSascha Wildner	$(OBJDIR)/dmextern.o\
1230d02842fSSascha Wildner	$(OBJDIR)/dmnames.o\
1240d02842fSSascha Wildner	$(OBJDIR)/dmopcode.o\
1250d02842fSSascha Wildner	$(OBJDIR)/dmresrc.o\
1260d02842fSSascha Wildner	$(OBJDIR)/dmresrcl.o\
1270d02842fSSascha Wildner	$(OBJDIR)/dmresrcl2.o\
1280d02842fSSascha Wildner	$(OBJDIR)/dmresrcs.o\
1290d02842fSSascha Wildner	$(OBJDIR)/dmrestag.o\
1301093ca81SSascha Wildner	$(OBJDIR)/dmswitch.o\
1310d02842fSSascha Wildner	$(OBJDIR)/dmtable.o\
132820c5b08SSascha Wildner	$(OBJDIR)/dmtables.o\
1330d02842fSSascha Wildner	$(OBJDIR)/dmtbdump.o\
1347bcb6cafSSascha Wildner	$(OBJDIR)/dmtbdump1.o\
1357bcb6cafSSascha Wildner	$(OBJDIR)/dmtbdump2.o\
1367bcb6cafSSascha Wildner	$(OBJDIR)/dmtbdump3.o\
1370d02842fSSascha Wildner	$(OBJDIR)/dmtbinfo.o\
1387bcb6cafSSascha Wildner	$(OBJDIR)/dmtbinfo1.o\
1397bcb6cafSSascha Wildner	$(OBJDIR)/dmtbinfo2.o\
1407bcb6cafSSascha Wildner	$(OBJDIR)/dmtbinfo3.o\
1410d02842fSSascha Wildner	$(OBJDIR)/dmutils.o\
1420d02842fSSascha Wildner	$(OBJDIR)/dmwalk.o\
1430d02842fSSascha Wildner	$(OBJDIR)/dsargs.o\
1440d02842fSSascha Wildner	$(OBJDIR)/dscontrol.o\
1450d02842fSSascha Wildner	$(OBJDIR)/dsfield.o\
1460d02842fSSascha Wildner	$(OBJDIR)/dsobject.o\
1470d02842fSSascha Wildner	$(OBJDIR)/dsopcode.o\
1483c639e0cSSascha Wildner	$(OBJDIR)/dspkginit.o\
1490d02842fSSascha Wildner	$(OBJDIR)/dsutils.o\
1500d02842fSSascha Wildner	$(OBJDIR)/dswexec.o\
1510d02842fSSascha Wildner	$(OBJDIR)/dswload.o\
1520d02842fSSascha Wildner	$(OBJDIR)/dswload2.o\
1530d02842fSSascha Wildner	$(OBJDIR)/dswscope.o\
1540d02842fSSascha Wildner	$(OBJDIR)/dswstate.o\
1552e2672b8SSascha Wildner	$(OBJDIR)/dtcompile.o\
1562e2672b8SSascha Wildner	$(OBJDIR)/dtexpress.o\
1572e2672b8SSascha Wildner	$(OBJDIR)/dtfield.o\
1582e2672b8SSascha Wildner	$(OBJDIR)/dtio.o\
1592e2672b8SSascha Wildner	$(OBJDIR)/dtsubtable.o\
1602e2672b8SSascha Wildner	$(OBJDIR)/dttable.o\
161820c5b08SSascha Wildner	$(OBJDIR)/dttable1.o\
162820c5b08SSascha Wildner	$(OBJDIR)/dttable2.o\
1632e2672b8SSascha Wildner	$(OBJDIR)/dttemplate.o\
1642e2672b8SSascha Wildner	$(OBJDIR)/dtutils.o\
1652ffe9f16SSascha Wildner	$(OBJDIR)/exconcat.o\
1660d02842fSSascha Wildner	$(OBJDIR)/exconvrt.o\
1670d02842fSSascha Wildner	$(OBJDIR)/excreate.o\
1680d02842fSSascha Wildner	$(OBJDIR)/exdump.o\
1690d02842fSSascha Wildner	$(OBJDIR)/exmisc.o\
1700d02842fSSascha Wildner	$(OBJDIR)/exmutex.o\
1710d02842fSSascha Wildner	$(OBJDIR)/exnames.o\
1720d02842fSSascha Wildner	$(OBJDIR)/exoparg1.o\
1730d02842fSSascha Wildner	$(OBJDIR)/exoparg2.o\
1740d02842fSSascha Wildner	$(OBJDIR)/exoparg3.o\
1750d02842fSSascha Wildner	$(OBJDIR)/exoparg6.o\
1760d02842fSSascha Wildner	$(OBJDIR)/exprep.o\
1770d02842fSSascha Wildner	$(OBJDIR)/exregion.o\
1780d02842fSSascha Wildner	$(OBJDIR)/exresnte.o\
1790d02842fSSascha Wildner	$(OBJDIR)/exresolv.o\
1800d02842fSSascha Wildner	$(OBJDIR)/exresop.o\
1810d02842fSSascha Wildner	$(OBJDIR)/exstore.o\
1820d02842fSSascha Wildner	$(OBJDIR)/exstoren.o\
1830d02842fSSascha Wildner	$(OBJDIR)/exstorob.o\
1840d02842fSSascha Wildner	$(OBJDIR)/exsystem.o\
1850d02842fSSascha Wildner	$(OBJDIR)/exutils.o\
1860d02842fSSascha Wildner	$(OBJDIR)/getopt.o\
1870d02842fSSascha Wildner	$(OBJDIR)/nsaccess.o\
1880d02842fSSascha Wildner	$(OBJDIR)/nsalloc.o\
1890d02842fSSascha Wildner	$(OBJDIR)/nsdump.o\
1900d02842fSSascha Wildner	$(OBJDIR)/nsnames.o\
1910d02842fSSascha Wildner	$(OBJDIR)/nsobject.o\
1920d02842fSSascha Wildner	$(OBJDIR)/nsparse.o\
1930d02842fSSascha Wildner	$(OBJDIR)/nssearch.o\
1940d02842fSSascha Wildner	$(OBJDIR)/nsutils.o\
1950d02842fSSascha Wildner	$(OBJDIR)/nswalk.o\
1960d02842fSSascha Wildner	$(OBJDIR)/nsxfobj.o\
1970d02842fSSascha Wildner	$(OBJDIR)/osunixxf.o\
1980d02842fSSascha Wildner	$(OBJDIR)/prexpress.o\
1990d02842fSSascha Wildner	$(OBJDIR)/prmacros.o\
2000d02842fSSascha Wildner	$(OBJDIR)/prscan.o\
2010d02842fSSascha Wildner	$(OBJDIR)/prutils.o\
2020d02842fSSascha Wildner	$(OBJDIR)/psargs.o\
2030d02842fSSascha Wildner	$(OBJDIR)/psloop.o\
2040d02842fSSascha Wildner	$(OBJDIR)/psobject.o\
2050d02842fSSascha Wildner	$(OBJDIR)/psopcode.o\
2060d02842fSSascha Wildner	$(OBJDIR)/psopinfo.o\
2070d02842fSSascha Wildner	$(OBJDIR)/psparse.o\
2080d02842fSSascha Wildner	$(OBJDIR)/psscope.o\
2090d02842fSSascha Wildner	$(OBJDIR)/pstree.o\
2100d02842fSSascha Wildner	$(OBJDIR)/psutils.o\
2110d02842fSSascha Wildner	$(OBJDIR)/pswalk.o\
212d4972a9cSSascha Wildner	$(OBJDIR)/tbdata.o\
2130d02842fSSascha Wildner	$(OBJDIR)/tbfadt.o\
2140d02842fSSascha Wildner	$(OBJDIR)/tbinstal.o\
2150d02842fSSascha Wildner	$(OBJDIR)/tbprint.o\
2160d02842fSSascha Wildner	$(OBJDIR)/tbutils.o\
2170d02842fSSascha Wildner	$(OBJDIR)/tbxface.o\
218820c5b08SSascha Wildner	$(OBJDIR)/tbxfload.o\
2190d02842fSSascha Wildner	$(OBJDIR)/utaddress.o\
2200d02842fSSascha Wildner	$(OBJDIR)/utalloc.o\
2210d27ae55SSascha Wildner	$(OBJDIR)/utascii.o\
2220d02842fSSascha Wildner	$(OBJDIR)/utbuffer.o\
2230d02842fSSascha Wildner	$(OBJDIR)/utcache.o\
2240d02842fSSascha Wildner	$(OBJDIR)/utcopy.o\
2250d02842fSSascha Wildner	$(OBJDIR)/utdebug.o\
2260d02842fSSascha Wildner	$(OBJDIR)/utdecode.o\
2270d02842fSSascha Wildner	$(OBJDIR)/utdelete.o\
2280d02842fSSascha Wildner	$(OBJDIR)/uterror.o\
2290d02842fSSascha Wildner	$(OBJDIR)/utexcep.o\
2300d02842fSSascha Wildner	$(OBJDIR)/utglobal.o\
231066b6da2SSascha Wildner	$(OBJDIR)/uthex.o\
2320d02842fSSascha Wildner	$(OBJDIR)/utinit.o\
2330d02842fSSascha Wildner	$(OBJDIR)/utlock.o\
2340d02842fSSascha Wildner	$(OBJDIR)/utmath.o\
2350d02842fSSascha Wildner	$(OBJDIR)/utmisc.o\
2360d02842fSSascha Wildner	$(OBJDIR)/utmutex.o\
237267c04fdSSascha Wildner	$(OBJDIR)/utnonansi.o\
2380d02842fSSascha Wildner	$(OBJDIR)/utobject.o\
2390d02842fSSascha Wildner	$(OBJDIR)/utownerid.o\
2400d02842fSSascha Wildner	$(OBJDIR)/utpredef.o\
2411093ca81SSascha Wildner	$(OBJDIR)/utresdecode.o\
2420d02842fSSascha Wildner	$(OBJDIR)/utresrc.o\
2430d02842fSSascha Wildner	$(OBJDIR)/utstate.o\
244e5e174adSSascha Wildner	$(OBJDIR)/utstrtoul64.o\
245cf6b3eb1SSascha Wildner	$(OBJDIR)/utstrsuppt.o\
2460d02842fSSascha Wildner	$(OBJDIR)/utstring.o\
247066b6da2SSascha Wildner	$(OBJDIR)/utuuid.o\
2480d02842fSSascha Wildner	$(OBJDIR)/utxface.o\
2490d02842fSSascha Wildner	$(OBJDIR)/utxferror.o
2500d02842fSSascha Wildner
2510d02842fSSascha WildnerINTERMEDIATES = \
25279eafdd7SSascha Wildner	$(OBJDIR)/aslcompiler.y\
2530d02842fSSascha Wildner	$(OBJDIR)/aslcompilerlex.c\
2540d02842fSSascha Wildner	$(OBJDIR)/aslcompilerparse.c\
2550d02842fSSascha Wildner	$(OBJDIR)/dtparserlex.c\
2560d02842fSSascha Wildner	$(OBJDIR)/dtparserparse.c\
257*e5412f1eSSascha Wildner	$(OBJDIR)/dtcompilerparserlex.c\
258*e5412f1eSSascha Wildner	$(OBJDIR)/dtcompilerparserparse.c\
2590d02842fSSascha Wildner	$(OBJDIR)/prparserlex.c\
2600d02842fSSascha Wildner	$(OBJDIR)/prparserparse.c
2610d02842fSSascha Wildner
2620d02842fSSascha WildnerMISC = \
2630d02842fSSascha Wildner	$(OBJDIR)/aslcompiler.y.h\
264*e5412f1eSSascha Wildner	$(OBJDIR)/dtcompilerparser.y.h\
2650d02842fSSascha Wildner	$(OBJDIR)/dtparser.y.h\
2660d02842fSSascha Wildner	$(OBJDIR)/prparser.y.h
2670d02842fSSascha Wildner
26879eafdd7SSascha WildnerASL_PARSER = \
269c6400d37SSascha Wildner	$(ASL_COMPILER)/aslcstyle.y\
270277350a0SSascha Wildner	$(ASL_COMPILER)/aslhelpers.y\
27179eafdd7SSascha Wildner	$(ASL_COMPILER)/aslparser.y\
272277350a0SSascha Wildner	$(ASL_COMPILER)/aslprimaries.y\
273c6400d37SSascha Wildner	$(ASL_COMPILER)/aslresources.y\
274277350a0SSascha Wildner	$(ASL_COMPILER)/aslrules.y\
2752e2672b8SSascha Wildner	$(ASL_COMPILER)/aslsupport.y\
27679eafdd7SSascha Wildner	$(ASL_COMPILER)/asltokens.y\
277277350a0SSascha Wildner	$(ASL_COMPILER)/asltypes.y
27879eafdd7SSascha Wildner
27979eafdd7SSascha WildnerASL_LEXER = \
28079eafdd7SSascha Wildner	$(ASL_COMPILER)/aslcompiler.l\
28179eafdd7SSascha Wildner	$(ASL_COMPILER)/aslsupport.l\
28279eafdd7SSascha Wildner	$(OBJDIR)/aslcompiler.y.h
28379eafdd7SSascha Wildner
28479eafdd7SSascha Wildner
2850d02842fSSascha Wildner#
2860d02842fSSascha Wildner# Flags specific to iASL compiler
2870d02842fSSascha Wildner#
2880d02842fSSascha WildnerCFLAGS += \
2890d02842fSSascha Wildner    -DACPI_ASL_COMPILER\
2900d02842fSSascha Wildner    -I$(ASL_COMPILER)\
2910d02842fSSascha Wildner    -I$(OBJDIR)
2920d02842fSSascha Wildner
2930d02842fSSascha Wildner#
2940d02842fSSascha Wildner# Common Rules
2950d02842fSSascha Wildner#
2960d02842fSSascha Wildnerinclude ../Makefile.rules
2970d02842fSSascha Wildner
29879eafdd7SSascha Wildner#
2991093ca81SSascha Wildner# Function to safely execute yacc:
3001093ca81SSascha Wildner# Generate the output files to a temporary directory,
3011093ca81SSascha Wildner# move the file to $(OBJDIR), and discard the directory.
3023cc0afc6SSascha Wildner#
3033cc0afc6SSascha Wildnersafe_yacc = \
3040d27ae55SSascha Wildner	_d=`mktemp -d $(OBJDIR)/$(1).XXXXXX` &&\
3050d27ae55SSascha Wildner	cd $$_d &&\
30600ffa116SSascha Wildner	$(YACC) $(YFLAGS) -v -d -p$(1) "$(abspath $(2))" &&\
3071093ca81SSascha Wildner	cd - > /dev/null;\
3080d27ae55SSascha Wildner	mv $$_d/y.tab$(suffix $(3)) $(3);\
3090d27ae55SSascha Wildner	_r=$$?;\
3100d27ae55SSascha Wildner	rm -fr $$_d;\
3110d27ae55SSascha Wildner	exit $$_r
3123cc0afc6SSascha Wildner
3133cc0afc6SSascha Wildner#
31479eafdd7SSascha Wildner# Macro processing for iASL .y files
31579eafdd7SSascha Wildner#
31679eafdd7SSascha Wildner$(OBJDIR)/aslcompiler.y :      $(ASL_PARSER)
3171093ca81SSascha Wildner	@echo "- " $(MACROPROC) "          Preprocess main iASL parser"
3181093ca81SSascha Wildner	@$(MACROPROC) $(MFLAGS) $(ASL_COMPILER)/aslparser.y > $@
3190d02842fSSascha Wildner
3200d02842fSSascha Wildner#
3210d02842fSSascha Wildner# Parser and Lexer - intermediate C files
3220d02842fSSascha Wildner#
32379eafdd7SSascha Wildner$(OBJDIR)/aslcompilerlex.c :   $(ASL_LEXER)
3241093ca81SSascha Wildner	@echo "- " $(LEX) "        "$<
3251093ca81SSascha Wildner	@$(LEX) $(LFLAGS) -PAslCompiler -o$@ $(ASL_COMPILER)/aslcompiler.l
3260d02842fSSascha Wildner
3273cc0afc6SSascha Wildner$(OBJDIR)/aslcompilerparse.c $(OBJDIR)/aslcompiler.y.h : $(OBJDIR)/aslcompiler.y
3281093ca81SSascha Wildner	@echo "- " $(YACC) "       "$<
3291093ca81SSascha Wildner	@$(call safe_yacc,AslCompiler,$<,$@)
3300d02842fSSascha Wildner
331*e5412f1eSSascha Wildner$(OBJDIR)/dtcompilerparserlex.c :      $(ASL_COMPILER)/dtcompilerparser.l $(OBJDIR)/dtcompilerparser.y.h
332*e5412f1eSSascha Wildner	@echo "- " $(LEX) "        "$<
333*e5412f1eSSascha Wildner	@$(LEX) $(DLFLAGS) -PDtCompilerParser -o$@ $<
334*e5412f1eSSascha Wildner
335*e5412f1eSSascha Wildner$(OBJDIR)/dtcompilerparserparse.c $(OBJDIR)/dtcompilerparser.y.h :       $(ASL_COMPILER)/dtcompilerparser.y
336*e5412f1eSSascha Wildner	@echo "- " $(YACC) "       "$<
337*e5412f1eSSascha Wildner	@$(call safe_yacc,DtCompilerParser,$<,$@)
338*e5412f1eSSascha Wildner
3390d02842fSSascha Wildner$(OBJDIR)/dtparserlex.c :      $(ASL_COMPILER)/dtparser.l $(OBJDIR)/dtparser.y.h
3401093ca81SSascha Wildner	@echo "- " $(LEX) "        "$<
341*e5412f1eSSascha Wildner	@$(LEX) $(DLFLAGS) -PDtParser -o$@ $<
3420d02842fSSascha Wildner
3433cc0afc6SSascha Wildner$(OBJDIR)/dtparserparse.c $(OBJDIR)/dtparser.y.h :       $(ASL_COMPILER)/dtparser.y
3441093ca81SSascha Wildner	@echo "- " $(YACC) "       "$<
3451093ca81SSascha Wildner	@$(call safe_yacc,DtParser,$<,$@)
3460d02842fSSascha Wildner
3470d02842fSSascha Wildner$(OBJDIR)/prparserlex.c :      $(ASL_COMPILER)/prparser.l $(OBJDIR)/prparser.y.h
3481093ca81SSascha Wildner	@echo "- " $(LEX) "        "$<
3491093ca81SSascha Wildner	@$(LEX) $(LFLAGS) -PPrParser -o$@ $<
3500d02842fSSascha Wildner
3513cc0afc6SSascha Wildner$(OBJDIR)/prparserparse.c $(OBJDIR)/prparser.y.h :       $(ASL_COMPILER)/prparser.y
3521093ca81SSascha Wildner	@echo "- " $(YACC) "       "$<
3531093ca81SSascha Wildner	@$(call safe_yacc,PrParser,$<,$@)
3540d02842fSSascha Wildner
3550d02842fSSascha Wildner#
3560d02842fSSascha Wildner# Parsers and Lexers - final object files
3570d02842fSSascha Wildner#
3580d02842fSSascha Wildner# Cannot use the common compile warning flags since the C files are created
3590d02842fSSascha Wildner# by the utilities above and they are not necessarily ANSI C, etc.
3600d02842fSSascha Wildner#
3610d02842fSSascha Wildner$(OBJDIR)/aslcompilerlex.o :   $(OBJDIR)/aslcompilerlex.c
3621093ca81SSascha Wildner	@echo "- " "Intermediate" $<
3631093ca81SSascha Wildner	@$(CC) -c $(CFLAGS) -Wall -Werror -o$@ $<
3640d02842fSSascha Wildner
3650d02842fSSascha Wildner$(OBJDIR)/aslcompilerparse.o : $(OBJDIR)/aslcompilerparse.c
3661093ca81SSascha Wildner	@echo "- " "Intermediate" $<
3671093ca81SSascha Wildner	@$(CC) -c $(CFLAGS) -Wall -Werror -o$@ $<
3680d02842fSSascha Wildner
369*e5412f1eSSascha Wildner$(OBJDIR)/dtcompilerparserlex.o :      $(OBJDIR)/dtcompilerparserlex.c
370*e5412f1eSSascha Wildner	@echo "- " "Intermediate" $<
371*e5412f1eSSascha Wildner	@$(CC) -c $(CFLAGS) -Wall -Werror -o$@ $<
372*e5412f1eSSascha Wildner
373*e5412f1eSSascha Wildner$(OBJDIR)/dtcompilerparserparse.o :    $(OBJDIR)/dtcompilerparserparse.c
374*e5412f1eSSascha Wildner	@echo "- " "Intermediate" $<
375*e5412f1eSSascha Wildner	@$(CC) -c $(CFLAGS) -Wall -Werror -o$@ $<
376*e5412f1eSSascha Wildner
3770d02842fSSascha Wildner$(OBJDIR)/dtparserlex.o :      $(OBJDIR)/dtparserlex.c
3781093ca81SSascha Wildner	@echo "- " "Intermediate" $<
3791093ca81SSascha Wildner	@$(CC) -c $(CFLAGS) -Wall -Werror -o$@ $<
3800d02842fSSascha Wildner
3810d02842fSSascha Wildner$(OBJDIR)/dtparserparse.o :    $(OBJDIR)/dtparserparse.c
3821093ca81SSascha Wildner	@echo "- " "Intermediate" $<
3831093ca81SSascha Wildner	@$(CC) -c $(CFLAGS) -Wall -Werror -o$@ $<
3840d02842fSSascha Wildner
3850d02842fSSascha Wildner$(OBJDIR)/prparserlex.o :      $(OBJDIR)/prparserlex.c
3861093ca81SSascha Wildner	@echo "- " "Intermediate" $<
3871093ca81SSascha Wildner	@$(CC) -c $(CFLAGS) -Wall -Werror -o$@ $<
3880d02842fSSascha Wildner
3890d02842fSSascha Wildner$(OBJDIR)/prparserparse.o :    $(OBJDIR)/prparserparse.c
3901093ca81SSascha Wildner	@echo "- " "Intermediate" $<
3911093ca81SSascha Wildner	@$(CC) -c $(CFLAGS) -Wall -Werror -o$@ $<
392