summaryrefslogtreecommitdiff
path: root/recipes/x264.recipe
diff options
context:
space:
mode:
authorEdward Hervey <bilboed@bilboed.com>2014-04-18 09:51:02 +0200
committerEdward Hervey <bilboed@bilboed.com>2014-04-18 11:05:05 +0200
commit46a65da9460b323545863d5a0d48be89bb635dc3 (patch)
tree1969a902e980cfc06256082bba19b82a67b9c30e /recipes/x264.recipe
parent8b345e847e64536284d7019bb61260ff89cace93 (diff)
x264: Disable ASM optimisations with clang x86-32bit
https://bugzilla.gnome.org/show_bug.cgi?id=727079
Diffstat (limited to 'recipes/x264.recipe')
-rw-r--r--recipes/x264.recipe13
1 files changed, 12 insertions, 1 deletions
diff --git a/recipes/x264.recipe b/recipes/x264.recipe
index 089201a9..fa38d7ed 100644
--- a/recipes/x264.recipe
+++ b/recipes/x264.recipe
@@ -21,24 +21,35 @@ class Recipe(recipe.Recipe):
'include/x264_config.h']
def prepare(self):
+ # clang x86-32 fails at generating proper asm PIC code
+ # See bug https://bugzilla.gnome.org/show_bug.cgi?id=727079
+ enable_asm = True
+
arch = self.config.target_arch
if self.config.target_arch == Architecture.X86:
arch = 'i686'
if self.config.target_platform == Platform.DARWIN:
if self.config.target_arch == Architecture.X86:
self.new_env = {'AS': 'yasm -O2 -f macho -DPREFIX'}
+ enable_asm = False
if self.config.target_platform == Platform.WINDOWS:
self.configure_options += ' --enable-win32thread'
self.configure_options += ' --host=%s-pc-%s' % (arch, self.config.target_platform)
if self.config.target_platform == Platform.ANDROID:
if self.config.target_arch == Architecture.ARM:
- self.configure_options += ' --disable-asm'
+ # FIXME : Is disabling asm on ARM (< v7) still needed ?
+ enable_asm = False
if self.config.target_arch == Architecture.ARMv7:
self.new_env = {'AS': os.environ.get('CC', '')}
if self.config.target_platform == Platform.IOS:
if Architecture.is_arm(self.config.target_arch):
self.new_env = {'AS': os.environ.get('GAS', '')}
self.new_env['AS'] += ' -no-integrated-as '
+ elif self.config.target_arch == Architecture.X86:
+ enable_asm = False
+
+ if enable_asm is False:
+ self.configure_options += ' --disable-asm '
def post_install(self):
libtool_la = LibtoolLibrary('x264', 125, None, None, self.config.libdir,