
On 09/03/2017 02:19 PM, Alexander Graf wrote:
On 03.09.17 08:17, Heinrich Schuchardt wrote:
The target $(obj)/helloworld.so: exists twice in Makefile.lib.
If you add an echo command to each of the two recipes you get warnings like:
scripts/Makefile.lib:383: warning: overriding recipe for target 'drivers/power/battery/helloworld.so' scripts/Makefile.lib:379: warning: ignoring old recipe for target 'drivers/power/battery/helloworld.so'
This patch removes the obsolete target.
Signed-off-by: Heinrich Schuchardt xypron.glpk@gmx.de
Hello Alex,
could you, please, review the change as it relates to EFI.
My Makefile foo isn't quite as good as it should be, but doesn't the existing code simply add another dependency to the required build chain?
The target is overridden so why should the dependency be executed?
https://www.gnu.org/software/make/manual/html_node/Overriding-Makefiles.html says: "However, it is invalid for two makefiles to give different recipes for the same target. I guess this will be valid for a single makefile too."
If you think the dependency is necessary, I can add it to the remaining target. Is this what you prefer?
Regards
Heinrich
Alex
Best regards
Heinrich
scripts/Makefile.lib | 2 -- 1 file changed, 2 deletions(-)
diff --git a/scripts/Makefile.lib b/scripts/Makefile.lib index 9ce47b4d22..7f97e8ebf3 100644 --- a/scripts/Makefile.lib +++ b/scripts/Makefile.lib @@ -375,8 +375,6 @@ cmd_efi_ld = $(LD) -nostdlib -znocombreloc -T $(EFI_LDS_PATH) -shared \ EFI_LDS_PATH = $(srctree)/arch/$(ARCH)/lib/$(EFI_LDS) -$(obj)/helloworld.so: $(EFI_LDS_PATH)
- $(obj)/helloworld.so: $(obj)/helloworld.o
arch/$(ARCH)/lib/$(EFI_CRT0) \ arch/$(ARCH)/lib/$(EFI_RELOC) $(call cmd,efi_ld)