xref: /freebsd/usr.sbin/acpi/iasl/Makefile (revision 792bbaba989533a1fc93823df1720c8c4aaf0442)
1# $FreeBSD$
2
3PROG=	iasl
4
5# common
6SRCS=	acfileio.c adfile.c adisasm.c adwalk.c ahids.c		\
7	ahpredef.c ahtable.c ahuuids.c cmfsize.c dmextern.c	\
8	dmrestag.c dmtable.c dmtables.c dmtbdump.c dmtbinfo.c	\
9	getopt.c
10
11# compiler
12SRCS+=	aslanalyze.c aslascii.c aslbtypes.c aslcodegen.c	\
13	aslcompile.c aslcompiler.y.h aslcompilerlex.c		\
14	aslcompilerparse.c asldebug.c aslerror.c aslexternal.c	\
15	aslfileio.c aslfiles.c aslfold.c aslhelp.c aslhex.c	\
16	asllength.c asllisting.c asllistsup.c aslload.c		\
17	asllookup.c aslmain.c aslmap.c aslmapenter.c		\
18	aslmapoutput.c aslmaputils.c aslmessages.c aslmethod.c	\
19	aslnamesp.c asloffset.c aslopcodes.c asloperands.c	\
20	aslopt.c asloptions.c aslpld.c aslpredef.c aslprepkg.c	\
21	aslprintf.c aslprune.c aslresource.c aslrestype1.c	\
22	aslrestype1i.c aslrestype2.c aslrestype2d.c		\
23	aslrestype2e.c aslrestype2q.c aslrestype2s.c		\
24	aslrestype2w.c aslstartup.c aslstubs.c asltransform.c	\
25	asltree.c aslutils.c asluuid.c aslwalks.c aslxref.c	\
26	aslxrefout.c dtcompile.c dtexpress.c dtfield.c dtio.c	\
27	dtparser.y.h dtparserlex.c dtparserparse.c dtsubtable.c	\
28	dttable.c dttable1.c dttable2.c dttemplate.c dtutils.c	\
29	prexpress.c prmacros.c prparser.y.h prparserlex.c	\
30	prparserparse.c prscan.c prutils.c
31
32# components/debugger
33SRCS+=	dbfileio.c
34
35# components/disassembler
36SRCS+=	dmbuffer.c dmcstyle.c dmdeferred.c dmnames.c dmopcode.c	\
37	dmresrc.c dmresrcl.c dmresrcl2.c dmresrcs.c dmutils.c	\
38	dmwalk.c
39
40# components/dispatcher
41SRCS+=	dsargs.c dscontrol.c dsfield.c dsobject.c dsopcode.c	\
42	dsutils.c dswexec.c dswload.c dswload2.c dswscope.c	\
43	dswstate.c
44
45# components/executer
46SRCS+=	exconcat.c exconvrt.c excreate.c exdump.c exmisc.c	\
47	exmutex.c exnames.c exoparg1.c exoparg2.c exoparg3.c	\
48	exoparg6.c exprep.c exresnte.c exresolv.c exresop.c	\
49	exstore.c exstoren.c exstorob.c exsystem.c exutils.c
50
51# components/parser
52SRCS+=	psargs.c psloop.c psobject.c psopcode.c psopinfo.c	\
53	psparse.c psscope.c pstree.c psutils.c pswalk.c
54
55# components/namespace
56SRCS+=	nsaccess.c nsalloc.c nsdump.c nsnames.c nsobject.c	\
57	nsparse.c nssearch.c nsutils.c nswalk.c
58
59# components/tables
60SRCS+=	tbdata.c tbfadt.c tbinstal.c tbprint.c tbutils.c	\
61	tbxface.c tbxfload.c
62
63# components/utilities
64SRCS+=	utaddress.c utalloc.c utascii.c utbuffer.c utcache.c	\
65	utcopy.c utdebug.c utdecode.c utdelete.c uterror.c	\
66	utexcep.c utglobal.c uthex.c utinit.c utlock.c utmath.c	\
67	utmisc.c utmutex.c utnonansi.c utobject.c utownerid.c	\
68	utpredef.c utresrc.c utstate.c utstring.c utstrtoul64.c	\
69	utuuid.c utxface.c utxferror.c
70
71# os_specific/service_layers
72SRCS+=	osunixxf.c
73
74WARNS?=	2
75
76MAN=	iasl.8
77
78CFLAGS+= -DACPI_ASL_COMPILER -I.
79LFLAGS= -i -s
80YFLAGS= -d
81
82CLEANFILES= aslcompiler.y aslcompiler.y.h aslcompilerlex.c	\
83	aslcompilerparse.c aslcompilerparse.h dtparser.y.h	\
84	dtparserlex.c dtparserparse.c dtparserparse.h		\
85	prparser.y.h prparserlex.c prparserparse.c		\
86	prparserparse.h
87
88PARSER=	aslcstyle.y aslhelpers.y aslkeywords.y aslparser.y	\
89	aslprimaries.y aslresources.y aslrules.y aslsupport.y	\
90	asltokens.y asltypes.y
91
92aslcompilerlex.c: aslcompiler.l aslsupport.l
93	${LEX} ${LFLAGS} -PAslCompiler -o${.TARGET} \
94	    ${ACPICA_DIR}/compiler/aslcompiler.l
95
96aslcompiler.y: ${PARSER}
97	m4 -P -I${ACPICA_DIR}/compiler \
98	    ${ACPICA_DIR}/compiler/aslparser.y > ${.TARGET}
99
100.ORDER: aslcompilerparse.c aslcompilerparse.h
101aslcompilerparse.h: .NOMETA
102aslcompilerparse.c aslcompilerparse.h: aslcompiler.y
103	${YACC} ${YFLAGS} -pAslCompiler -oaslcompilerparse.c ${.ALLSRC}
104
105aslcompiler.y.h: aslcompilerparse.h .NOMETA
106	ln -f ${.ALLSRC} ${.TARGET}
107
108dtparserlex.c: dtparser.l
109	${LEX} ${LFLAGS} -PDtParser -o${.TARGET} ${.ALLSRC}
110
111.ORDER: dtparserparse.c dtparserparse.h
112dtparserparse.h: .NOMETA
113dtparserparse.c dtparserparse.h: dtparser.y
114	${YACC} ${YFLAGS} -pDtParser -odtparserparse.c ${.ALLSRC}
115
116dtparser.y.h: dtparserparse.h .NOMETA
117	ln -f ${.ALLSRC} ${.TARGET}
118
119prparserlex.c: prparser.l
120	${LEX} ${LFLAGS} -PPrParser -o${.TARGET} ${.ALLSRC}
121
122.ORDER: prparserparse.c prparserparse.h
123prparserparse.h: .NOMETA
124prparserparse.c prparserparse.h: prparser.y
125	${YACC} ${YFLAGS} -pPrParser -oprparserparse.c ${.ALLSRC}
126
127prparser.y.h: prparserparse.h .NOMETA
128	ln -f ${.ALLSRC} ${.TARGET}
129
130.include <bsd.prog.mk>
131