summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--config/android.config5
-rw-r--r--recipes/gstreamer.recipe5
-rw-r--r--recipes/pixman.recipe21
3 files changed, 29 insertions, 2 deletions
diff --git a/config/android.config b/config/android.config
index cff518fe..8bb2421b 100644
--- a/config/android.config
+++ b/config/android.config
@@ -36,7 +36,7 @@ ccache = use_ccache and 'ccache ' or ''
# Toolchain environment
os.environ['CPPFLAGS'] = "--sysroot=%s -D__ARM_ARCH_5__ -D__ARM_ARCH_5T__ -D__ARM_ARCH_5E__ -D__ARM_ARCH_5TE__ -DANDROID -DPIC -I%s/usr/include" % (sysroot, sysroot)
os.environ['CFLAGS'] += "--sysroot=%s -fPIC -DPIC -ffunction-sections -funwind-tables -fstack-protector -D__ARM_ARCH_5__ -D__ARM_ARCH_5T__ -D__ARM_ARCH_5E__ -D__ARM_ARCH_5TE__ -march=armv5te -mtune=xscale -msoft-float -mthumb -fomit-frame-pointer -fno-strict-aliasing -finline-limit=64 -DANDROID -Wa,--noexecstack -I%s/usr/include" % (sysroot, sysroot)
-os.environ['LDFLAGS'] = "--sysroot=%s -fPIC -Wl,--no-undefined -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now -Wl,--gc-sections -Wl,-z,nocopyreloc -Wl,-dynamic-linker,/system/bin/linker -L%s/usr/lib %s" % (sysroot, sysroot, os.environ.get('LDFLAGS', ''))
+os.environ['LDFLAGS'] = "--sysroot=%s -fPIC -Wl,--no-undefined -Wl,--allow-shlib-undefined -Wl,-z,noexecstack -Wl,-z,relro -Wl,-z,now -Wl,--gc-sections -Wl,-z,nocopyreloc -Wl,-dynamic-linker,/system/bin/linker -L%s/usr/lib %s" % (sysroot, sysroot, os.environ.get('LDFLAGS', ''))
os.environ['CXXFLAGS']=os.environ['CFLAGS']
def cmd(command):
@@ -62,3 +62,6 @@ os.environ['ac_cv_func_posix_getpwuid_r'] = 'no'
os.environ['ac_cv_func_nonposix_getpwuid_r'] = 'no'
os.environ['ac_cv_func_posix_getgrgid_r'] = 'no'
os.environ['ac_cv_func_nonposix_getgrgid_r'] = 'no'
+
+# For pixman
+os.environ['ac_cv_tls'] = 'none'
diff --git a/recipes/gstreamer.recipe b/recipes/gstreamer.recipe
index b4c04184..22ac7ce4 100644
--- a/recipes/gstreamer.recipe
+++ b/recipes/gstreamer.recipe
@@ -46,5 +46,8 @@ class Recipe(recipe.Recipe):
files_lang = ['gstreamer-0.10']
def prepare(self):
- if self.config.target_platform in [Platform.WINDOWS, Platform.DARWIN]:
+ if self.config.target_platform in [Platform.WINDOWS, Platform.DARWIN, Platform.ANDROID]:
self.configure_options += ' --disable-gtk-doc'
+
+ if self.config.target_platform == Platform.ANDROID:
+ self.make = '%s libcheckinternal_la_LIBADD=""' % self.make
diff --git a/recipes/pixman.recipe b/recipes/pixman.recipe
index 5e5ce98c..aea652db 100644
--- a/recipes/pixman.recipe
+++ b/recipes/pixman.recipe
@@ -1,10 +1,31 @@
# -*- Mode: Python -*- vi:si:et:sw=4:sts=4:ts=4:syntax=python
+from cerbero.utils import messages as m
+import shutil
class Recipe(recipe.Recipe):
name = 'pixman'
version = '0.26.2'
licenses = [License.MIT]
+ autoreconf = True
files_libs = ['libpixman-1']
files_devel = ['include/pixman-1', 'lib/pkgconfig/pixman-1.pc']
+
+ def prepare(self):
+ if self.config.target_platform == Platform.ANDROID:
+ # FIXME: Fails to link because of undefined __builtin_* symbols
+ self.configure_options = '--disable-arm-iwmmxt'
+
+ def configure(self):
+ if self.config.target_platform == Platform.ANDROID:
+ cpufeatures_path = os.path.join(self.config.toolchain_prefix, 'sources', 'android', 'cpufeatures')
+ o = os.path.join(cpufeatures_path, 'cpu-features.h')
+ f = os.path.join(self.make_dir, 'pixman')
+ m.action("copying %s to %s" % (o, f))
+ shutil.copy(o, f)
+ o = os.path.join(cpufeatures_path, 'cpu-features.c')
+ f = os.path.join(self.make_dir, 'pixman')
+ m.action("copying %s to %s" % (o, f))
+ shutil.copy(o, f)
+ super(recipe.Recipe, self).configure()