<pre style='margin:0'>
Sean Farley (seanfarley) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/dfa4442aa14c8febe88c1de5dce5ec4a3c7ee236">https://github.com/macports/macports-ports/commit/dfa4442aa14c8febe88c1de5dce5ec4a3c7ee236</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit dfa4442aa14c8febe88c1de5dce5ec4a3c7ee236
</span>Author: Sean Farley <sean@macports.org>
AuthorDate: Sun Dec 3 22:10:28 2017 -0800
<span style='display:block; white-space:pre;color:#404040;'> py-cairo: update to 1.15.4
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> In this commit, we set archive_sites to nil so that the buildbots don't build
</span><span style='display:block; white-space:pre;color:#404040;'> py-cairo against x11 automatically (many people build cairo with +quartz).
</span><span style='display:block; white-space:pre;color:#404040;'> Since py-cairo is a fairly trivial library, let's just skip using the buildbot
</span><span style='display:block; white-space:pre;color:#404040;'> for it.
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> Fixes: https://trac.macports.org/ticket/51957
</span><span style='display:block; white-space:pre;color:#404040;'> Closes: https://trac.macports.org/ticket/54891
</span>---
python/py-cairo/Portfile | 65 +++---------------
python/py-cairo/files/setup.py.patch | 127 -----------------------------------
2 files changed, 8 insertions(+), 184 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/python/py-cairo/Portfile b/python/py-cairo/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index bf47c69..013f127 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/python/py-cairo/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/python/py-cairo/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,13 +1,11 @@
</span> # -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:et:fenc=utf-8::et:sw=4:ts=4:sts=4
PortSystem 1.0
<span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup github 1.0
</span> PortGroup python 1.0
<span style='display:block; white-space:pre;background:#ffe0e0;'>-PortGroup active_variants 1.1
</span>
<span style='display:block; white-space:pre;background:#e0ffe0;'>+github.setup pygobject pycairo 1.15.4 v
</span> name py-cairo
<span style='display:block; white-space:pre;background:#ffe0e0;'>-set my_name pycairo
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-version 1.10.0
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-revision 3
</span> categories-append graphics
license {LGPL-2.1 MPL-1.1}
platforms darwin
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -16,55 +14,18 @@ description Pycairo is set of Python bindings for the cairo graphics
</span>
long_description ${description}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-homepage https://www.cairographics.org/pycairo/
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-master_sites https://www.cairographics.org/releases/
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# for python 3; python 2.6 and 2.7 is different
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-checksums rmd160 7d1c1c05113e5bbad32dbe96c65c918b170cac33 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- sha256 9aa4078e7eb5be583aeabbe8d87172797717f95e8c4338f0d4a17b683a7253be
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums rmd160 16ce1ad969a9fb06f8f28a7b07495b738d1af22f \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 9cfd69b782400048df819298f889b4ea924e16edadcaf94bb3b19c02b798df2d
</span>
python.versions 27 34 35 36
<span style='display:block; white-space:pre;background:#ffe0e0;'>-if {${name} ne ${subport}} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if {![catch {set result [active_variants cairo x11]}]} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if {!$result} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- notes "
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-The cairo port is installed without the +x11 variant; you will get runtime\
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-errors when installing a binary archive of ${subport}. Install ${subport}\
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-from source like so:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# prevent precompiled binaries; see https://trac.macports.org/ticket/51957
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+archive_sites
</span>
<span style='display:block; white-space:pre;background:#ffe0e0;'>- sudo port install -s ${subport}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- } else {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- notes "
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-Make sure cairo is installed with the +x11 variant when installing the binary\
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-version of ${subport} or install ${subport} from source like so:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- sudo port install -s ${subport}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- depends_build port:pkgconfig port:py${python.version}-numpy
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${name} ne ${subport}} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ depends_build port:pkgconfig
</span> depends_lib-append path:lib/pkgconfig/cairo.pc:cairo
<span style='display:block; white-space:pre;background:#ffe0e0;'>- # pycairo distributes python 2.x versions as py2cairo
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if {${python.version} < 31} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set my_name py2cairo
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- checksums rmd160 ce75db9af32ef1a3e90f6aaa649cbb2493a941a4 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- sha256 d30439f06c2ec1a39e27464c6c828b6eface3b22ee17b2de05dc409e429a7431
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- post-patch {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- reinplace "s|py3cairo|pycairo|g" ${worksrcpath}/setup.py
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- distname ${my_name}-${version}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- use_bzip2 yes
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- patchfiles-append setup.py.patch
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> post-extract {
fs-traverse item ${worksrcpath} {
if {[file isdirectory ${item}]} {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -75,15 +36,5 @@ version of ${subport} or install ${subport} from source like so:
</span> }
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>- if {${python.version} >= 31} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- post-destroot {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ln -s ${python.prefix}/include/pycairo/py3cairo.h ${destroot}${python.prefix}/include/pycairo/pycairo.h
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- ln -s ${python.prefix}/lib/pkgconfig/py3cairo.pc ${destroot}${python.prefix}/lib/pkgconfig/pycairo.pc
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> livecheck.type none
<span style='display:block; white-space:pre;background:#ffe0e0;'>-} else {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- livecheck.type regex
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- livecheck.regex "${my_name}-(\[0-9\\.\]+).tar.bz2"
</span> }
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/python/py-cairo/files/setup.py.patch b/python/py-cairo/files/setup.py.patch
</span>deleted file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index fd5c021..0000000
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/python/py-cairo/files/setup.py.patch
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,127 +0,0 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- setup.py 2012-09-02 21:20:12.000000000 -0500
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ setup.py.new 2012-09-02 21:19:23.000000000 -0500
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -0,0 +1,124 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#!/usr/bin/env python
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+import distutils.core as dic
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+import distutils.dir_util as dut
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+import distutils.file_util as fut
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+import distutils.sysconfig as dsy
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+import io
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+import os
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+import subprocess
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+import sys
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+pycairo_version = '1.10.0'
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+cairo_version_required = '1.10.2'
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+python_version_required = (2,6)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+pkgconfig_file = 'py3cairo.pc'
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+config_file = 'src/config.h'
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+def call(command):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ pipe = subprocess.Popen(command, shell=True,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ stdout=subprocess.PIPE,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ stderr=subprocess.PIPE)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ pipe.wait()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ return pipe
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+def pkg_config_version_check(pkg, version):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ check = '%s >= %s' % (pkg, version)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ pipe = call("pkg-config --print-errors --exists '%s'" % (check,))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ if pipe.returncode == 0:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ print(check, ' Successful')
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ else:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ print(check, ' Failed')
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ raise SystemExit(pipe.stderr.read().decode())
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+def pkg_config_parse(opt, pkg):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ check = "pkg-config %s %s" % (opt, pkg)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ pipe = call("pkg-config %s %s" % (opt, pkg))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ if pipe.returncode != 0:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ print(check, ' Failed')
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ raise SystemExit(pipe.stderr.read().decode())
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ output = pipe.stdout.read()
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ output = output.decode() # get the str
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ opt = opt[-2:]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ return [x.lstrip(opt) for x in output.split()]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+def createPcFile(PcFile):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ print('creating %s' % PcFile)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ with open(PcFile, 'w') as fo:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ fo.write ("""\
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+prefix=%s
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+Name: Pycairo
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+Description: Python 3 bindings for cairo
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+Version: %s
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+Requires: cairo
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+Cflags: -I${prefix}/include/pycairo
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+Libs:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+""" % (sys.prefix, pycairo_version)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ )
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+def createConfigFile(ConfigFile):
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ print('creating %s' % ConfigFile)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ v = pycairo_version.split('.')
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ with open(ConfigFile, 'w') as fo:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ fo.write ("""\
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+// Configuration header created by setup.py - do not edit
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#ifndef _CONFIG_H
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#define _CONFIG_H 1
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#define PYCAIRO_VERSION_MAJOR %s
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#define PYCAIRO_VERSION_MINOR %s
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#define PYCAIRO_VERSION_MICRO %s
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#define VERSION "%s"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+#endif // _CONFIG_H
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+""" % (v[0], v[1], v[2], pycairo_version)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ )
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+if sys.version_info < python_version_required:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ raise SystemExit('Error: Python >= %s is required' %
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ (python_version_required,))
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+pkg_config_version_check ('cairo', cairo_version_required)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+if sys.platform == 'win32':
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ runtime_library_dirs = []
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+else:
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ runtime_library_dirs = pkg_config_parse('--libs-only-L', 'cairo')
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+createPcFile(pkgconfig_file)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+createConfigFile(config_file)
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+cairo = dic.Extension(
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ name = 'cairo._cairo',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ sources = ['src/cairomodule.c',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ 'src/context.c',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ 'src/font.c',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ 'src/matrix.c',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ 'src/path.c',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ 'src/pattern.c',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ 'src/surface.c',
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ ],
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ include_dirs = pkg_config_parse('--cflags-only-I', 'cairo'),
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ library_dirs = pkg_config_parse('--libs-only-L', 'cairo'),
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ libraries = pkg_config_parse('--libs-only-l', 'cairo'),
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ runtime_library_dirs = runtime_library_dirs,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ )
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+dic.setup(
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ name = "pycairo",
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ version = pycairo_version,
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ description = "python interface for cairo",
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ ext_modules = [cairo],
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ data_files = [
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ ('include/pycairo', ['src/py3cairo.h']),
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ ('lib/pkgconfig', [pkgconfig_file]),
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ (os.path.join(dsy.get_python_lib(), 'cairo'),
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ ['src/__init__.py']),
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ ],
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+ )
</span></pre><pre style='margin:0'>
</pre>