<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>