Mercurial > gub
view gub/specs/libjpeg.py @ 3493:9342b541213d
python 2.6 compat: with() -> with_template()
author | Han-Wen Nienhuys <hanwen@lilypond.org> |
---|---|
date | Fri, 18 May 2007 01:05:55 -0300 |
parents | cb9077953e4e |
children | 1af29eeaad30 |
line wrap: on
line source
import re import os from gub import mirrors from gub import misc from gub import targetpackage class Libjpeg (targetpackage.TargetBuildSpec): def __init__ (self, settings): targetpackage.TargetBuildSpec.__init__ (self, settings) self.with_template (version='v6b', mirror=mirrors.jpeg) def name (self): return 'libjpeg' def get_build_dependencies (self): return ['libtool'] def get_subpackage_names (self): return ['devel', ''] def srcdir (self): return re.sub (r'src\.v', '-', targetpackage.TargetBuildSpec.srcdir(self)) def configure_command (self): return (targetpackage.TargetBuildSpec.configure_command (self) .replace ('--config-cache', '--cache-file=config.cache')) def update_libtool (self): self.system (''' cd %(builddir)s && %(srcdir)s/ltconfig --srcdir %(srcdir)s %(srcdir)s/ltmain.sh %(target_architecture)s''' , locals ()) targetpackage.TargetBuildSpec.update_libtool (self) def patch (self): self.system ('cp %(sourcefiledir)s/jpeg.license %(license_file)s') def configure (self): guess = self.expand ('%(system_root)s/usr/share/libtool/config.guess') sub = self.expand ('%(system_root)s/usr/share/libtool/config.sub') for file in sub, guess: if os.path.exists (file): self.system ('cp -pv %(file)s %(srcdir)s', locals ()) targetpackage.TargetBuildSpec.configure (self) self.update_libtool () self.file_sub ( [ (r'(\(INSTALL_[A-Z]+\).*) (\$[^ ]+)$', r'\1 $(DESTDIR)\2'), ], '%(builddir)s/Makefile') def install_command (self): return misc.join_lines (''' mkdir -p %(install_root)s/usr/include %(install_root)s/usr/lib && make DESTDIR=%(install_root)s install-headers install-lib ''') class Libjpeg__darwin (Libjpeg): def update_libtool (self): arch = 'powerpc-apple' self.system (''' cd %(builddir)s && %(srcdir)s/ltconfig --srcdir %(srcdir)s %(srcdir)s/ltmain.sh %(arch)s ''', locals ()) targetpackage.TargetBuildSpec.update_libtool (self) class Libjpeg__mingw (Libjpeg): def configure (self): Libjpeg.configure (self) # libtool will not build dll if -no-undefined flag is # not present self.file_sub ([('-version-info', '-no-undefined -version-info')], '%(builddir)s/Makefile') class Libjpeg__linux (Libjpeg): def compile (self): Libjpeg.compile (self) self.file_sub ([('^#define (HAVE_STDLIB_H) *', '''#ifdef \\1 #define \\1 #endif''')], '%(builddir)s/jconfig.h')