from gub import target class Cairo_new (target.AutoBuild): source = 'https://www.cairographics.org/releases/cairo-1.16.0.tar.xz' def patch (self): target.AutoBuild.patch (self) self.system ('rm -f %(srcdir)s/src/cairo-features.h') configure_flags = (target.AutoBuild.configure_flags + '--disable-xlib' + '--disable-xlib-xrender' + '--disable-xcb' + '--disable-poppler' ) dependencies = ['tools::libtool', 'fontconfig-devel', 'ghostscript-devel', 'glib-devel', 'libpng-devel', 'pixman-new-devel', 'zlib-devel'] def get_conflict_dict (self): return {'': ['cairo'], 'doc': ['cairo-doc'], 'devel': ['cairo-devel']} class Cairo_new__darwin (Cairo_new): configure_flags = (Cairo_new.configure_flags + ' CFLAGS="-D CAIRO_NO_MUTEX=1"' ) dependencies = ([x for x in Cairo_new.dependencies if 'libx' not in x and 'poppler' not in x] # poppler does not build for mingw ???? old comment, test ) class Cairo_new__mingw (Cairo_new): configure_flags = (Cairo_new.configure_flags + ' --enable-ft' + ' LDFLAGS="-lpthread -llibpng12"') dependencies = (Cairo_new.dependencies + ['mingw-w64-runtime'])