commonlib: Substitude macro "__unused" in compiler.h

Since there are many identifiers whose name contain "__unused" in
headers of musl libc, introducing a macro which expands "__unused" to
the source of a util may have disastrous effect during its compiling
under a musl-based platform.

However, it is hard to detect musl at build time as musl is notorious
for having explicitly been refusing to add a macro like "__MUSL__" to
announce its own presence.

Using __always_unused and __maybe_unused for everything may be a good
idea. This is how it works in the Linux kernel, so that would at least
make us match some other standard rather than doing our own thing
(especially since the other compiler.h shorthand macros are also
inspired by Linux).

Signed-off-by: Bill XIE <persmule@hardenedlinux.org>
Change-Id: I547ae3371d7568f5aed732ceefe0130a339716a9
Reviewed-on: https://review.coreboot.org/c/coreboot/+/65717
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Felix Singer <felixsinger@posteo.net>
Reviewed-by: Julius Werner <jwerner@chromium.org>
diff --git a/util/sconfig/main.c b/util/sconfig/main.c
index 1de98d4..6648254 100644
--- a/util/sconfig/main.c
+++ b/util/sconfig/main.c
@@ -1970,7 +1970,7 @@
 	fprintf(f, "#include <fw_config.h>\n");
 	fprintf(f, "#include <%s>\n", static_header);
 	emit_chip_headers(f, chip_header.next);
-	fprintf(f, "\n#define STORAGE static __unused DEVTREE_CONST\n\n");
+	fprintf(f, "\n#define STORAGE static __maybe_unused DEVTREE_CONST\n\n");
 
 	walk_device_tree(NULL, NULL, &base_root_dev, inherit_subsystem_ids);
 	fprintf(f, "\n/* pass 0 */\n");