7e2e935de40c00b5d5580b57254911f32c2f26f0
[dragonfly.git] / sys / dev / acpica5 / Makefile
1 # $FreeBSD: src/sys/modules/acpi/acpi/Makefile,v 1.3 2004/01/08 16:38:32 njl Exp $
2 # $DragonFly: src/sys/dev/acpica5/Makefile,v 1.21 2008/08/27 16:35:19 hasso Exp $
3
4 CONTRIBDIR=     ${SYSDIR}/${ACPICA_DIR}
5 # patches to fix problems in ACPI-CA code
6 PATCHES=        hardware,hwsleep.c.patch tables,tbxface.c.patch
7 # patches to silence warnings
8 PATCHES+=       include,acglobal.h.patch debugger,dbstats.c.patch
9
10 SYSDIR?= ${.CURDIR}/../..
11 .if ACPI_DEBUG_LOCKS || ACPI_DEBUG_MEMMAP || ACPI_DEBUG_CACHE
12 CFLAGS+=        -I${.OBJDIR}/include
13 .if ACPI_DEBUG_LOCKS
14 CFLAGS+=        -DACPI_DEBUG_LOCKS=1
15 .endif
16 .if ACPI_DEBUG_MEMMAP
17 CFLAGS+=        -DACPI_DEBUG_MEMMAP=1
18 .endif
19 .if ACPI_DEBUG_CACHE
20 CFLAGS+=        -DACPI_DEBUG_CACHE=1
21 .endif
22 PATCHES+=       include,acpiosxf.h.patch
23 .endif
24
25 .include "Makefile.inc"
26
27 .PATH:  ${.OBJDIR}                                      \
28         ${.OBJDIR}/include                              \
29         ${SYSDIR}/${OSACPI_MD_DIR}                      \
30         ${SYSDIR}/platform/${MACHINE_PLATFORM}/isa      \
31         ${SYSDIR}/bus/pci                               \
32         ${.CURDIR}/Osd                                  \
33         ${.CURDIR}                                      \
34         ${ACPICA_KERN_PATHS}
35
36 KMOD    = acpi
37
38 SRCS+=          ${PATCHES}
39 # ACPI CA sources
40 SRCS+=  dsfield.c dsinit.c dsmethod.c dsmthdat.c
41 SRCS+=  dsobject.c dsopcode.c dsutils.c dswexec.c dswload.c
42 SRCS+=  dswscope.c dswstate.c evevent.c evgpe.c evgpeblk.c
43 SRCS+=  evmisc.c evregion.c evrgnini.c evsci.c evxface.c
44 SRCS+=  evxfevnt.c evxfregn.c exconfig.c exconvrt.c excreate.c
45 SRCS+=  exdump.c exfield.c exfldio.c exmisc.c exmutex.c
46 SRCS+=  exnames.c exoparg1.c exoparg2.c exoparg3.c exoparg6.c
47 SRCS+=  exprep.c exregion.c exresnte.c exresolv.c exresop.c
48 SRCS+=  exstore.c exstoren.c exstorob.c exsystem.c exutils.c
49 SRCS+=  hwacpi.c hwgpe.c hwregs.c hwsleep.c hwtimer.c
50 SRCS+=  nsaccess.c nsalloc.c nsdump.c nseval.c nsinit.c
51 SRCS+=  nsload.c nsnames.c nsobject.c nsparse.c nssearch.c
52 SRCS+=  nsutils.c nswalk.c nsxfeval.c nsxfname.c nsxfobj.c
53 SRCS+=  psargs.c psloop.c psopcode.c psparse.c psscope.c
54 SRCS+=  pstree.c psutils.c pswalk.c psxface.c
55 SRCS+=  rsaddr.c rscalc.c rscreate.c rsdump.c rsinfo.c rsio.c
56 SRCS+=  rsirq.c rslist.c rsmemory.c rsmisc.c rsutils.c
57 SRCS+=  rsxface.c tbfadt.c tbfind.c tbinstal.c
58 SRCS+=  tbutils.c tbxface.c tbxfroot.c utalloc.c
59 SRCS+=  utclib.c utcopy.c utdebug.c utdelete.c uteval.c
60 SRCS+=  utglobal.c utinit.c utmath.c utmisc.c utmutex.c utobject.c
61 SRCS+=  utresrc.c utstate.c utxface.c
62
63 # OSD layer
64 #
65 SRCS+=  acpi.c acpi_acad.c acpi_battery.c acpi_button.c acpi_cmbat.c acpi_cpu.c
66 SRCS+=  acpi_ec.c acpi_isab.c acpi_lid.c
67 SRCS+=  acpi_package.c
68 # The PCI part of ACPI5 doesn't work with the current infrastructure
69 # SRCS+=        acpi_pci.c acpi_pcib.c acpi_pcib_acpi.c acpi_pcib_pci.c
70 # SRCS+=        acpi_pci_link.c
71 SRCS+=  acpi_powerres.c acpi_resource.c acpi_thermal.c
72 SRCS+=  acpi_timer.c acpi_if.c
73 SRCS+=  OsdDebug.c
74 SRCS+=  OsdHardware.c OsdInterface.c OsdInterrupt.c OsdMemory.c OsdSchedule.c
75 SRCS+=  OsdStream.c OsdSynch.c OsdTable.c OsdEnvironment.c
76 SRCS+=  opt_acpi.h opt_bus.h opt_ddb.h
77 SRCS+=  device_if.h bus_if.h pci_if.h pcib_if.h isa_if.h acpi_if.h
78 MFILES = kern/device_if.m kern/bus_if.m bus/pci/pci_if.m bus/pci/pcib_if.m
79 MFILES+= bus/isa/isa_if.m dev/acpica5/acpi_if.m
80
81 # Debugging support
82 DBSRC=  dbcmds.c dbdisply.c dbexec.c dbfileio.c dbhistry.c
83 DBSRC+= dbinput.c dbstats.c dbutils.c dbxface.c
84 DBSRC+= dmbuffer.c dmnames.c dmopcode.c dmobject.c dmresrc.c dmresrcl.c
85 DBSRC+= dmresrcs.c dmutils.c dmwalk.c
86
87 .if ACPI_NO_SEMAPHORES
88 CFLAGS+=-DACPI_NO_SEMAPHORES
89 .endif
90 .if ACPI_DEBUG
91 CFLAGS+=-DACPI_DEBUG
92 SRCS+=  ${DBSRC}
93 opt_ddb.h: Makefile
94         echo "#define DDB 1" > ${.TARGET}
95 .else
96 opt_ddb.h: Makefile
97         echo -n > ${.TARGET}
98 .endif
99 .if ACPI_USE_LOCAL_CACHE
100 CFLAGS+= -DACPI_USE_LOCAL_CACHE
101 SRCS+=          utcache.c
102 .else
103 SRCS+=          OsdCache.c
104 .endif
105
106 # Machine-specific code such as sleep/wakeup
107 SRCS+=  acpi_machdep.c acpi_wakecode.h acpi_wakeup.c
108 .if ${MACHINE_ARCH} == "i386"
109 # APIC enumerators
110 #SRCS+= madt.c
111 SRCS+=  pmtimer.c
112 .endif
113 CLEANFILES+=    acpi_wakecode.h acpi_wakecode.o acpi_wakecode.bin ${DBSRC}
114 CLEANFILES+=    platform/acenv.h
115
116 acpi_wakecode.h: acpi_wakecode.S
117         ${MAKE} -f ${SYSDIR}/${OSACPI_MD_DIR}/Makefile \
118                 MAKESRCPATH=${SYSDIR}/${OSACPI_MD_DIR}
119
120 SUBDIR= acpi_toshiba
121 all: ${PROG} ${SUBDIR}
122
123 # *.o file for each patched *.c file is created under the same directory,
124 # rather than right below ${.OBJDIR}.
125 .for _p in ${PATCHES:M*.c.patch}
126 SRCS:=  ${SRCS:N${_p:C/^.*,//:R}}
127 ${_p:S|,|/|g:R:R}.o: ${_p}
128         ${CC} ${CFLAGS} -o ${.TARGET} -c ${.IMPSRC}
129 .endfor
130
131 .include <bsd.kmod.mk>