Mercurial > gub
view gub/specs/zlib.py @ 6341:b49f865441a4
Fix some URLs
author | Masamichi Hosoda <trueroad@users.noreply.github.com> |
---|---|
date | Sat, 07 Feb 2015 18:22:20 +0900 |
parents | eb1064bcdd76 |
children |
line wrap: on
line source
import re # from gub import context from gub import target from gub import tools class Zlib (target.AutoBuild): source = 'http://sourceforge.net/projects/libpng/files/zlib/1.2.3/zlib-1.2.3.tar.gz' patches = ['zlib-1.2.3.patch'] srcdir_build_broken = True dependencies = ['tools::autoconf'] make_flags = ' ARFLAGS=r' destdir_install_broken = True install_flags = ' install' @context.subst_method def zlib_target (self): stripped_platform = self.settings.expand ('%(platform)s') stripped_platform = re.sub ('-.*', '', stripped_platform) stripped_platform = stripped_platform.replace ('darwin', 'Darwin') return 'SHAREDTARGET=libz.so.1.2.3 target=' + stripped_platform configure_command = '%(zlib_target)s %(srcdir)s/configure --shared ' license_files = ['%(sourcefiledir)s/zlib.license'] class Zlib_plain__mingw (Zlib): def patch (self): Zlib.patch (self) self.file_sub ([("='/bin/true'", "='true'"), ('mgwz','libz'), ], '%(srcdir)s/configure') configure_command = '%(zlib_target)s %(srcdir)s/configure --shared ' def zlib_target (self): return 'target=mingw' class Zlib_minizip__mingw (Zlib_plain__mingw): configure_command = (''' CFLAGS='-I. -O3' ''' + Zlib_plain__mingw.configure_command) def patch_include_minizip (self): self.file_sub ([('(inffast.o)$', r'\1 ioapi.o iowin32.o mztools.o unzip.o zip.o\nVPATH= contrib/minizip\n')], '%(srcdir)s/Makefile.in') def install_include_minizip (self): self.system ('cd %(srcdir)s/contrib/minizip && cp ioapi.h iowin32.h mztools.h unzip.h zip.h %(install_prefix)s/include') def patch (self): Zlib_plain__mingw.patch (self) self.patch_include_minizip () def install (self): Zlib_plain__mingw.install (self) self.install_include_minizip () Zlib__mingw = Zlib_minizip__mingw class Zlib__freebsd__64 (Zlib): patches = [] ''' no shared lib: gcc-4.2.1 says ./home/janneke/tmp/python-mingw/target/freebsd-64/root/usr/cross/bin/x86_64-freebsd6-ld: error in /home/janneke/tmp/python-mingw/target/freebsd-64/root/usr/cross/lib/gcc/x86_64-freebsd6/4.1.2/crtendS.o(.eh_frame); no .eh_frame_hdr table will be created.. ''' class Zlib__tools (tools.AutoBuild, Zlib): srcdir_build_broken = True dependencies = ['autoconf'] configure_command = Zlib.configure_command destdir_install_broken = True install_flags = ' install' license_files = Zlib.license_files