Skip to content

Commit

Permalink
Build: for now, don't error on RWX loadable segments
Browse files Browse the repository at this point in the history
Right now on some CI builds we get:

  aarch64-linux-gnu-gcc -nostdlib -fPIC -Wl,--warn-common -Wl,--no-undefined \
  	-Wl,--fatal-warnings -Wl,-shared -Wl,-Bsymbolic -L/usr/lib64 \
  	-L/__w/certwrapper/certwrapper/gnu-efi/ -Wl,--build-id=sha1 \
  	-Wl,--hash-style=sysv  -o certmule.so certmule.o sbat_data.o  \
  	/usr/lib/gcc/aarch64-linux-gnu/12/libgcc.a \
  	-T /__w/certwrapper/certwrapper/elf_aarch64_efi.lds
  /usr/bin/aarch64-linux-gnu-ld: warning: certmule.so has a LOAD segment with RWX permissions
  collect2: error: ld returned 1 exit status
  make: *** [../Makefile:115: certmule.so] Error 1

Right now this breaks CI despite no code change from when CI worked (due
to the distros being updated).  The segments themselves don't really
matter (they exist in ELF but not in PE), so we could plausibly fix
them, but that belongs in a different patch series.  Unfortunately some
of the linkers we're testing against don't support
"--no-warn-rwx-segments", and some of them don't support
"--no-error-rwx-segments".  So for right now, I'm disabling
"--fatal-warnings" instead.

Signed-off-by: Peter Jones <[email protected]>
  • Loading branch information
vathpela committed Jan 17, 2024
1 parent 6311d04 commit ac0b732
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ BUILDFLAGS := $(CFLAGS) -fPIC -Werror -Wall -Wextra -fshort-wchar \
-I$(GNUEFIDIR)/inc/$(ARCH) \
-I$(GNUEFIDIR)/inc/protocol
CCLDFLAGS ?= -nostdlib -fPIC -Wl,--warn-common \
-Wl,--no-undefined -Wl,--fatal-warnings \
-Wl,--no-undefined \
-Wl,-shared -Wl,-Bsymbolic -L$(LIBDIR) -L$(GNUEFIDIR) \
-Wl,--build-id=sha1 -Wl,--hash-style=sysv
LD = $(CROSS_COMPILE)ld
Expand Down

0 comments on commit ac0b732

Please sign in to comment.