diff options
author | Sebastian Dröge <slomo@circular-chaos.org> | 2013-07-23 08:53:28 +0200 |
---|---|---|
committer | Sebastian Dröge <slomo@circular-chaos.org> | 2013-07-23 08:53:28 +0200 |
commit | e2a52bf1bef27823ec0dc2c22eb7e160f76804cf (patch) | |
tree | 770c6500dbf1b890de0cd1d6c3a966df45bf16f9 | |
parent | ad807656ecf9bb66cae7ac8de0391561004cbaba (diff) | |
parent | 59d03ca9c94a7ec445899414399cb297e8a054ce (diff) |
Merge remote-tracking branch 'origin/master' into upstream-1.0
-rw-r--r-- | cerbero/bootstrap/build_tools.py | 2 | ||||
-rw-r--r-- | cerbero/config.py | 3 | ||||
-rw-r--r-- | cerbero/packages/osx/packager.py | 20 | ||||
-rw-r--r-- | recipes/x264.recipe | 6 |
4 files changed, 23 insertions, 8 deletions
diff --git a/cerbero/bootstrap/build_tools.py b/cerbero/bootstrap/build_tools.py index f797885..24e4ffa 100644 --- a/cerbero/bootstrap/build_tools.py +++ b/cerbero/bootstrap/build_tools.py @@ -56,6 +56,7 @@ class BuildTools (BootstraperBase): not self.config.prefix_is_executable(): # For glib-mkenums and glib-genmarshal self.BUILD_TOOLS.append('glib-tools') + self.BUILD_TOOLS += self.config.extra_build_tools def start(self): # Use a common prefix for the build tools for all the configurations @@ -70,6 +71,7 @@ class BuildTools (BootstraperBase): config.build_tools_sources = self.config.build_tools_sources config.cache_file = self.config.build_tools_cache config.build_tools_cache = self.config.build_tools_cache + config.external_recipes = self.config.external_recipes if not os.path.exists(config.prefix): os.makedirs(config.prefix) diff --git a/cerbero/config.py b/cerbero/config.py index 5698215..04aa93c 100644 --- a/cerbero/config.py +++ b/cerbero/config.py @@ -79,7 +79,7 @@ class Config (object): 'universal_archs', 'osx_target_sdk_version', 'variants', 'build_tools_prefix', 'build_tools_sources', 'build_tools_cache', 'home_dir', 'recipes_commits', - 'ios_platform'] + 'ios_platform', 'extra_build_tools'] def __init__(self): self._check_uninstalled() @@ -288,6 +288,7 @@ class Config (object): self.set_property('build_tools_sources', None) self.set_property('build_tools_cache', None) self.set_property('recipes_commits', {}) + self.set_property('extra_build_tools', {}) def set_property(self, name, value, force=False): if name not in self._properties: diff --git a/cerbero/packages/osx/packager.py b/cerbero/packages/osx/packager.py index cabb5aa..e0cef58 100644 --- a/cerbero/packages/osx/packager.py +++ b/cerbero/packages/osx/packager.py @@ -26,7 +26,7 @@ from cerbero.ide.xcode.fwlib import StaticFrameworkLibrary from cerbero.errors import EmptyPackageError, FatalError from cerbero.packages import PackagerBase, PackageType from cerbero.packages.package import Package, MetaPackage, App,\ - PackageBase + PackageBase, SDKPackage from cerbero.packages.osx.distribution import DistributionXML from cerbero.packages.osx.bundles import FrameworkBundlePackager,\ ApplicationBundlePackager @@ -462,13 +462,20 @@ class IOSPackage(ProductPackage, FrameworkHeadersMixin): self.package.packages = [] self.fw_path = self.tmp self._create_framework_bundle_package(packager) + self.fw_path = os.path.join(self.tmp, '%s.framework' % framework_name) + + if isinstance(self.package, SDKPackage): + pkg_path = [self._create_product(PackageType.DEVEL)] + if self.package.user_resources: + pkg_path = self._create_dmg (pkg_path, + pkg_path.replace('.pkg', '.dmg')) + else: + pkg_path = self._create_dmg (self.fw_path, + os.path.join(output_dir, self._package_name('.dmg'))) - paths = [self._create_product(PackageType.DEVEL)] - if self.package.user_resources: - paths = [self._create_dmg (paths[0])] if not keep_temp: shutil.rmtree(self.tmp) - return paths + return [pkg_path] def _copy_files (self, files, root): for f in files: @@ -518,8 +525,7 @@ class IOSPackage(ProductPackage, FrameworkHeadersMixin): return '%s-%s-%s-%s%s' % (self.package.name, self.package.version, self.config.target_platform, self.config.target_arch, suffix) - def _create_dmg(self, pkg_path): - dmg_file = pkg_path.replace('.pkg', '.dmg') + def _create_dmg(self, pkg_path, dmg_file): # Create a new folder with the pkg and the user resources dmg_dir = os.path.join(self.tmp, 'dmg') os.makedirs(dmg_dir) diff --git a/recipes/x264.recipe b/recipes/x264.recipe index a9973d4..79e2f5f 100644 --- a/recipes/x264.recipe +++ b/recipes/x264.recipe @@ -1,4 +1,5 @@ # -*- Mode: Python -*- vi:si:et:sw=4:sts=4:ts=4:syntax=python +from cerbero.tools.libtool import LibtoolLibrary class Recipe(recipe.Recipe): @@ -32,3 +33,8 @@ class Recipe(recipe.Recipe): self.configure_options += ' --disable-asm' if self.config.target_arch in [Architecture.ARM, Architecture.ARMv7]: self.new_env = {'AS': os.environ.get('GAS', '')} + + def post_install(self): + libtool_la = LibtoolLibrary('x264', 125, None, None, self.config.libdir, + self.config.target_platform) + libtool_la.save() |