summaryrefslogtreecommitdiff
path: root/media-libs/libvpx/files/libvpx-1.1.0-x32.patch
diff options
context:
space:
mode:
Diffstat (limited to 'media-libs/libvpx/files/libvpx-1.1.0-x32.patch')
-rw-r--r--media-libs/libvpx/files/libvpx-1.1.0-x32.patch64
1 files changed, 64 insertions, 0 deletions
diff --git a/media-libs/libvpx/files/libvpx-1.1.0-x32.patch b/media-libs/libvpx/files/libvpx-1.1.0-x32.patch
new file mode 100644
index 00000000000..bcacdbf4c79
--- /dev/null
+++ b/media-libs/libvpx/files/libvpx-1.1.0-x32.patch
@@ -0,0 +1,64 @@
+https://bugs.gentoo.org/426248
+
+From c769945318b84b5c823091213634a4db0cdc5be5 Mon Sep 17 00:00:00 2001
+From: Mike Frysinger <vapier@gentoo.org>
+Date: Tue, 25 Sep 2012 00:37:11 -0400
+Subject: [PATCH] check for x32 targets
+
+Add configure detection of the new x32 ABI.
+---
+ build/make/configure.sh | 5 +++++
+ vpx_ports/x86_abi_support.asm | 10 ++++++++++
+ 2 files changed, 15 insertions(+)
+
+diff --git a/build/make/configure.sh b/build/make/configure.sh
+index eeb959a..05bbabe 100755
+--- a/build/make/configure.sh
++++ b/build/make/configure.sh
+@@ -989,6 +989,11 @@ process_common_toolchain() {
+ x86*)
+ bits=32
+ enabled x86_64 && bits=64
++ check_cpp <<EOF && bits=x32
++#ifndef __ILP32__
++#error "not x32"
++#endif
++EOF
+ soft_enable runtime_cpu_detect
+ soft_enable mmx
+ soft_enable sse
+diff --git a/vpx_ports/x86_abi_support.asm b/vpx_ports/x86_abi_support.asm
+index e1a540c..0c9fe37 100644
+--- a/vpx_ports/x86_abi_support.asm
++++ b/vpx_ports/x86_abi_support.asm
+@@ -88,6 +88,8 @@
+ %define sym(x) x
+ %elifidn __OUTPUT_FORMAT__,elf64
+ %define sym(x) x
++%elifidn __OUTPUT_FORMAT__,elfx32
++%define sym(x) x
+ %elifidn __OUTPUT_FORMAT__,x64
+ %define sym(x) x
+ %else
+@@ -223,6 +227,9 @@
+ %ifidn __OUTPUT_FORMAT__,elf64
+ %define WRT_PLT wrt ..plt
+ %define HIDDEN_DATA(x) x:data hidden
++ %elifidn __OUTPUT_FORMAT__,elfx32
++ %define WRT_PLT wrt ..plt
++ %define HIDDEN_DATA(x) x:data hidden
+ %else
+ %define HIDDEN_DATA(x) x
+ %endif
+@@ -364,5 +371,8 @@ section .text
+ %elifidn __OUTPUT_FORMAT__,elf64
+ section .note.GNU-stack noalloc noexec nowrite progbits
+ section .text
++%elifidn __OUTPUT_FORMAT__,elfx32
++section .note.GNU-stack noalloc noexec nowrite progbits
++section .text
+ %endif
+
+--
+1.7.12
+