diff options
author | Edward Hervey <bilboed@bilboed.com> | 2014-04-18 09:51:02 +0200 |
---|---|---|
committer | Edward Hervey <bilboed@bilboed.com> | 2014-04-18 11:05:34 +0200 |
commit | 3341917da6b8de30f313a6896d87ed3144bfb743 (patch) | |
tree | 8755254edcfccaa2fb616756d68c7343088800ec | |
parent | a509c3a36b65db9dbb0d1c1b2d4daeed1bc9737f (diff) |
x264: Disable ASM optimisations with clang x86-32bit
https://bugzilla.gnome.org/show_bug.cgi?id=727079
-rw-r--r-- | recipes/x264.recipe | 13 |
1 files changed, 12 insertions, 1 deletions
diff --git a/recipes/x264.recipe b/recipes/x264.recipe index 967515d9..7fd9ccef 100644 --- a/recipes/x264.recipe +++ b/recipes/x264.recipe @@ -20,24 +20,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 self.config.target_arch in [Architecture.ARM, Architecture.ARMv7]: 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, |