From 12cbd48e1e78f07b19df900b0f9ccdd633aa42ee Mon Sep 17 00:00:00 2001 From: Cole Robinson Date: Mon, 27 Nov 2023 12:51:25 -0500 Subject: [PATCH] pc-bios/optionrom: Fix pvh.img ld build failure on fedora rawhide Content-type: text/plain binutils 2.39 shows some warnings when building pvh.img /usr/bin/ld: warning: pvh.o: missing .note.GNU-stack section implies executable stack /usr/bin/ld: NOTE: This behaviour is deprecated and will be removed in a future version of the linker /usr/bin/ld: warning: pvh.img has a LOAD segment with RWX permissions The latter of which is fatal on Fedora rawhide for some reason. Add linker options to suppress the errors Signed-off-by: Cole Robinson --- pc-bios/optionrom/Makefile | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/pc-bios/optionrom/Makefile b/pc-bios/optionrom/Makefile index 30d07026c7..87cfc484c7 100644 --- a/pc-bios/optionrom/Makefile +++ b/pc-bios/optionrom/Makefile @@ -38,6 +38,16 @@ config-cc.mak: Makefile override LDFLAGS = -nostdlib -Wl,--build-id=none,-T,$(SRC_DIR)/flat.lds +ld-test = $(LD) -v $1 >/dev/null 2>/dev/null +ld-option = if $(call ld-test, $1); then \ + echo "$(TARGET_PREFIX)$1 detected" && echo "override LDFLAGS += -Wl,$1" >&3; else \ + echo "$(TARGET_PREFIX)$1 not detected" $(if $2,&& echo "override LDFLAGS += $2" >&3); fi + +config-ld.mak: Makefile + $(quiet-@)($(call ld-option,--no-warn-rwx-segments); \ + $(call ld-option,--no-warn-execstack)) 3> config-ld.mak +-include config-ld.mak + pvh.img: pvh.o pvh_main.o %.o: %.S @@ -61,7 +71,7 @@ clean: rm -f *.o *.d *.raw *.img *.bin *~ distclean: - rm -f config-cc.mak + rm -f config-cc.mak config-ld.mak # suppress auto-removal of intermediate files .SECONDARY: