зеркало из https://github.com/mozilla/pjs.git
Bug 639204 - Fix link with xcode 4; r=tterribe
This commit is contained in:
Родитель
9ca9c88072
Коммит
4869b6f1ce
|
@ -317,3 +317,6 @@ done
|
|||
|
||||
# Patch to compile with Sun Studio on Solaris
|
||||
patch -p3 < solaris.patch
|
||||
|
||||
# Patch to fix link with xcode4
|
||||
patch -p1 < xcode4.patch
|
||||
|
|
|
@ -168,15 +168,10 @@
|
|||
%macro GET_GOT 1
|
||||
push %1
|
||||
call %%get_got
|
||||
%%sub_offset:
|
||||
jmp %%exitGG
|
||||
%%get_got:
|
||||
mov %1, [esp]
|
||||
add %1, fake_got - %%sub_offset
|
||||
ret
|
||||
%%exitGG:
|
||||
pop %1
|
||||
%undef GLOBAL
|
||||
%define GLOBAL(x) x + %1 - fake_got
|
||||
%define GLOBAL(x) x + %1 - %%get_got
|
||||
%undef RESTORE_GOT
|
||||
%define RESTORE_GOT pop %1
|
||||
%endmacro
|
||||
|
@ -289,7 +284,6 @@
|
|||
%elifidn __OUTPUT_FORMAT__,macho32
|
||||
%macro SECTION_RODATA 0
|
||||
section .text
|
||||
fake_got:
|
||||
%endmacro
|
||||
%else
|
||||
%define SECTION_RODATA section .rodata
|
||||
|
|
|
@ -0,0 +1,42 @@
|
|||
commit 52f6e28e9e5e176424c1c65ff13aa57abf9c00e6
|
||||
Author: Rafael Ávila de Espíndola <rafael.espindola@gmail.com>
|
||||
Date: Sat Mar 5 15:36:40 2011 -0500
|
||||
|
||||
Fix build with xcode4 and simplify GLOBAL.
|
||||
|
||||
Without this change I get link errors in firefox's libxul. It looks
|
||||
like the linker expect a particular pattern for getting the GOT. This
|
||||
patch changes webm to use the same pattern used by the compiler.
|
||||
|
||||
Change-Id: Iea8c2e134ad45c1dc7d221ff885a8429bfa4e057
|
||||
|
||||
diff --git a/vpx_ports/x86_abi_support.asm b/vpx_ports/x86_abi_support.asm
|
||||
index a872b28..be64cd7 100644
|
||||
--- a/vpx_ports/x86_abi_support.asm
|
||||
+++ b/vpx_ports/x86_abi_support.asm
|
||||
@@ -168,15 +168,10 @@
|
||||
%macro GET_GOT 1
|
||||
push %1
|
||||
call %%get_got
|
||||
- %%sub_offset:
|
||||
- jmp %%exitGG
|
||||
%%get_got:
|
||||
- mov %1, [esp]
|
||||
- add %1, fake_got - %%sub_offset
|
||||
- ret
|
||||
- %%exitGG:
|
||||
+ pop %1
|
||||
%undef GLOBAL
|
||||
- %define GLOBAL(x) x + %1 - fake_got
|
||||
+ %define GLOBAL(x) x + %1 - %%get_got
|
||||
%undef RESTORE_GOT
|
||||
%define RESTORE_GOT pop %1
|
||||
%endmacro
|
||||
@@ -289,7 +284,6 @@
|
||||
%elifidn __OUTPUT_FORMAT__,macho32
|
||||
%macro SECTION_RODATA 0
|
||||
section .text
|
||||
-fake_got:
|
||||
%endmacro
|
||||
%else
|
||||
%define SECTION_RODATA section .rodata
|
Загрузка…
Ссылка в новой задаче