<pre style='margin:0'>
Joshua Root (jmroot) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/0bf799b15a1670f73f334b94fa58120fad566ba5">https://github.com/macports/macports-ports/commit/0bf799b15a1670f73f334b94fa58120fad566ba5</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new 0bf799b  py-pyobjc-*: fix SDK detection
</span>0bf799b is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 0bf799b15a1670f73f334b94fa58120fad566ba5
</span>Author: Joshua Root <jmr@macports.org>
AuthorDate: Thu Oct 24 21:47:03 2019 +1100

<span style='display:block; white-space:pre;color:#404040;'>    py-pyobjc-*: fix SDK detection
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Closes: https://trac.macports.org/ticket/59455
</span>---
 python/py-pyobjc-cocoa/Portfile                    |  2 +
 python/py-pyobjc-cocoa/files/pyobjc_setup.py.patch | 65 ++++++++++++++++++++++
 python/py-pyobjc-fsevents/Portfile                 |  2 +
 .../py-pyobjc-fsevents/files/pyobjc_setup.py.patch | 65 ++++++++++++++++++++++
 python/py-pyobjc-qtkit/Portfile                    |  2 +
 python/py-pyobjc-qtkit/files/pyobjc_setup.py.patch | 65 ++++++++++++++++++++++
 python/py-pyobjc-quartz/Portfile                   |  2 +
 .../py-pyobjc-quartz/files/pyobjc_setup.py.patch   | 65 ++++++++++++++++++++++
 8 files changed, 268 insertions(+)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/python/py-pyobjc-cocoa/Portfile b/python/py-pyobjc-cocoa/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 4383797..be7d4a5 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/python/py-pyobjc-cocoa/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/python/py-pyobjc-cocoa/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -30,6 +30,8 @@ if {${name} ne ${subport}} {
</span>                         port:py${python.version}-setuptools
     depends_lib-append  port:py${python.version}-pyobjc
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+    patchfiles      pyobjc_setup.py.patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span>     if {${configure.sdkroot} eq ""} {
         set sdkroot "/"
     } else {
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/python/py-pyobjc-cocoa/files/pyobjc_setup.py.patch b/python/py-pyobjc-cocoa/files/pyobjc_setup.py.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..9bbbe54
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/python/py-pyobjc-cocoa/files/pyobjc_setup.py.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,65 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- pyobjc_setup.py.orig   2019-10-16 20:40:22.000000000 +1100
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ pyobjc_setup.py        2019-10-24 20:40:00.000000000 +1100
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -207,14 +207,28 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     v = pl['ProductVersion']
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return '.'.join(v.split('.')[:2])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-def get_sdk_level():
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    cflags = get_config_var('CFLAGS')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    cflags = shlex.split(cflags)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    for i, val in enumerate(cflags):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        if val == '-isysroot':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-            sdk = cflags[i+1]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++def get_sdk():
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    env_cflags = os.environ.get('CFLAGS', '')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    config_cflags = get_config_var('CFLAGS')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    sdk = None
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    for cflags_str in [env_cflags, config_cflags]:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        cflags = shlex.split(cflags_str)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        for i, val in enumerate(cflags):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            if val == '-isysroot':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                sdk = cflags[i+1]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                break
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            elif val.find('-isysroot') == 0:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                sdk = val[len('-isysroot'):]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                break
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        if sdk:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             break
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    else:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return sdk
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++def get_sdk_level():
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    sdk = get_sdk()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if not sdk:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         return None
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if sdk == '/':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -223,7 +237,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     sdk = os.path.basename(sdk)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     assert sdk.startswith('MacOSX')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     assert sdk.endswith('.sdk')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    return sdk[6:-4]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if sdk == 'MacOSX.sdk':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        return get_os_level()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        return sdk[6:-4]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ class pyobjc_install_lib (install_lib.install_lib):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     def get_exclusions(self):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -396,10 +413,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if 'clang' in get_config_var('CC'):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         cflags.append('-Wno-deprecated-declarations')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    CFLAGS = get_config_var('CFLAGS')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    if '-isysroot' not in CFLAGS: # and os.path.exists('/usr/include/stdio.h'):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        # We're likely on a system with de Xcode Command Line Tools.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        # Explicitly use the most recent problems to avoid compile problems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    sdk = get_sdk()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if not sdk: # and os.path.exists('/usr/include/stdio.h'):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        # We're likely on a system with the Xcode Command Line Tools.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        # Explicitly use the most recent SDK to avoid compile problems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         data = os.popen('/usr/bin/xcrun -sdk macosx --show-sdk-path').read()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         data = data.strip()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         if data:
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/python/py-pyobjc-fsevents/Portfile b/python/py-pyobjc-fsevents/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 6532f5d..087d8b6 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/python/py-pyobjc-fsevents/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/python/py-pyobjc-fsevents/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -30,6 +30,8 @@ if {${name} ne ${subport}} {
</span>                         port:py${python.version}-setuptools
     depends_lib-append  port:py${python.version}-pyobjc
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+    patchfiles      pyobjc_setup.py.patch 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span>     if {${configure.sdkroot} eq ""} {
         set sdkroot "/"
     } else {
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/python/py-pyobjc-fsevents/files/pyobjc_setup.py.patch b/python/py-pyobjc-fsevents/files/pyobjc_setup.py.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..9bbbe54
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/python/py-pyobjc-fsevents/files/pyobjc_setup.py.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,65 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- pyobjc_setup.py.orig   2019-10-16 20:40:22.000000000 +1100
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ pyobjc_setup.py        2019-10-24 20:40:00.000000000 +1100
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -207,14 +207,28 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     v = pl['ProductVersion']
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return '.'.join(v.split('.')[:2])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-def get_sdk_level():
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    cflags = get_config_var('CFLAGS')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    cflags = shlex.split(cflags)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    for i, val in enumerate(cflags):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        if val == '-isysroot':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-            sdk = cflags[i+1]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++def get_sdk():
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    env_cflags = os.environ.get('CFLAGS', '')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    config_cflags = get_config_var('CFLAGS')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    sdk = None
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    for cflags_str in [env_cflags, config_cflags]:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        cflags = shlex.split(cflags_str)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        for i, val in enumerate(cflags):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            if val == '-isysroot':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                sdk = cflags[i+1]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                break
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            elif val.find('-isysroot') == 0:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                sdk = val[len('-isysroot'):]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                break
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        if sdk:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             break
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    else:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return sdk
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++def get_sdk_level():
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    sdk = get_sdk()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if not sdk:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         return None
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if sdk == '/':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -223,7 +237,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     sdk = os.path.basename(sdk)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     assert sdk.startswith('MacOSX')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     assert sdk.endswith('.sdk')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    return sdk[6:-4]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if sdk == 'MacOSX.sdk':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        return get_os_level()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        return sdk[6:-4]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ class pyobjc_install_lib (install_lib.install_lib):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     def get_exclusions(self):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -396,10 +413,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if 'clang' in get_config_var('CC'):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         cflags.append('-Wno-deprecated-declarations')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    CFLAGS = get_config_var('CFLAGS')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    if '-isysroot' not in CFLAGS: # and os.path.exists('/usr/include/stdio.h'):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        # We're likely on a system with de Xcode Command Line Tools.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        # Explicitly use the most recent problems to avoid compile problems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    sdk = get_sdk()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if not sdk: # and os.path.exists('/usr/include/stdio.h'):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        # We're likely on a system with the Xcode Command Line Tools.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        # Explicitly use the most recent SDK to avoid compile problems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         data = os.popen('/usr/bin/xcrun -sdk macosx --show-sdk-path').read()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         data = data.strip()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         if data:
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/python/py-pyobjc-qtkit/Portfile b/python/py-pyobjc-qtkit/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index e028ac2..e7f363a 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/python/py-pyobjc-qtkit/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/python/py-pyobjc-qtkit/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -35,6 +35,8 @@ if {${name} ne ${subport}} {
</span>     depends_lib-append  port:py${python.version}-pyobjc \
                         port:py${python.version}-pyobjc-quartz
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+    patchfiles      pyobjc_setup.py.patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span>     if {${configure.sdkroot} eq ""} {
         set sdkroot "/"
     } else {
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/python/py-pyobjc-qtkit/files/pyobjc_setup.py.patch b/python/py-pyobjc-qtkit/files/pyobjc_setup.py.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..9bbbe54
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/python/py-pyobjc-qtkit/files/pyobjc_setup.py.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,65 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- pyobjc_setup.py.orig   2019-10-16 20:40:22.000000000 +1100
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ pyobjc_setup.py        2019-10-24 20:40:00.000000000 +1100
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -207,14 +207,28 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     v = pl['ProductVersion']
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return '.'.join(v.split('.')[:2])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-def get_sdk_level():
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    cflags = get_config_var('CFLAGS')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    cflags = shlex.split(cflags)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    for i, val in enumerate(cflags):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        if val == '-isysroot':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-            sdk = cflags[i+1]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++def get_sdk():
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    env_cflags = os.environ.get('CFLAGS', '')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    config_cflags = get_config_var('CFLAGS')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    sdk = None
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    for cflags_str in [env_cflags, config_cflags]:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        cflags = shlex.split(cflags_str)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        for i, val in enumerate(cflags):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            if val == '-isysroot':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                sdk = cflags[i+1]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                break
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            elif val.find('-isysroot') == 0:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                sdk = val[len('-isysroot'):]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                break
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        if sdk:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             break
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    else:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return sdk
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++def get_sdk_level():
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    sdk = get_sdk()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if not sdk:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         return None
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if sdk == '/':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -223,7 +237,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     sdk = os.path.basename(sdk)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     assert sdk.startswith('MacOSX')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     assert sdk.endswith('.sdk')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    return sdk[6:-4]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if sdk == 'MacOSX.sdk':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        return get_os_level()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        return sdk[6:-4]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ class pyobjc_install_lib (install_lib.install_lib):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     def get_exclusions(self):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -396,10 +413,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if 'clang' in get_config_var('CC'):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         cflags.append('-Wno-deprecated-declarations')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    CFLAGS = get_config_var('CFLAGS')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    if '-isysroot' not in CFLAGS: # and os.path.exists('/usr/include/stdio.h'):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        # We're likely on a system with de Xcode Command Line Tools.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        # Explicitly use the most recent problems to avoid compile problems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    sdk = get_sdk()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if not sdk: # and os.path.exists('/usr/include/stdio.h'):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        # We're likely on a system with the Xcode Command Line Tools.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        # Explicitly use the most recent SDK to avoid compile problems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         data = os.popen('/usr/bin/xcrun -sdk macosx --show-sdk-path').read()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         data = data.strip()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         if data:
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/python/py-pyobjc-quartz/Portfile b/python/py-pyobjc-quartz/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 479e3a5..187d6de 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/python/py-pyobjc-quartz/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/python/py-pyobjc-quartz/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -34,6 +34,8 @@ if {${name} ne ${subport}} {
</span>     depends_lib-append  port:py${python.version}-pyobjc \
                         port:py${python.version}-pyobjc-cocoa
 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+    patchfiles      pyobjc_setup.py.patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span>     if {${configure.sdkroot} eq ""} {
         set sdkroot "/"
     } else {
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/python/py-pyobjc-quartz/files/pyobjc_setup.py.patch b/python/py-pyobjc-quartz/files/pyobjc_setup.py.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..9bbbe54
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/python/py-pyobjc-quartz/files/pyobjc_setup.py.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,65 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- pyobjc_setup.py.orig   2019-10-16 20:40:22.000000000 +1100
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ pyobjc_setup.py        2019-10-24 20:40:00.000000000 +1100
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -207,14 +207,28 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     v = pl['ProductVersion']
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     return '.'.join(v.split('.')[:2])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-def get_sdk_level():
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    cflags = get_config_var('CFLAGS')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    cflags = shlex.split(cflags)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    for i, val in enumerate(cflags):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        if val == '-isysroot':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-            sdk = cflags[i+1]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++def get_sdk():
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    env_cflags = os.environ.get('CFLAGS', '')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    config_cflags = get_config_var('CFLAGS')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    sdk = None
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    for cflags_str in [env_cflags, config_cflags]:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        cflags = shlex.split(cflags_str)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        for i, val in enumerate(cflags):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            if val == '-isysroot':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                sdk = cflags[i+1]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                break
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            elif val.find('-isysroot') == 0:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                sdk = val[len('-isysroot'):]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                break
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        if sdk:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+             break
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    else:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    return sdk
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++def get_sdk_level():
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    sdk = get_sdk()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if not sdk:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         return None
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if sdk == '/':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -223,7 +237,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     sdk = os.path.basename(sdk)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     assert sdk.startswith('MacOSX')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     assert sdk.endswith('.sdk')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    return sdk[6:-4]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if sdk == 'MacOSX.sdk':
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        return get_os_level()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    else:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        return sdk[6:-4]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ class pyobjc_install_lib (install_lib.install_lib):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     def get_exclusions(self):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -396,10 +413,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     if 'clang' in get_config_var('CC'):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         cflags.append('-Wno-deprecated-declarations')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    CFLAGS = get_config_var('CFLAGS')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-    if '-isysroot' not in CFLAGS: # and os.path.exists('/usr/include/stdio.h'):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        # We're likely on a system with de Xcode Command Line Tools.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-        # Explicitly use the most recent problems to avoid compile problems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    sdk = get_sdk()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if not sdk: # and os.path.exists('/usr/include/stdio.h'):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        # We're likely on a system with the Xcode Command Line Tools.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        # Explicitly use the most recent SDK to avoid compile problems.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         data = os.popen('/usr/bin/xcrun -sdk macosx --show-sdk-path').read()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         data = data.strip()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+         if data:
</span></pre><pre style='margin:0'>

</pre>