Bill Wendling <mo...@google.com> writes: > On Fri, Aug 13, 2021 at 7:13 AM Daniel Axtens <d...@axtens.net> wrote: >> Bill Wendling <mo...@google.com> writes: ... >> > diff --git a/arch/powerpc/Makefile b/arch/powerpc/Makefile >> > index 6505d66f1193..17a9fbf9b789 100644 >> > --- a/arch/powerpc/Makefile >> > +++ b/arch/powerpc/Makefile >> > @@ -122,6 +122,7 @@ endif >> > >> > LDFLAGS_vmlinux-y := -Bstatic >> > LDFLAGS_vmlinux-$(CONFIG_RELOCATABLE) := -pie >> > +LDFLAGS_vmlinux-$(CONFIG_RELOCATABLE) += -z notext ... > > Unrelated question: Should the "-pie" flag be added with "+= -pie" > (note the plus sign)?
I noticed that too. It's been like that since the original relocatable support was added in 2008, commit 549e8152de80 ("powerpc: Make the 64-bit kernel as a position-independent executable"), which did: -LDFLAGS_vmlinux := -Bstatic +LDFLAGS_vmlinux-yy := -Bstatic +LDFLAGS_vmlinux-$(CONFIG_PPC64)$(CONFIG_RELOCATABLE) := -pie +LDFLAGS_vmlinux := $(LDFLAGS_vmlinux-yy) There's no mention of those flags in the change log. But the way it's written suggests the intention was to not pass -Bstatic for relocatable builds, otherwise it could have been more simply: +LDFLAGS_vmlinux-$(CONFIG_PPC64)$(CONFIG_RELOCATABLE) := -pie +LDFLAGS_vmlinux := -Bstatic $(LDFLAGS_vmlinux-yy) So I think it was deliberate to not use +=, but whether that's actually correct I can't say. Maybe in the past -Bstatic and -pie were incompatible? cheers