summaryrefslogtreecommitdiff
path: root/net-misc/zerotier/files/zerotier-1.4.6-fixup-neon-support.patch
blob: a6ca7f7ca38210c3a85594b6004abb1afb980f0a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
--- a/make-linux.mk	2019-09-27 21:35:39.000000000 -0700
+++ b/make-linux.mk	2019-09-27 21:36:01.000000000 -0700
@@ -118,6 +118,7 @@
 # Determine system build architecture from compiler target
 CC_MACH=$(shell $(CC) -dumpmachine | cut -d '-' -f 1)
 ZT_ARCHITECTURE=999
+ZT_DISABLE_NEON?=
 ifeq ($(CC_MACH),x86_64)
 	ZT_ARCHITECTURE=2
 	ZT_USE_X64_ASM_SALSA=1
@@ -158,57 +159,57 @@
 ifeq ($(CC_MACH),arm)
 	ZT_ARCHITECTURE=3
 	override DEFS+=-DZT_NO_TYPE_PUNNING
-	ZT_USE_ARM32_NEON_ASM_CRYPTO=1
+	ZT_DISABLE_NEON?=0
 endif
 ifeq ($(CC_MACH),armel)
 	ZT_ARCHITECTURE=3
 	override DEFS+=-DZT_NO_TYPE_PUNNING
-	ZT_USE_ARM32_NEON_ASM_CRYPTO=1
+	ZT_DISABLE_NEON?=1
 endif
 ifeq ($(CC_MACH),armhf)
 	ZT_ARCHITECTURE=3
 	override DEFS+=-DZT_NO_TYPE_PUNNING
-	ZT_USE_ARM32_NEON_ASM_CRYPTO=1
+	ZT_DISABLE_NEON?=0
 endif
 ifeq ($(CC_MACH),armv6)
 	ZT_ARCHITECTURE=3
 	override DEFS+=-DZT_NO_TYPE_PUNNING
-	ZT_USE_ARM32_NEON_ASM_CRYPTO=1
+	ZT_DISABLE_NEON?=1
 endif
 ifeq ($(CC_MACH),armv6l)
 	ZT_ARCHITECTURE=3
 	override DEFS+=-DZT_NO_TYPE_PUNNING
-	ZT_USE_ARM32_NEON_ASM_CRYPTO=1
+	ZT_DISABLE_NEON?=1
 endif
 ifeq ($(CC_MACH),armv6zk)
 	ZT_ARCHITECTURE=3
 	override DEFS+=-DZT_NO_TYPE_PUNNING
-	ZT_USE_ARM32_NEON_ASM_CRYPTO=1
+	ZT_DISABLE_NEON?=1
 endif
 ifeq ($(CC_MACH),armv6kz)
 	ZT_ARCHITECTURE=3
 	override DEFS+=-DZT_NO_TYPE_PUNNING
-	ZT_USE_ARM32_NEON_ASM_CRYPTO=1
+	ZT_DISABLE_NEON?=1
 endif
 ifeq ($(CC_MACH),armv7)
 	ZT_ARCHITECTURE=3
 	override DEFS+=-DZT_NO_TYPE_PUNNING
-	ZT_USE_ARM32_NEON_ASM_CRYPTO=1
+	ZT_DISABLE_NEON?=0
 endif
 ifeq ($(CC_MACH),armv7a)
 	ZT_ARCHITECTURE=3
 	override DEFS+=-DZT_NO_TYPE_PUNNING
-	ZT_USE_ARM32_NEON_ASM_CRYPTO=1
+	ZT_DISABLE_NEON?=0
 endif
 ifeq ($(CC_MACH),armv7l)
 	ZT_ARCHITECTURE=3
 	override DEFS+=-DZT_NO_TYPE_PUNNING
-	ZT_USE_ARM32_NEON_ASM_CRYPTO=1
+	ZT_DISABLE_NEON?=0
 endif
 ifeq ($(CC_MACH),armv7hl)
 	ZT_ARCHITECTURE=3
 	override DEFS+=-DZT_NO_TYPE_PUNNING
-	ZT_USE_ARM32_NEON_ASM_CRYPTO=1
+	ZT_DISABLE_NEON?=0
 endif
 ifeq ($(CC_MACH),arm64)
 	ZT_ARCHITECTURE=4
@@ -268,10 +269,13 @@
 		override CFLAGS+=-march=armv5 -mfloat-abi=soft -msoft-float -mno-unaligned-access -marm
 		override CXXFLAGS+=-march=armv5 -mfloat-abi=soft -msoft-float -mno-unaligned-access -marm
 		ZT_USE_ARM32_NEON_ASM_CRYPTO=0
-	else
-		override CFLAGS+=-march=armv5 -mno-unaligned-access -marm -fexceptions
-		override CXXFLAGS+=-march=armv5 -mno-unaligned-access -marm -fexceptions
+	endif
+	ifeq ($(ZT_DISABLE_NEON),1)
+		override CFLAGS+=-mno-unaligned-access -marm -fexceptions
+		override CXXFLAGS+=-mno-unaligned-access -marm -fexceptions
 		ZT_USE_ARM32_NEON_ASM_CRYPTO=0
+	else
+		ZT_USE_ARM32_NEON_ASM_CRYPTO=1
 	endif
 endif