summaryrefslogtreecommitdiff
path: root/src/console/Makefile.mk
AgeCommit message (Collapse)Author
2024-06-16console: Only add non-stub code to romstage if SEPARATE_ROMSTAGE=yNicholas Chin
If both CONFIG_SEPARATE_ROMSTAGE and CONFIG_BOOTBLOCK_CONSOLE are not set, compilation will fail with errors indicating redefinitions of various console methods. When BOOTBLOCK_CONSOLE is not set, the __CONSOLE_ENABLE__ macro in include/console/console.h evaluates to zero when compiling the bootblock, resulting in various console methods being defined as stubs in the header. In a typical build with a separate bootblock and romstage, this will not cause a conflict as the non-stub definitions found in the console/*.c files are added conditionally to the bootblock depending on CONFIG_BOOTBLOCK_CONSOLE. When SEPARATE_ROMSTAGE is not set, the list of romstage objects gets added to the bootblock. Since the console sources were unconditionally added to romstage, the non-stub definitions were able to slip into the bootblock, causing a redefinition of the stubs. Avoid this by conditionally adding these sources to romstage depending on CONFIG_SEPARATE_ROMSTAGE. If SEPARATE_ROMSTAGE is set, the non-stub definitions are handled in the same way as they were before. If it is not set, the union of bootblock and romstage objects will only include the non-stub definitions based on CONFIG_BOOTBLOCK_CONSOLE, which uses existing console/Makefile.mk rules for the bootblock. TEST=qemu-i440fx builds successfully with all possible settings of CONFIG_SEPARATE_ROMSTAGE and CONFIG_BOOTBLOCK_CONSOLE. Change-Id: I59b3f0c52a4338b1573e0a647bc16cec4943fd7f Signed-off-by: Nicholas Chin <nic.c3.14@gmail.com> Reviewed-on: https://review.coreboot.org/c/coreboot/+/83088 Reviewed-by: Felix Singer <service+coreboot-gerrit@felixsinger.de> Reviewed-by: Paul Menzel <paulepanter@mailbox.org> Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Angel Pons <th3fanbus@gmail.com>
2024-01-24lib,console,sbom: Rename Makefiles from .inc to .mkMartin Roth
The .inc suffix is confusing to various tools as it's not specific to Makefiles. This means that editors don't recognize the files, and don't open them with highlighting and any other specific editor functionality. This issue is also seen in the release notes generation script where Makefiles get renamed before running cloc. Signed-off-by: Martin Roth <gaumless@gmail.com> Change-Id: I9eabe84d55fd9f434e4128866810c0e4970f2ae7 Reviewed-on: https://review.coreboot.org/c/coreboot/+/80081 Reviewed-by: Michael Niewöhner <foss@mniewoehner.de> Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Maximilian Brune <maximilian.brune@9elements.com> Reviewed-by: Felix Singer <service+coreboot-gerrit@felixsinger.de>