From 929b5b762be060e25f035cafc75f3d37efe0334b Mon Sep 17 00:00:00 2001 From: Gary Ching-Pang Lin Date: Fri, 12 Dec 2014 17:05:23 +0800 Subject: [PATCH] Make the build failed with objcopy < 2.24 The wildcard support was introduced in objcopy since binutils 2.24. However, objcopy < 2.24 never issues any warning message with the wildcard and a faulty binary will be generated. This commit makes the build failed as a notification for the usage of binutils < 2.24. Signed-off-by: Gary Ching-Pang Lin --- Makefile | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/Makefile b/Makefile index dee3a85..83cf374 100644 --- a/Makefile +++ b/Makefile @@ -3,6 +3,7 @@ LD = $(CROSS_COMPILE)ld OBJCOPY = $(CROSS_COMPILE)objcopy ARCH = $(shell $(CC) -dumpmachine | cut -f1 -d- | sed s,i[3456789]86,ia32,) +OBJCOPY_GTE224 = $(shell expr `$(OBJCOPY) --version |grep ^"GNU objcopy" | sed 's/^.* //g' | cut -f1-2 -d.` \>= 2.24) SUBDIRS = Cryptlib lib @@ -127,6 +128,9 @@ endif FORMAT ?= --target efi-app-$(ARCH) %.efi: %.so +ifneq ($(OBJCOPY_GTE224),1) + $(error objcopy >= 2.24 is required) +endif $(OBJCOPY) -j .text -j .sdata -j .data \ -j .dynamic -j .dynsym -j .rel* \ -j .rela* -j .reloc -j .eh_frame \