From 77796caba664394f16413289c2e00357ef1ead1e Mon Sep 17 00:00:00 2001 From: Adam Ierymenko Date: Mon, 24 Apr 2017 18:12:58 -0700 Subject: [PATCH] Static ARM32 build fixes. --- make-linux.mk | 30 ++++++++++++++++-------------- 1 file changed, 16 insertions(+), 14 deletions(-) diff --git a/make-linux.mk b/make-linux.mk index 2c6eeba85..b79672385 100644 --- a/make-linux.mk +++ b/make-linux.mk @@ -171,6 +171,22 @@ endif # Disable software updates by default on Linux since that is normally done with package management override DEFS+=-DZT_BUILD_PLATFORM=1 -DZT_BUILD_ARCHITECTURE=$(ZT_ARCHITECTURE) -DZT_SOFTWARE_UPDATE_DEFAULT="\"disable\"" +# Static builds, which are currently done for a number of Linux targets +ifeq ($(ZT_STATIC),1) + override LDFLAGS+=-static + ifeq ($(ZT_ARCHITECTURE),3) + ifeq ($(shell if [ -e /usr/bin/dpkg ]; then dpkg --print-architecture; fi),armel) + override CFLAGS+=-march=armv5te -mfloat-abi=soft -msoft-float -mno-unaligned-access -marm + override CXXFLAGS+=-march=armv5te -mfloat-abi=soft -msoft-float -mno-unaligned-access -marm + ZT_USE_ARM32_NEON_ASM_SALSA2012=0 + else + override CFLAGS+=-march=armv6zk -mcpu=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard -mno-unaligned-access -marm + override CXXFLAGS+=-march=armv6zk -mcpu=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard -mno-unaligned-access -marm + ZT_USE_ARM32_NEON_ASM_SALSA2012=0 + endif + endif +endif + # Build faster crypto on some targets ifeq ($(ZT_USE_X64_ASM_SALSA2012),1) override DEFS+=-DZT_USE_X64_ASM_SALSA2012 @@ -181,20 +197,6 @@ ifeq ($(ZT_USE_ARM32_NEON_ASM_SALSA2012),1) override OBJS+=ext/arm32-neon-salsa2012-asm/salsa2012.o endif -# Static builds, which are currently done for a number of Linux targets -ifeq ($(ZT_STATIC),1) - override LDFLAGS+=-static - ifeq ($(ZT_ARCHITECTURE),3) - ifeq ($(ZT_ARM_SOFTFLOAT),1) - override CFLAGS+=-march=armv5te -mfloat-abi=soft -msoft-float -mno-unaligned-access -marm - override CXXFLAGS+=-march=armv5te -mfloat-abi=soft -msoft-float -mno-unaligned-access -marm - else - override CFLAGS+=-march=armv6zk -mcpu=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard -mno-unaligned-access - override CXXFLAGS+=-march=armv6zk -mcpu=arm1176jzf-s -mfpu=vfp -mfloat-abi=hard -mno-unaligned-access - endif - endif -endif - all: one one: $(OBJS) service/OneService.o one.o osdep/LinuxEthernetTap.o