summaryrefslogtreecommitdiff
path: root/core/gnutls/gnutls-3.6.9-nonPIC-assembly.patch
blob: b18f52a572dee8cf6bfea7f2325d7f94b652d159 (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
diff -rauN gnutls-3.6.9/cfg.mk gnutls-3.6.9-nonPIC-assembly-patch/cfg.mk
--- gnutls-3.6.9/cfg.mk	2019-06-28 21:06:07.000000000 +0200
+++ gnutls-3.6.9-nonPIC-assembly-patch/cfg.mk	2019-08-18 08:55:44.846119790 +0200
@@ -143,6 +143,8 @@
 	lib/accelerated/x86/XXX/aes-ssse3-x86.s \
 	lib/accelerated/x86/XXX/aes-ssse3-x86_64.s
 
+PL_NEEDS_FPIC := aesni-x86.s
+
 ASM_SOURCES_ELF := $(subst XXX,elf,$(ASM_SOURCES_XXX))
 ASM_SOURCES_COFF := $(subst XXX,coff,$(ASM_SOURCES_XXX))
 ASM_SOURCES_MACOSX := $(subst XXX,macosx,$(ASM_SOURCES_XXX))
@@ -193,7 +195,9 @@
 
 # Appro's code
 lib/accelerated/x86/elf/%.s: devel/perlasm/%.pl .submodule.stamp 
-	CC=gcc perl $< elf $@.tmp
+	CC=gcc perl $< elf \
+		$(if $(findstring $(@F),$(PL_NEEDS_FPIC)),-fPIC) \
+		$@.tmp
 	cat $<.license $@.tmp > $@ && rm -f $@.tmp
 	echo "" >> $@
 	echo ".section .note.GNU-stack,\"\",%progbits" >> $@
diff -rauN gnutls-3.6.9/lib/accelerated/x86/elf/aesni-x86.s gnutls-3.6.9-nonPIC-assembly-patch/lib/accelerated/x86/elf/aesni-x86.s
--- gnutls-3.6.9/lib/accelerated/x86/elf/aesni-x86.s	2019-06-28 21:06:07.000000000 +0200
+++ gnutls-3.6.9-nonPIC-assembly-patch/lib/accelerated/x86/elf/aesni-x86.s	2019-08-18 17:36:49.498546884 +0200
@@ -2892,7 +2892,7 @@
 .L112pic:
 	popl	%ebx
 	leal	.Lkey_const-.L112pic(%ebx),%ebx
-	leal	_gnutls_x86_cpuid_s,%ebp
+	leal 	_gnutls_x86_cpuid_s-.Lkey_const(%ebx),%ebp
 	movups	(%eax),%xmm0
 	xorps	%xmm4,%xmm4
 	movl	4(%ebp),%ebp