Mercurial > gub
changeset 3400:82e1a185d8a2
Update debian-* to get_cross_build_dependencies.
Resolve debian packages using version from Packages; do not use
lp.org's partly mirror.
author | Jan Nieuwenhuizen <janneke@gnu.org> |
---|---|
date | Thu, 03 May 2007 12:41:24 +0200 |
parents | adebe2263494 |
children | bc06eb1d4dca |
files | TODO gub/config_cache.py gub/debian-arm.py gub/debian.py gub/gup.py gub/installer.py gub/mipsel.py gub/misc.py gub/settings.py gub/specs/debian/cross/gcc-34.py gub/specs/debian/cross/gcc.py gub/specs/debian/libc6-dev.py gub/specs/debian/libc6.py gub/specs/debian/libdbi0-dev.py gub/specs/debian/libqt4-dev.py gub/specs/debian/linux-kernel-headers.py gub/specs/linux-headers.py |
diffstat | 17 files changed, 93 insertions(+), 103 deletions(-) [+] |
line wrap: on
line diff
--- a/TODO Thu May 03 12:38:55 2007 +0200 +++ b/TODO Thu May 03 12:41:24 2007 +0200 @@ -1,6 +1,4 @@ * update platform packages to use get_cross_build_dependencies - - debian-* - - mipsel - linux-arm-... DONE @@ -25,8 +23,6 @@ - better name for gubb.py -- rename mipsel to debian-mipsel.py (and other debian-based platforms) - - Split gub/*py into packager, builder, platform - Explode inheritance, and use membership in GUP
--- a/gub/config_cache.py Thu May 03 12:38:55 2007 +0200 +++ b/gub/config_cache.py Thu May 03 12:41:24 2007 +0200 @@ -266,6 +266,7 @@ config_cache['debian'] = config_cache['linux-x86'] config_cache['debian-arm'] = config_cache['arm'] +config_cache['debian-mipsel'] = config_cache['mipsel'] config_cache['linux-arm-softfloat'] = config_cache['arm'] config_cache['linux-arm-vfp'] = config_cache['arm'] config_cache['freebsd-x86'] = config_cache['freebsd6-x86']
--- a/gub/debian-arm.py Thu May 03 12:38:55 2007 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,14 +0,0 @@ -def get_cross_packages (settings): - # obsolete - return [] - -def get_cross_build_dependencies (settings): - from gub import debian - # FIXME: urg, must override in debian/cross/gcc.py - debian.gcc_version = '3.4.3' # only change - return debian.get_cross_build_dependencies (settings) - -def change_target_package (p): - from gub import cross - cross.change_target_package (p) - return p
--- a/gub/debian.py Thu May 03 12:38:55 2007 +0200 +++ b/gub/debian.py Thu May 03 12:41:24 2007 +0200 @@ -91,6 +91,12 @@ package.url = mirror + '/' + d['Filename'] package.format = 'deb' + pkg_name = d['Package'] + def name (self): + return pkg_name + package.name = instancemethod (name, package, package_class) + + package.ball_version = d['Version'] from gub import repository package.vc_repository = repository.TarBall (settings.downloads, package.url,
--- a/gub/gup.py Thu May 03 12:38:55 2007 +0200 +++ b/gub/gup.py Thu May 03 12:41:24 2007 +0200 @@ -448,7 +448,7 @@ from gub import cygwin cygwin.init_dependency_resolver (settings) name_to_deps = name_to_dependencies_via_cygwin - elif settings.platform in ('debian-arm', 'debian', 'mipsel'): + elif settings.platform.startswith ('debian'): from gub import debian debian.init_dependency_resolver (settings) name_to_deps = name_to_dependencies_via_debian
--- a/gub/installer.py Thu May 03 12:38:55 2007 +0200 +++ b/gub/installer.py Thu May 03 12:41:24 2007 +0200 @@ -327,7 +327,11 @@ def get_installer (settings, args=[]): installer_class = { + # TODO: ipkg/dpkg + 'debian' : Shar, 'debian-arm' : Shar, + 'debian-mipsel' : Shar, + 'darwin-ppc' : DarwinBundle, 'darwin-x86' : DarwinBundle, 'freebsd-x86' : Shar, @@ -340,7 +344,6 @@ 'linux-ppc' : Shar, 'mingw' : Nsis, # 'mingw' : MingwRoot, - 'mipsel' : Shar, } return installer_class[settings.platform] (settings)
--- a/gub/mipsel.py Thu May 03 12:38:55 2007 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,65 +0,0 @@ - -# -from gub import cross -from gub import mirrors -from gub import gubb -from gub import linux -from gub import misc -from gub import targetpackage - -class Mipsel_runtime (gubb.BinarySpec, gubb.SdkBuildSpec): - pass - -class Gcc_34 (cross.Gcc): - def languages (self): - return ['c'] - - def configure_command (self): - return misc.join_lines (cross.Gcc.configure_command (self) - + ''' ---program-suffix=-3.4 ---with-ar=%(cross_prefix)s/bin/%(target_architecture)s-ar ---with-nm=%(cross_prefix)s/bin/%(target_architecture)s-nm -''') - - def configure (self): - cross.Gcc.configure (self) - #FIXME: --with-ar, --with-nm does not work? - for i in ('ar', 'nm', 'ranlib'): - self.system ('cd %(cross_prefix)s/bin && ln -sf %(target_architecture)s-%(i)s %(target_architecture)s-%(i)s-3.4', env=locals ()) - - def install (self): - cross.Gcc.install (self) - # get rid of duplicates - self.system (''' -rm -f %(install_root)s/usr/lib/libgcc_s.so -rm -f %(install_root)s/usr/lib/libgcc_s.so.1 -rm -f %(install_root)s/usr/cross/lib/libiberty.a -rm -rf %(install_root)s/usr/cross/mipsel-linux/lib/libiberty.a -rm -rf %(install_root)s/usr/cross/info -rm -rf %(install_root)s/usr/cross/man -rm -rf %(install_root)s/usr/cross/share/locale -''') - if 'c++' in self.languages (): - self.system (''' -rm -rf %(install_root)s/usr/lib/libsupc++.la -rm -rf %(install_root)s/usr/lib/libstdc++.la -rm -rf %(install_root)s/usr/lib/libstdc++.so.6 -rm -rf %(install_root)s/usr/lib/libstdc++.so -rm -rf %(install_root)s/usr/cross/mipsel-linux/lib/libsupc++.a -rm -rf %(install_root)s/usr/cross/mipsel-linux/lib/libstdc++.a -rm -rf %(install_root)s/usr/cross/mipsel-linux/lib/debug/libstdc++.a -''') - -def get_cross_packages (settings): - from gub import debian - return debian.get_cross_packages (settings) + [ - Gcc_34 (settings).with (version='3.4.6', - mirror=(mirrors.gnubase - + '/gcc/gcc-3.4.6/gcc-3.4.6.tar.bz2'), - format='bz2'), - ] - -def change_target_package (package): - cross.change_target_package (package) - return package
--- a/gub/misc.py Thu May 03 12:38:55 2007 +0200 +++ b/gub/misc.py Thu May 03 12:41:24 2007 +0200 @@ -145,7 +145,7 @@ def download_url (url, dest_dir): print 'Downloading', url - _download_url (url, dest_dir) + _download_url (url, dest_dir, sys.stderr) def _download_url (url, dest_dir, stderr): if not os.path.isdir (dest_dir):
--- a/gub/settings.py Thu May 03 12:38:55 2007 +0200 +++ b/gub/settings.py Thu May 03 12:41:24 2007 +0200 @@ -3,15 +3,16 @@ from gub import oslog from gub import distcc from gub import gubb - -from context import * +from gub import context platforms = { + 'debian': 'i686-linux', 'debian-arm': 'arm-linux', + 'debian-mipsel': 'mipsel-linux', + 'debian-x86': 'i686-linux', 'cygwin': 'i686-cygwin', 'darwin-ppc': 'powerpc-apple-darwin7', 'darwin-x86': 'i686-apple-darwin8', - 'debian': 'i686-linux', 'freebsd-x86': 'i686-freebsd4', 'freebsd4-x86': 'i686-freebsd4', @@ -23,14 +24,13 @@ 'linux-ppc': 'powerpc-linux', 'local': 'local', 'mingw': 'i686-mingw32', - 'mipsel': 'mipsel-linux', } -distros = ('debian-arm', 'cygwin', 'debian', 'mipsel') +distros = ('cygwin') -class Settings (Context): +class Settings (context.Context): def __init__ (self, options): - Context.__init__ (self) + context.Context.__init__ (self) self.platform = options.platform if self.platform not in platforms.keys (): @@ -57,7 +57,8 @@ self.target_architecture = platforms[self.platform] self.cpu = self.target_architecture.split ('-')[0] self.build_source = False - self.is_distro = self.platform in distros + self.is_distro = (self.platform in distros + or self.platform.startswith ('debian')) self.topdir = os.getcwd () self.logdir = self.topdir + '/log'
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/gub/specs/debian/cross/gcc-34.py Thu May 03 12:41:24 2007 +0200 @@ -0,0 +1,43 @@ +from gub import cross + +class Gcc_34__debian__mipsel (cross.Gcc): + def languages (self): + return ['c'] + + def configure_command (self): + return misc.join_lines (cross.Gcc.configure_command (self) + + ''' +--program-suffix=-3.4 +--with-ar=%(cross_prefix)s/bin/%(target_architecture)s-ar +--with-nm=%(cross_prefix)s/bin/%(target_architecture)s-nm +''') + + def configure (self): + cross.Gcc.configure (self) + #FIXME: --with-ar, --with-nm does not work? + for i in ('ar', 'nm', 'ranlib'): + self.system ('cd %(cross_prefix)s/bin && ln -sf %(target_architecture)s-%(i)s %(target_architecture)s-%(i)s-3.4', env=locals ()) + + def install (self): + cross.Gcc.install (self) + # get rid of duplicates + self.system (''' +rm -f %(install_root)s/usr/lib/libgcc_s.so +rm -f %(install_root)s/usr/lib/libgcc_s.so.1 +rm -f %(install_root)s/usr/cross/lib/libiberty.a +rm -rf %(install_root)s/usr/cross/mipsel-linux/lib/libiberty.a +rm -rf %(install_root)s/usr/cross/info +rm -rf %(install_root)s/usr/cross/man +rm -rf %(install_root)s/usr/cross/share/locale +''') + if 'c++' in self.languages (): + self.system (''' +rm -rf %(install_root)s/usr/lib/libsupc++.la +rm -rf %(install_root)s/usr/lib/libstdc++.la +rm -rf %(install_root)s/usr/lib/libstdc++.so.6 +rm -rf %(install_root)s/usr/lib/libstdc++.so +rm -rf %(install_root)s/usr/cross/mipsel-linux/lib/libsupc++.a +rm -rf %(install_root)s/usr/cross/mipsel-linux/lib/libstdc++.a +rm -rf %(install_root)s/usr/cross/mipsel-linux/lib/debug/libstdc++.a +''') +
--- a/gub/specs/debian/cross/gcc.py Thu May 03 12:38:55 2007 +0200 +++ b/gub/specs/debian/cross/gcc.py Thu May 03 12:41:24 2007 +0200 @@ -17,4 +17,5 @@ def __init__ (self, settings): cross.Gcc.__init__ (self, settings) self.with_tarball (mirror=mirrors.gnu, version='3.4.6', format='bz2') - + +
--- a/gub/specs/debian/libc6-dev.py Thu May 03 12:38:55 2007 +0200 +++ b/gub/specs/debian/libc6-dev.py Thu May 03 12:41:24 2007 +0200 @@ -5,9 +5,11 @@ class Libc6_dev (gubb.BinarySpec, gubb.SdkBuildSpec): def __init__ (self, settings): gubb.BinarySpec.__init__ (self, settings) - self.with (version=debian.glibc_version, + self.with (version=debian.get_packages ()['libc6-dev'].version (), strip_components=0, - mirror=mirrors.lilypondorg_deb, + mirror=mirrors.glibc_deb, +# FIXME: we do not mirror all 12 debian arch's, +# mirror=mirrors.lilypondorg_deb, format='deb') def untar (self): gubb.BinarySpec.untar (self)
--- a/gub/specs/debian/libc6.py Thu May 03 12:38:55 2007 +0200 +++ b/gub/specs/debian/libc6.py Thu May 03 12:41:24 2007 +0200 @@ -5,9 +5,11 @@ class Libc6 (gubb.BinarySpec, gubb.SdkBuildSpec): def __init__ (self, settings): gubb.BinarySpec.__init__ (self, settings) - self.with (version=debian.glibc_version, + self.with (version=debian.get_packages ()['libc6'].version (), strip_components=0, - mirror=mirrors.lilypondorg_deb, + mirror=mirrors.glibc_deb, +# FIXME: we do not mirror all 12 debian arch's, +# mirror=mirrors.lilypondorg_deb, format='deb') def patch (self): self.system ('cd %(srcdir)s && rm -rf usr/sbin/ sbin/ bin/ usr/bin')
--- a/gub/specs/debian/libdbi0-dev.py Thu May 03 12:38:55 2007 +0200 +++ b/gub/specs/debian/libdbi0-dev.py Thu May 03 12:41:24 2007 +0200 @@ -1,2 +1,4 @@ +from gub import gubb + class Libdbi0_dev (gubb.BinarySpec, gubb.SdkBuildSpec): pass
--- a/gub/specs/debian/libqt4-dev.py Thu May 03 12:38:55 2007 +0200 +++ b/gub/specs/debian/libqt4-dev.py Thu May 03 12:41:24 2007 +0200 @@ -1,3 +1,5 @@ +from gub import gubb + class Libqt4_dev (gubb.BinarySpec, gubb.SdkBuildSpec): def untar (self): gubb.BinarySpec.untar (self)
--- a/gub/specs/debian/linux-kernel-headers.py Thu May 03 12:38:55 2007 +0200 +++ b/gub/specs/debian/linux-kernel-headers.py Thu May 03 12:41:24 2007 +0200 @@ -5,9 +5,11 @@ class Linux_kernel_headers (gubb.BinarySpec, gubb.SdkBuildSpec): def __init__ (self, settings): gubb.BinarySpec.__init__ (self, settings) - self.with (version=debian.linux_version, + self.with (version=debian.get_packages ()['linux-kernel-headers'].version (), strip_components=0, - mirror=mirrors.lilypondorg_deb, + mirror=mirrors.lkh_deb, +# FIXME: we do not mirror all 12 debian arch's, +# mirror=mirrors.lilypondorg_deb, format='deb') def get_subpackage_names (self): return ['']
--- a/gub/specs/linux-headers.py Thu May 03 12:38:55 2007 +0200 +++ b/gub/specs/linux-headers.py Thu May 03 12:41:24 2007 +0200 @@ -26,13 +26,21 @@ #urg, shoot /me in foot #from gub import debian -from gub import misc +#from gub import misc debian = misc.load_spec ('debian/linux-kernel-headers') + class Linux_headers__debian (debian.Linux_kernel_headers): def __init__ (self, settings): debian.Linux_kernel_headers.__init__ (self, settings) - self.with (name='linux-kernel-headers') + self.with (name='linux-kernel-headers', + version=debian.get_packages ()['linux-kernel-headers'].version (), +# FIXME: we do not mirror all 12 debian arch's, +# mirror=mirrors.lilypondorg_deb, +# version='2.5.999-test7-bk-17', + mirror=mirrors.lkh_deb, + strip_components=0, + format='deb') Linux_headers__linux__ppc = Linux_headers__debian #Linux_headers__linux__64 = Linux_headers__debian