cerbero: Distros: Add no-distribution build

Andoni Morales ylatuya at gmail.com
Sat Mar 8 03:29:05 PST 2014


2014-03-08 5:05 GMT+01:00 Olivier Crête <tester at kemper.freedesktop.org>:

> Module: cerbero
> Branch: master
> Commit: 121a9dfd5f766fce464c537ad5b4e98d83544223
> URL:
> http://cgit.freedesktop.org/gstreamer/cerbero/commit/?id=121a9dfd5f766fce464c537ad5b4e98d83544223
>
> Author: Olivier Crête <olivier.crete at collabora.com>
> Date:   Fri Mar  7 21:48:26 2014 -0500
>
> Distros: Add no-distribution build
>
> This is the first step to allow for embedded linux systems
> that are not a specific distribution.
>
> ---
>
>  cerbero/enums.py                |    3 +++
>  cerbero/packages/disttarball.py |   13 +++++++++++++
>  cerbero/packages/packager.py    |    3 ++-
>  recipes/glib.recipe             |    3 +++
>  4 files changed, 21 insertions(+), 1 deletion(-)
>
> diff --git a/cerbero/enums.py b/cerbero/enums.py
> index 92aef5a..445481d 100644
> --- a/cerbero/enums.py
> +++ b/cerbero/enums.py
> @@ -45,6 +45,7 @@ class Distro:
>      OS_X = 'osx'
>      IOS = 'ios'
>      ANDROID = 'android'
> +    NONE = 'none'
>
>
>  class DistroVersion:
> @@ -84,6 +85,8 @@ class DistroVersion:
>      ANDROID_GINGERBREAD = 'android_gingerbread'  # API Level 9
>      ANDROID_ICE_CREAM_SANDWICH = 'android_ice_cream_sandwich'  # API
> Level 14
>      ANDROID_JELLY_BEAN = 'android_jelly_bean'  # API Level 16
> +    NONE_UCLIBC = 'none_uclibc'
> +    NONE_GLIBC = 'none_glibc'
>
>
>  class LicenseDescription:
> diff --git a/cerbero/packages/disttarball.py
> b/cerbero/packages/disttarball.py
> index 5cce9bc..53badf9 100644
> --- a/cerbero/packages/disttarball.py
> +++ b/cerbero/packages/disttarball.py
> @@ -93,3 +93,16 @@ class DistTarball(PackagerBase):
>          tar.close()
>
>          return filename
> +
> +
> +class Packager(object):
> +
> +    def __new__(klass, config, package, store):
> +        return DistTarball(config, package, store)
> +
> +
> +
> +def register():
> +    from cerbero.packages.packager import register_packager
> +    from cerbero.config import Distro
> +    register_packager(Distro.NONE, Packager)
> diff --git a/cerbero/packages/packager.py b/cerbero/packages/packager.py
> index d16d314..47fef51 100644
> --- a/cerbero/packages/packager.py
> +++ b/cerbero/packages/packager.py
> @@ -48,7 +48,7 @@ class Packager (object):
>          return _packagers[d][v](config, package, store)
>
>
> -from cerbero.packages import wix_packager, rpm, debian, android
> +from cerbero.packages import wix_packager, rpm, debian, android,
> disttarball
>  from cerbero.packages.osx import packager as osx_packager
>
>  wix_packager.register()
> @@ -56,3 +56,4 @@ osx_packager.register()
>  rpm.register()
>  debian.register()
>  android.register()
> +disttarball.register()
> diff --git a/recipes/glib.recipe b/recipes/glib.recipe
> index 68328da..a500e93 100644
> --- a/recipes/glib.recipe
> +++ b/recipes/glib.recipe
> @@ -158,6 +158,9 @@ class Recipe(recipe.Recipe):
>              elif self.config.target_distro == Distro.SUSE:
>                  if self.config.target_arch == Architecture.X86_64:
>                      path1 = '/usr/lib64/gio/modules/'
> +            elif self.config.target_distro == Distro.NONE:
> +                if self.config.target_distro_version ==
> DistroVersion.NONE_UCLIBC:
> +                    self.deps += ('gettext', 'libiconv')
>

I think for these targets, both gettext and libiconv should be a
runtime_dep recipe, like in windows or osx.
When a recipe is marked as runtime_dep=True, it will make the rest of
recipes depend on it instead
of having to list them as a dependency in several places.



             else:
>                  raise FatalError(_("Add specific for other Linux
> distributions here"))
>              self._set_gio_flags(path1, path2, use_old_uri_scheme)
>
>
> _______________________________________________
> gstreamer-commits mailing list
> gstreamer-commits at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-commits
>
>


-- 
Andoni Morales Alastruey

LongoMatch:The Digital Coach
http://www.longomatch.ylatuya.es
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20140308/211049a7/attachment-0001.html>


More information about the gstreamer-devel mailing list