freebsd-dev/sys/i386/acpica/Makefile
Ruslan Ermilov 4962065404 Refine previous revision to allow acpi_wakecode.h to be safely built
from both the acpi module build directory and a kernel build directory.
The latter didn't work when one attempted to build a kernel which had
"device acpi" with the "make kernel-toolchain buildkernel" command
because a cross-compiler couldn't find anything in the standard system
include path (it's empty in the kernel-toolchain case).

Fix this by passing a better root path to kernel headers (src/sys)
which works for both cases, kernel and module (-I@ only worked for
module).

Also, while here, pass -nostdinc (and a different spelling for icc) --
it's a feature that the kernel source tree is self-contained, and this
change enforces this.

Reported by:	glebius
2006-09-06 14:23:40 +00:00

31 lines
648 B
Makefile

# $FreeBSD$
# Correct path for kernel builds
# Don't rely on the kernel's .depend file
.ifdef MAKESRCPATH
.PATH: ${MAKESRCPATH}
DEPENDFILE=
.else
MAKESRCPATH= ${.CURDIR}
CLEANFILES= acpi_wakecode.h acpi_wakecode.bin acpi_wakecode.o
.endif
.if ${CC} == "icc"
CFLAGS+= -restrict
NOSTDINC= -X
.else
NOSTDINC= -nostdinc
.endif
CFLAGS+= ${NOSTDINC} -I. -I${MAKESRCPATH}/../..
all: acpi_wakecode.h
acpi_wakecode.o: acpi_wakecode.S
acpi_wakecode.bin: acpi_wakecode.o
objcopy -S -O binary acpi_wakecode.o acpi_wakecode.bin
acpi_wakecode.h: acpi_wakecode.bin acpi_wakecode.o
sh ${MAKESRCPATH}/genwakecode.sh > acpi_wakecode.h
.include <bsd.prog.mk>