From: Stijn Tintel Date: Fri, 4 Dec 2020 16:32:46 +0000 (+0200) Subject: rules.mk: use -fPIC instead of -fpic on arm64 X-Git-Tag: v21.02.0-rc1~881 X-Git-Url: http://git.cdn.openwrt.org/?a=commitdiff_plain;h=0eb2fa39f313cac1e1e76c09e6ecf204064697a9;p=openwrt%2Fstaging%2Fchunkeey.git rules.mk: use -fPIC instead of -fpic on arm64 Some packages fail to build on arm64 when PKG_ASLR_PIE_ALL=y, due to machine-specific size restrictions on the global offset table. While the manual instructs to recompile with -fPIC if it fails with -fpic, by doing this per package, there is still a risk of random breakage due to version bumps or other changes, so let's use -fPIC on arm64 by default. While comparing the sizes of 141 packages built with -fpic vs -fPIC, most packages are either equal or smaller in size. Only 9 of the compared packages turned out slightly larger. Signed-off-by: Stijn Tintel --- diff --git a/rules.mk b/rules.mk index 34222a3a71..f79340b124 100644 --- a/rules.mk +++ b/rules.mk @@ -77,7 +77,7 @@ IS_PACKAGE_BUILD := $(if $(filter package/%,$(BUILD_SUBDIR)),1) OPTIMIZE_FOR_CPU=$(subst i386,i486,$(ARCH)) -ifeq ($(ARCH),powerpc) +ifneq (,$(findstring $(ARCH) , aarch64 aarch64_be powerpc )) FPIC:=-fPIC else FPIC:=-fpic