shithub: libvpx

Download patch

ref: 71ccd103bd7ec1c6d34ea03417debfc558e64e05
parent: 1be46ef6b57525dca8e98eb3a6840bedca5ef446
author: Johann <johannkoenig@google.com>
date: Wed Feb 17 13:08:13 EST 2016

Set 'private_extern' visibility for macho targets

Do not set it when building with 'nasm'

Change-Id: Iff2acf22543f5899f6eefa7624821cc6270a0923

--- a/third_party/x86inc/README.libvpx
+++ b/third_party/x86inc/README.libvpx
@@ -13,3 +13,4 @@
 Manage name mangling (prefixing with '_') manually because 'PREFIX' does not
   exist in libvpx.
 Expand PIC default to macho64 and respect CONFIG_PIC from libvpx
+Set 'private_extern' visibility for macho targets.
--- a/third_party/x86inc/x86inc.asm
+++ b/third_party/x86inc/x86inc.asm
@@ -75,6 +75,13 @@
     %define FORMAT_ELF 1
 %endif
 
+%define FORMAT_MACHO 0
+%ifidn __OUTPUT_FORMAT__,macho32
+     %define FORMAT_MACHO 1
+%elifidn __OUTPUT_FORMAT__,macho64
+     %define FORMAT_MACHO 1
+%endif
+
 ; Set PREFIX for libvpx builds.
 %if FORMAT_ELF
     %undef PREFIX
@@ -709,6 +716,12 @@
     %xdefine current_function_section __SECT__
     %if FORMAT_ELF
         global %2:function %%VISIBILITY
+    %elif FORMAT_MACHO
+        %ifdef __NASM_VER__
+            global %2
+        %else
+            global %2:private_extern
+        %endif
     %else
         global %2
     %endif