You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
ACPI: Fix build errors due objects compiled unconditionally
If the CONFIG_ACPI Kconfig symbol is not enabled and a partial build is
attempted, compile errors will happen due missing types and identifiers.
This can be easily reproduced with the following commands:
$ export CROSS_COMPILE="arm-linux-gnueabihf-" ARCH=arm
$ make allmodconfig
$ make M=drivers/acpi/
CC drivers/acpi//tables.o
drivers/acpi//tables.c:235:3: warning: 'struct acpi_subtable_proc' declared inside parameter list
unsigned int max_entries)
^
drivers/acpi//tables.c:235:3: warning: its scope is only this definition or declaration, which is probably not what you want
drivers/acpi//tables.c: In function 'acpi_parse_entries_array':
drivers/acpi//tables.c:269:4: error: invalid use of undefined type 'struct acpi_subtable_proc'
...
scripts/Makefile.build:258: recipe for target 'drivers/acpi//tables.o' failed
make[1]: *** [drivers/acpi//tables.o] Error 1
Makefile:1401: recipe for target '_module_drivers/acpi/' failed
make: *** [_module_drivers/acpi/] Error 2
This is because objects are tried to be built unconditionally even when
CONFIG_ACPI is not enabled. This is usually not a problem since arches'
Kconfig sources drivers/acpi/Kconfig directly and also selects ACPI but
the Makefile should conditionally build the objects as well to prevent
these build errors.
Signed-off-by: Javier Martinez Canillas <[email protected]>
Signed-off-by: Rafael J. Wysocki <[email protected]>
0 commit comments