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