<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[151991] trunk/dports/lang</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="https://trac.macports.org/changeset/151991">151991</a></dd>
<dt>Author</dt> <dd>jeremyhu@macports.org</dd>
<dt>Date</dt> <dd>2016-08-25 15:42:32 -0700 (Thu, 25 Aug 2016)</dd>
</dl>

<h3>Log Message</h3>
<pre>llvm-devel: New port tracking llvm trunk</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkdportslangllvm33Portfile">trunk/dports/lang/llvm-3.3/Portfile</a></li>
<li><a href="#trunkdportslangllvm34Portfile">trunk/dports/lang/llvm-3.4/Portfile</a></li>
<li><a href="#trunkdportslangllvm35Portfile">trunk/dports/lang/llvm-3.5/Portfile</a></li>
<li><a href="#trunkdportslangllvm36Portfile">trunk/dports/lang/llvm-3.6/Portfile</a></li>
<li><a href="#trunkdportslangllvm37Portfile">trunk/dports/lang/llvm-3.7/Portfile</a></li>
<li><a href="#trunkdportslangllvm38Portfile">trunk/dports/lang/llvm-3.8/Portfile</a></li>
<li><a href="#trunkdportslangllvm39Portfile">trunk/dports/lang/llvm-3.9/Portfile</a></li>
</ul>

<h3>Added Paths</h3>
<ul>
<li>trunk/dports/lang/llvm-devel/</li>
<li><a href="#trunkdportslangllvmdevelPortfile">trunk/dports/lang/llvm-devel/Portfile</a></li>
<li>trunk/dports/lang/llvm-devel/files/</li>
<li><a href="#trunkdportslangllvmdevelfiles0001SettheMachOCPUSubtypetoppc7400whentargetingpatch">trunk/dports/lang/llvm-devel/files/0001-Set-the-Mach-O-CPU-Subtype-to-ppc7400-when-targeting.patch</a></li>
<li><a href="#trunkdportslangllvmdevelfiles0002DefineEXC_MASK_CRASHandMACH_EXCEPTION_CODESifthpatch">trunk/dports/lang/llvm-devel/files/0002-Define-EXC_MASK_CRASH-and-MACH_EXCEPTION_CODES-if-th.patch</a></li>
<li><a href="#trunkdportslangllvmdevelfiles0003MacPortsOnlyDontembedthedeploymenttargetintpatch">trunk/dports/lang/llvm-devel/files/0003-MacPorts-Only-Don-t-embed-the-deployment-target-in-t.patch</a></li>
<li><a href="#trunkdportslangllvmdevelfiles1001MacPortsOnlyPrepareclangformatforreplacementwpatch">trunk/dports/lang/llvm-devel/files/1001-MacPorts-Only-Prepare-clang-format-for-replacement-w.patch</a></li>
<li><a href="#trunkdportslangllvmdevelfiles1002MacPortsOnlyFixnameofscanviewexecutableinsidpatch">trunk/dports/lang/llvm-devel/files/1002-MacPorts-Only-Fix-name-of-scan-view-executable-insid.patch</a></li>
<li><a href="#trunkdportslangllvmdevelfiles1003Defaulttoppc7400forOSX105patch">trunk/dports/lang/llvm-devel/files/1003-Default-to-ppc7400-for-OSX-10.5.patch</a></li>
<li><a href="#trunkdportslangllvmdevelfiles1004OnlycallsetpriorityPRIO_DARWIN_THREAD0PRIO_DARWpatch">trunk/dports/lang/llvm-devel/files/1004-Only-call-setpriority-PRIO_DARWIN_THREAD-0-PRIO_DARW.patch</a></li>
<li><a href="#trunkdportslangllvmdevelfiles1005DefaulttofragileObjCruntimewhentargetingdarwipatch">trunk/dports/lang/llvm-devel/files/1005-Default-to-fragile-ObjC-runtime-when-targeting-darwi.patch</a></li>
<li><a href="#trunkdportslangllvmdevelfiles2001MacPortsOnlyDontcheckforthemacosxinternalSDpatch">trunk/dports/lang/llvm-devel/files/2001-MacPorts-Only-Don-t-check-for-the-macosx.internal-SD.patch</a></li>
<li><a href="#trunkdportslangllvmdevelfiles3001builditbuildfixforLeopardpatch">trunk/dports/lang/llvm-devel/files/3001-buildit-build-fix-for-Leopard.patch</a></li>
<li><a href="#trunkdportslangllvmdevelfiles3002builditSetcompatibilityversiontoRC_ProjectSourcpatch">trunk/dports/lang/llvm-devel/files/3002-buildit-Set-compatibility-version-to-RC_ProjectSourc.patch</a></li>
<li><a href="#trunkdportslangllvmdevelfiles3003FixlocalanditeratorwhenbuildingwithLionandnpatch">trunk/dports/lang/llvm-devel/files/3003-Fix-local-and-iterator-when-building-with-Lion-and-n.patch</a></li>
<li><a href="#trunkdportslangllvmdevelfiles3004Fixmissinglonglongmathprototypeswhenusingthepatch">trunk/dports/lang/llvm-devel/files/3004-Fix-missing-long-long-math-prototypes-when-using-the.patch</a></li>
<li><a href="#trunkdportslangllvmdevelfiles3005implementatomicusingmutexlock_guardfor64bopspatch">trunk/dports/lang/llvm-devel/files/3005-implement-atomic-using-mutex-lock_guard-for-64b-ops-.patch</a></li>
<li><a href="#trunkdportslangllvmdevelfilesleopardnoasanpatch">trunk/dports/lang/llvm-devel/files/leopard-no-asan.patch</a></li>
<li><a href="#trunkdportslangllvmdevelfilesleopardnoblockspatch">trunk/dports/lang/llvm-devel/files/leopard-no-blocks.patch</a></li>
<li><a href="#trunkdportslangllvmdevelfilesllvmbin">trunk/dports/lang/llvm-devel/files/llvm-bin</a></li>
<li><a href="#trunkdportslangllvmdevelfilesmpclangdevel">trunk/dports/lang/llvm-devel/files/mp-clang-devel</a></li>
<li><a href="#trunkdportslangllvmdevelfilesmpllvmdevel">trunk/dports/lang/llvm-devel/files/mp-llvm-devel</a></li>
<li><a href="#trunkdportslangllvmdevelfilesopenmplocationspatch">trunk/dports/lang/llvm-devel/files/openmp-locations.patch</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkdportslangllvm33Portfile"></a>
<div class="modfile"><h4>Modified: trunk/dports/lang/llvm-3.3/Portfile (151990 => 151991)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/llvm-3.3/Portfile        2016-08-25 22:07:10 UTC (rev 151990)
+++ trunk/dports/lang/llvm-3.3/Portfile        2016-08-25 22:42:32 UTC (rev 151991)
</span><span class="lines">@@ -176,7 +176,7 @@
</span><span class="cx"> 
</span><span class="cx"> # blacklist current and future versions if they're not available in order to
</span><span class="cx"> # help break potential dependency cycles.
</span><del>-foreach ver {3.3 3.4 3.5 3.6 3.7 3.8} {
</del><ins>+foreach ver {3.3 3.4 3.5 3.6 3.7 3.8 3.9 devel} {
</ins><span class="cx">     if {![file exists ${prefix}/bin/clang-mp-${ver}]} {
</span><span class="cx">         compiler.blacklist-append macports-clang-${ver}
</span><span class="cx">     }
</span></span></pre></div>
<a id="trunkdportslangllvm34Portfile"></a>
<div class="modfile"><h4>Modified: trunk/dports/lang/llvm-3.4/Portfile (151990 => 151991)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/llvm-3.4/Portfile        2016-08-25 22:07:10 UTC (rev 151990)
+++ trunk/dports/lang/llvm-3.4/Portfile        2016-08-25 22:42:32 UTC (rev 151991)
</span><span class="lines">@@ -222,7 +222,7 @@
</span><span class="cx"> 
</span><span class="cx"> # blacklist current and future versions if they're not available in order to
</span><span class="cx"> # help break potential dependency cycles.
</span><del>-foreach ver {3.4 3.5 3.6 3.7 3.8} {
</del><ins>+foreach ver {3.4 3.5 3.6 3.7 3.8 3.9 devel} {
</ins><span class="cx">     if {![file exists ${prefix}/bin/clang-mp-${ver}]} {
</span><span class="cx">         compiler.blacklist-append macports-clang-${ver}
</span><span class="cx">     }
</span></span></pre></div>
<a id="trunkdportslangllvm35Portfile"></a>
<div class="modfile"><h4>Modified: trunk/dports/lang/llvm-3.5/Portfile (151990 => 151991)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/llvm-3.5/Portfile        2016-08-25 22:07:10 UTC (rev 151990)
+++ trunk/dports/lang/llvm-3.5/Portfile        2016-08-25 22:42:32 UTC (rev 151991)
</span><span class="lines">@@ -208,7 +208,7 @@
</span><span class="cx"> 
</span><span class="cx"> # blacklist current and future versions if they're not available in order to
</span><span class="cx"> # help break potential dependency cycles.
</span><del>-foreach ver {3.5 3.6 3.7 3.8} {
</del><ins>+foreach ver {3.5 3.6 3.7 3.8 3.9 devel} {
</ins><span class="cx">     if {![file exists ${prefix}/bin/clang-mp-${ver}]} {
</span><span class="cx">         compiler.blacklist-append macports-clang-${ver}
</span><span class="cx">     }
</span></span></pre></div>
<a id="trunkdportslangllvm36Portfile"></a>
<div class="modfile"><h4>Modified: trunk/dports/lang/llvm-3.6/Portfile (151990 => 151991)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/llvm-3.6/Portfile        2016-08-25 22:07:10 UTC (rev 151990)
+++ trunk/dports/lang/llvm-3.6/Portfile        2016-08-25 22:42:32 UTC (rev 151991)
</span><span class="lines">@@ -197,7 +197,7 @@
</span><span class="cx"> 
</span><span class="cx"> # blacklist current and future versions if they're not available in order to
</span><span class="cx"> # help break potential dependency cycles.
</span><del>-foreach ver {3.6 3.7 3.8} {
</del><ins>+foreach ver {3.6 3.7 3.8 3.9 devel} {
</ins><span class="cx">     if {![file exists ${prefix}/bin/clang-mp-${ver}]} {
</span><span class="cx">         compiler.blacklist-append macports-clang-${ver}
</span><span class="cx">     }
</span></span></pre></div>
<a id="trunkdportslangllvm37Portfile"></a>
<div class="modfile"><h4>Modified: trunk/dports/lang/llvm-3.7/Portfile (151990 => 151991)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/llvm-3.7/Portfile        2016-08-25 22:07:10 UTC (rev 151990)
+++ trunk/dports/lang/llvm-3.7/Portfile        2016-08-25 22:42:32 UTC (rev 151991)
</span><span class="lines">@@ -200,7 +200,7 @@
</span><span class="cx"> 
</span><span class="cx"> # blacklist current and future versions if they're not available in order to
</span><span class="cx"> # help break potential dependency cycles.
</span><del>-foreach ver {3.7 3.8} {
</del><ins>+foreach ver {3.7 3.8 3.9 devel} {
</ins><span class="cx">     if {![file exists ${prefix}/bin/clang-mp-${ver}]} {
</span><span class="cx">         compiler.blacklist-append macports-clang-${ver}
</span><span class="cx">     }
</span></span></pre></div>
<a id="trunkdportslangllvm38Portfile"></a>
<div class="modfile"><h4>Modified: trunk/dports/lang/llvm-3.8/Portfile (151990 => 151991)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/llvm-3.8/Portfile        2016-08-25 22:07:10 UTC (rev 151990)
+++ trunk/dports/lang/llvm-3.8/Portfile        2016-08-25 22:42:32 UTC (rev 151991)
</span><span class="lines">@@ -232,7 +232,7 @@
</span><span class="cx"> 
</span><span class="cx"> # blacklist current and future versions if they're not available in order to
</span><span class="cx"> # help break potential dependency cycles.
</span><del>-foreach ver {3.8} {
</del><ins>+foreach ver {3.8 3.9 devel} {
</ins><span class="cx">     if {![file exists ${prefix}/bin/clang-mp-${ver}]} {
</span><span class="cx">         compiler.blacklist-append macports-clang-${ver}
</span><span class="cx">     }
</span></span></pre></div>
<a id="trunkdportslangllvm39Portfile"></a>
<div class="modfile"><h4>Modified: trunk/dports/lang/llvm-3.9/Portfile (151990 => 151991)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/llvm-3.9/Portfile        2016-08-25 22:07:10 UTC (rev 151990)
+++ trunk/dports/lang/llvm-3.9/Portfile        2016-08-25 22:42:32 UTC (rev 151991)
</span><span class="lines">@@ -210,7 +210,7 @@
</span><span class="cx"> 
</span><span class="cx"> # blacklist current and future versions if they're not available in order to
</span><span class="cx"> # help break potential dependency cycles.
</span><del>-foreach ver {3.8} {
</del><ins>+foreach ver {3.9 devel} {
</ins><span class="cx">     if {![file exists ${prefix}/bin/clang-mp-${ver}]} {
</span><span class="cx">         compiler.blacklist-append macports-clang-${ver}
</span><span class="cx">     }
</span></span></pre></div>
<a id="trunkdportslangllvmdevelPortfile"></a>
<div class="addfile"><h4>Added: trunk/dports/lang/llvm-devel/Portfile (0 => 151991)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/llvm-devel/Portfile                                (rev 0)
+++ trunk/dports/lang/llvm-devel/Portfile        2016-08-25 22:42:32 UTC (rev 151991)
</span><span class="lines">@@ -0,0 +1,413 @@
</span><ins>+# $Id$
+
+# TODO:
+#  * Update clang subport to build against installed llvm
+
+PortSystem              1.0
+PortGroup select        1.0
+PortGroup compiler_blacklist_versions 1.0
+PortGroup active_variants 1.1
+PortGroup cmake         1.0
+
+set llvm_version        devel
+set llvm_version_no_dot devel
+set clang_executable_version 4.0
+name                    llvm-${llvm_version}
+revision                0
+subport                 clang-${llvm_version} {}
+set suffix              mp-${llvm_version}
+set sub_prefix          ${prefix}/libexec/llvm-${llvm_version}
+dist_subdir             llvm
+categories              lang
+platforms               darwin
+license                 NCSA
+maintainers             jeremyhu larryv
+
+if {${subport} eq &quot;llvm-${llvm_version}&quot;} {
+    homepage            http://llvm.org/
+    description         llvm is a next generation compiler infrastructure
+    long_description    The LLVM Core libraries provide a modern source- and \
+                        target-independent optimizer, along with code \
+                        generation support for many popular CPUs (as well as \
+                        some less common ones!) These libraries are built \
+                        around a well specified code representation known as \
+                        the LLVM intermediate representation (&quot;LLVM IR&quot;).
+
+    depends_lib         port:libedit port:libffi port:ncurses port:zlib
+    depends_run         bin:perl:perl5 port:llvm_select
+
+    # 3.2.6's install_name_tool doesn't support load commands we might see with newer clang+ld64
+    # 4.3 is just a guess here and should be updated if there are additional reports with other Xcode versions
+    if {[vercmp $xcodeversion 4.3] &lt; 0 &amp;&amp; [string match &quot;*macports*&quot; ${configure.compiler}]} {
+        depends_build-append port:cctools
+    }
+} elseif {${subport} eq &quot;clang-${llvm_version}&quot;} {
+    homepage            http://clang.llvm.org/
+    description         C, C++, Objective C and Objective C++ compiler
+    long_description    Clang is an &quot;LLVM native&quot; C/C++/Objective-C compiler, \
+                        which aims to deliver amazingly fast compiles (e.g. \
+                        about 3x faster than GCC when compiling Objective-C \
+                        code in a debug configuration), extremely useful error \
+                        and warning messages and to provide a platform for \
+                        building great source level tools. The included Clang \
+                        Static Analyzer is a tool that automatically finds bugs in \
+                        your code, and is a great example of the sort of tool \
+                        that can be built using the Clang frontend as a \
+                        library to parse C/C++ code.
+
+    depends_lib         port:libxml2 port:libomp port:llvm-${llvm_version} port:python27
+    depends_run         port:clang_select port:ld64
+    depends_extract     bin:svn:subversion
+    depends_build-append port:cctools
+    depends_skip_archcheck-append cctools ld64 subversion
+
+    # Clang doesn't actually use any of these, but the LLVM makefile
+    # system overlinks its binaries. Remove (or convert to build deps?)
+    # after #46040 is resolved.
+    depends_lib-append  port:libedit port:libffi port:ncurses port:zlib
+
+    default_variants    +analyzer
+}
+
+fetch.type              svn
+svn.revision            279763
+
+set compiler_rt_rev     ${svn.revision}
+set libcxx_rev          ${svn.revision}
+set clang-modernize_rev ${svn.revision}
+version                 ${llvm_version}-r${svn.revision}
+worksrcdir              trunk
+svn.url                 https://llvm.org/svn/llvm-project/llvm/trunk
+#worksrcdir              release_${llvm_version_no_dot}
+#svn.url                 https://llvm.org/svn/llvm-project/llvm/branches/release_${llvm_version_no_dot}
+default_variants-append +assertions
+default_variants-append +debug
+
+#version                 ${llvm_version}.0
+#epoch                   1
+#master_sites            http://llvm.org/releases/${version}
+#use_xz                  yes
+#extract.suffix          .tar.xz
+#distfiles               llvm-${version}.src${extract.suffix}
+#worksrcdir              llvm-${version}.src
+
+if {${distfiles} ne &quot;&quot;} {
+    if {${subport} eq &quot;llvm-${llvm_version}&quot;} {
+        if {[variant_isset polly]} {
+            distfiles-append     polly-${version}.src${extract.suffix}
+        }
+    } elseif {${subport} eq &quot;clang-${llvm_version}&quot;} {
+        distfiles-append     cfe-${version}.src${extract.suffix} compiler-rt-${version}.src${extract.suffix} libcxx-${version}.src${extract.suffix} clang-tools-extra-${version}.src${extract.suffix}
+    }
+}
+
+patch.pre_args  -p1
+patchfiles \
+        0001-Set-the-Mach-O-CPU-Subtype-to-ppc7400-when-targeting.patch \
+        0002-Define-EXC_MASK_CRASH-and-MACH_EXCEPTION_CODES-if-th.patch \
+        0003-MacPorts-Only-Don-t-embed-the-deployment-target-in-t.patch
+
+if {${subport} eq &quot;clang-${llvm_version}&quot;} {
+    patchfiles-append \
+        1001-MacPorts-Only-Prepare-clang-format-for-replacement-w.patch \
+        1002-MacPorts-Only-Fix-name-of-scan-view-executable-insid.patch \
+        1003-Default-to-ppc7400-for-OSX-10.5.patch \
+        1004-Only-call-setpriority-PRIO_DARWIN_THREAD-0-PRIO_DARW.patch \
+        1005-Default-to-fragile-ObjC-runtime-when-targeting-darwi.patch \
+        2001-MacPorts-Only-Don-t-check-for-the-macosx.internal-SD.patch \
+        3001-buildit-build-fix-for-Leopard.patch \
+        3002-buildit-Set-compatibility-version-to-RC_ProjectSourc.patch \
+        3003-Fix-local-and-iterator-when-building-with-Lion-and-n.patch \
+        3004-Fix-missing-long-long-math-prototypes-when-using-the.patch \
+        3005-implement-atomic-using-mutex-lock_guard-for-64b-ops-.patch \
+        openmp-locations.patch
+
+    # https://llvm.org/bugs/show_bug.cgi?id=25681
+    if {${worksrcdir} eq &quot;trunk&quot; || ${worksrcdir} eq &quot;release_${llvm_version_no_dot}&quot;} {
+        # Cannot set cppflags due to https://cmake.org/Bug/view.php?id=12928
+        # Cannot set cxxflags due to https://llvm.org/bugs/show_bug.cgi?id=25904
+        #configure.cxxflags-append -DSVN_REVISION='&quot;${svn.revision}&quot;'
+
+        post-patch {
+            reinplace &quot;1 i \\                             
+                #define SVN_REVISION \&quot;${svn.revision}\&quot;
+            &quot; ${worksrcpath}/tools/clang/lib/Basic/Version.cpp
+        }
+    }
+}
+
+configure.post_args         ../${worksrcdir}
+default configure.dir       {${workpath}/build}
+default build.dir           {${workpath}/build}
+
+# https://llvm.org/bugs/show_bug.cgi?id=25664
+configure.ldflags-append    -Wl,-rpath,@loader_path
+
+# https://trac.macports.org/ticket/51542
+configure.ldflags-append    -Wl,-rpath,@loader_path/
+
+configure.args-append \
+    -DLLVM_LINK_LLVM_DYLIB=ON \
+    -DCMAKE_INSTALL_PREFIX=&quot;${sub_prefix}&quot; \
+    -DLLVM_ENABLE_ASSERTIONS=OFF \
+    -DLLVM_ENABLE_RTTI=ON \
+    -DLLVM_INCLUDE_TESTS=OFF \
+    -DLLVM_INCLUDE_EXAMPLES=OFF \
+    -DLLVM_ENABLE_FFI=ON \
+    -DLLVM_BINDINGS_LIST=none \
+    -DFFI_INCLUDE_DIR=${prefix}/include \
+    -DFFI_LIBRARY_DIR=${prefix}/lib
+
+if {${subport} eq &quot;llvm-${llvm_version}&quot;} {
+    select.group        llvm
+    select.file         ${filespath}/mp-${subport}
+} elseif {${subport} eq &quot;clang-${llvm_version}&quot;} {
+    select.group        clang
+    select.file         ${filespath}/mp-${subport}
+
+    configure.args-append \
+        -DCLANG_INCLUDE_TESTS=OFF \
+        -DCLANG_ENABLE_STATIC_ANALYZER=OFF \
+        -DLLVM_BUILD_RUNTIME=ON \
+        -DLIBCXX_ENABLE_SHARED=OFF \
+        -DLIBCXX_INSTALL_LIBRARY=OFF
+
+    # TODO: libc++ shouldn't be built at all.
+    #       https://llvm.org/bugs/show_bug.cgi?id=25666
+
+    if {${os.major} &lt;= 12} {
+        # We unfortunately don't have an option to just turn off tsan
+        # https://llvm.org/bugs/show_bug.cgi?id=27715
+        configure.args-append \
+            -DCOMPILER_RT_BUILD_SANITIZERS=OFF
+    }
+}
+
+# llvm-3.5 and later requires a C++11 runtime
+# XCode 4.3's clang (318.x) fails per https://trac.macports.org/ticket/44161
+# XCode 4.5's clang (421.11.66) fails due to http://llvm.org/bugs/show_bug.cgi?id=20184
+# Xcode 4.6.3's clang (425.0.28) fails due to http://trac.macports.org/ticket/46897
+# Xcode 5.1.0's clang (503.0.35) fails due to https://llvm.org/bugs/show_bug.cgi?id=25673
+# Xcode 6.2's clang (600.0.57) fails due to https://llvm.org/bugs/show_bug.cgi?id=25753
+# clang older than 3.5 fail due to https://llvm.org/bugs/show_bug.cgi?id=25753
+compiler.blacklist *gcc* {clang &lt; 602} macports-clang-3.3 macports-clang-3.4
+
+# Remove this when loosening the blacklist above or when a newer base is released
+compiler.fallback-append macports-clang-3.7 macports-clang-3.6 macports-clang-3.5
+
+if {${subport} eq &quot;clang-${llvm_version}&quot;} {
+    # Don't self-host.  We may have issues if we have a slightly newer llvm version that
+    # is not binary compatible with the older clang version we're trying to use.
+
+    compiler.blacklist-append macports-clang-${llvm_version}
+}
+
+# blacklist current and future versions if they're not available in order to
+# help break potential dependency cycles.
+foreach ver {devel} {
+    if {![file exists ${prefix}/bin/clang-mp-${ver}]} {
+        compiler.blacklist-append macports-clang-${ver}
+    }
+}
+
+platform darwin {
+    # Note that we are forcing this choice.  This means that anything linking
+    # against llvm-3.5 needs to also be using libc++.  This is possibly
+    # problematic, but luckily there is just a limited set of such dependents.
+
+    configure.cxx_stdlib libc++
+    depends_lib-append port:libcxx
+    supported_archs i386 x86_64
+
+    pre-fetch {
+        if {![file exists /usr/lib/libc++.dylib]} {
+            ui_error &quot;$name requires a C++11 runtime, which your configuration does not allow&quot;
+            error &quot;unsupported configuration&quot;
+        }
+    }
+}
+
+variant universal {
+    post-extract {
+        # workaround a bug in Apple's shipped gcc driver-driver, patched in
+        # ours with driverdriver-num_infiles.patch
+        if {${configure.compiler} eq &quot;gcc-4.0&quot; ||
+            ${configure.compiler} eq &quot;gcc-4.2&quot; ||
+            ${configure.compiler} eq &quot;llvm-gcc-4.2&quot;} {
+            system &quot;echo \&quot;static int ___ignoreme;\&quot; &gt; ${worksrcpath}/tools/llvm-shlib/ignore.c&quot;
+        }
+    }
+}
+
+variant assertions description &quot;Enable assertions for error detection (has performance impacts, especially on JIT)&quot; {
+    configure.args-delete -DLLVM_ENABLE_ASSERTIONS=OFF
+    configure.args-append -DLLVM_ENABLE_ASSERTIONS=ON
+}
+
+platform darwin {
+    if {[string match &quot;*ppc*&quot; [get_canonical_archs]]} {
+        # http://trac.macports.org/ticket/33987
+        configure.optflags    -Os
+    }
+
+    if {${subport} eq &quot;clang-${llvm_version}&quot; &amp;&amp; [vercmp $xcodeversion 5.0] &lt; 0} {
+        # https://llvm.org/bugs/show_bug.cgi?id=13671
+        patchfiles-append leopard-no-asan.patch
+        configure.args-append -DCOMPILER_RT_BUILD_SANITIZERS=OFF
+    }
+
+    if {${subport} eq &quot;clang-${llvm_version}&quot; &amp;&amp; ${os.major} &lt;= 9} {
+        patchfiles-append leopard-no-blocks.patch
+    }
+
+    if {${os.major} &lt; 11} {
+        # Proxy for eliminating the dependency on native TLS
+        # http://trac.macports.org/ticket/46887
+        configure.args-append -DLLVM_ENABLE_BACKTRACES=OFF
+
+        # https://llvm.org/bugs/show_bug.cgi?id=25680
+        configure.cxxflags-append -U__STRICT_ANSI__
+    }
+
+    # https://llvm.org/bugs/show_bug.cgi?id=25674
+    configure.cxxflags-append -std=c++11
+}
+
+post-extract {
+    # Get HTTP proxy arguments if required, assuming we can use the same proxy for all repositories
+    set proxy_args [portfetch::svn_proxy_args http://llvm.org/svn/llvm-project/cfe/trunk]
+    if {${subport} eq &quot;llvm-${llvm_version}&quot;} {
+        if {[variant_isset polly]} {
+            if {${worksrcdir} eq &quot;trunk&quot;} {
+                system -W ${worksrcpath}/tools &quot;svn ${proxy_args} co -r ${svn.revision} http://llvm.org/svn/llvm-project/polly/trunk polly&quot;
+            } elseif {${worksrcdir} eq &quot;release_${llvm_version_no_dot}&quot; } {
+                system -W ${worksrcpath}/tools &quot;svn ${proxy_args} co -r ${svn.revision} http://llvm.org/svn/llvm-project/polly/branches/release_${llvm_version_no_dot} polly&quot;
+            } else {
+                file rename ${workpath}/polly-${version}.src ${worksrcpath}/tools/polly
+            }
+        }
+    } elseif {${subport} eq &quot;clang-${llvm_version}&quot;} {
+        if {${worksrcdir} eq &quot;trunk&quot;} {
+            system -W ${worksrcpath}/tools &quot;svn ${proxy_args} co -r ${svn.revision} http://llvm.org/svn/llvm-project/cfe/trunk clang&quot;
+            system -W ${worksrcpath}/projects &quot;svn ${proxy_args} co -r ${compiler_rt_rev} http://llvm.org/svn/llvm-project/compiler-rt/trunk compiler-rt&quot;
+            system -W ${worksrcpath}/projects &quot;svn ${proxy_args} co -r ${libcxx_rev} http://llvm.org/svn/llvm-project/libcxx/trunk libcxx&quot;
+            system -W ${worksrcpath}/tools/clang/tools &quot;svn ${proxy_args} co -r ${clang-modernize_rev} http://llvm.org/svn/llvm-project/clang-tools-extra/trunk extra&quot;
+        } elseif {${worksrcdir} eq &quot;release_${llvm_version_no_dot}&quot; } {
+            system -W ${worksrcpath}/tools &quot;svn ${proxy_args} co -r ${svn.revision} http://llvm.org/svn/llvm-project/cfe/branches/release_${llvm_version_no_dot} clang&quot;
+            system -W ${worksrcpath}/projects &quot;svn ${proxy_args} co -r ${compiler_rt_rev} http://llvm.org/svn/llvm-project/compiler-rt/branches/release_${llvm_version_no_dot} compiler-rt&quot;
+            system -W ${worksrcpath}/projects &quot;svn ${proxy_args} co -r ${libcxx_rev} http://llvm.org/svn/llvm-project/libcxx/branches/release_${llvm_version_no_dot} libcxx&quot;
+            system -W ${worksrcpath}/tools/clang/tools &quot;svn ${proxy_args} co -r ${clang-modernize_rev} http://llvm.org/svn/llvm-project/clang-tools-extra/branches/release_${llvm_version_no_dot} extra&quot;
+        } else {
+            file rename ${workpath}/cfe-${version}.src ${worksrcpath}/tools/clang
+            file rename ${workpath}/compiler-rt-${version}.src ${worksrcpath}/projects/compiler-rt
+            file rename ${workpath}/libcxx-${version}.src ${worksrcpath}/projects/libcxx
+            file rename ${workpath}/clang-tools-extra-${version}.src ${worksrcpath}/tools/clang/tools/extra
+        }
+    }
+}
+
+if {${subport} eq &quot;clang-${llvm_version}&quot;} {
+    destroot {
+        system &quot;cd ${destroot.dir}/tools/clang &amp;&amp; ${destroot.cmd} ${destroot.pre_args} ${destroot.target} ${destroot.post_args}&quot;
+        system &quot;cd ${destroot.dir}/projects/compiler-rt &amp;&amp; ${destroot.cmd} ${destroot.pre_args} ${destroot.target} ${destroot.post_args}&quot;
+        system &quot;cd ${destroot.dir}/projects/libcxx &amp;&amp; ${destroot.cmd} ${destroot.pre_args} ${destroot.target} ${destroot.post_args}&quot;
+
+        delete ${destroot}${sub_prefix}/bin/clang
+        file rename ${destroot}${sub_prefix}/bin/clang-${clang_executable_version} ${destroot}${sub_prefix}/bin/clang
+    }
+}
+
+post-destroot {
+    foreach bin [glob ${destroot}${sub_prefix}/bin/*] {
+        set bin_filename [string map &quot;${sub_prefix} ${prefix}&quot; ${bin}]-${suffix}
+        set exec_path [string map &quot;${destroot}${sub_prefix} ${sub_prefix}&quot; ${bin}]
+
+        xinstall -m 755 &quot;${filespath}/llvm-bin&quot; &quot;${bin_filename}&quot;
+        reinplace &quot;s:EXEC_PATH:${exec_path}:&quot; &quot;${bin_filename}&quot;
+    }
+
+    if {${subport} eq &quot;llvm-${llvm_version}&quot;} {
+        # r156389 (a5d2435409858728970202226d0bbbee508fe408) temporarilary removed llvm man pages
+        #foreach man [glob ${destroot}${sub_prefix}/share/man/man1/*.1] {
+        #    set basename [string map &quot;${destroot}${sub_prefix}/share/man/man1/ {}&quot; ${man}]
+        #    file rename ${man} ${destroot}${prefix}/share/man/man1/[string map &quot;.1 -${suffix}.1&quot; ${basename}]
+        #}
+
+        # https://llvm.org/bugs/show_bug.cgi?id=19465
+        if {[variant_isset polly]} {
+            ln -s LLVMPolly.so ${destroot}${sub_prefix}/lib/LLVMPolly.dylib
+        }
+    } elseif {${subport} eq &quot;clang-${llvm_version}&quot;} {
+        system &quot;ditto ${worksrcpath}/projects/libcxx/include ${destroot}${sub_prefix}/lib/c++/v1&quot;
+
+        # http://trac.macports.org/ticket/33207
+        ln -s ${prefix}/libexec/ld64/ld ${destroot}${sub_prefix}/bin/ld
+    }
+}
+
+if {${subport} eq &quot;llvm-${llvm_version}&quot;} {
+    variant polly description {Provide the polly polyhedral optimizer} {}
+
+    # Unless upstream reverts to their old OCaml detection mechanism,
+    # this variant will be broken until #46161 is resolved.
+    variant ocaml description {Enable generation of OCaml binding} {
+        depends_lib-append   port:ocaml
+
+        configure.args-delete -DLLVM_BINDINGS_LIST=none
+        configure.args-append -DLLVM_BINDINGS_LIST=ocaml
+
+        destroot.args-append  OVERRIDE_libdir=${sub_prefix}/lib
+    }
+} elseif {${subport} eq &quot;clang-${llvm_version}&quot;} {
+    if {[variant_isset assertions]} {
+        # Need to match llvm +-assertions
+        require_active_variants port:llvm-${llvm_version} assertions
+    } else {
+        # Need to match llvm +-assertions
+        require_active_variants port:llvm-${llvm_version} {} assertions
+    }
+
+    variant analyzer description {Install clang static analyzer} {
+        configure.args-delete \
+            -DCLANG_ENABLE_STATIC_ANALYZER=OFF
+        configure.args-append \
+            -DCLANG_ENABLE_STATIC_ANALYZER=ON
+
+        depends_run-append port:perl5
+
+        post-patch {
+            reinplace &quot;s|/usr/bin/env perl|${prefix}/bin/perl5|g&quot; \
+                ${worksrcpath}/tools/clang/tools/scan-build/libexec/ccc-analyzer \
+                ${worksrcpath}/tools/clang/tools/scan-build/libexec/c++-analyzer \
+                ${worksrcpath}/tools/clang/tools/scan-build/bin/scan-build
+            reinplace &quot;s|/usr/bin/env python|${prefix}/bin/python2.7|g&quot; \
+                ${worksrcpath}/tools/clang/tools/scan-build/bin/set-xcode-analyzer \
+                ${worksrcpath}/tools/clang/tools/scan-view/bin/scan-view
+        }
+    }
+
+    post-patch {
+        reinplace &quot;s|@@PREFIX@@|${prefix}|&quot; \
+            ${worksrcpath}/tools/clang/lib/Driver/Tools.cpp
+
+        reinplace &quot;s|@CLANG_FORMAT_PATH@|${prefix}/bin/clang-format-${suffix}|g&quot; \
+            ${worksrcpath}/tools/clang/tools/clang-format/clang-format-bbedit.applescript \
+            ${worksrcpath}/tools/clang/tools/clang-format/clang-format-diff.py            \
+            ${worksrcpath}/tools/clang/tools/clang-format/clang-format-sublime.py         \
+            ${worksrcpath}/tools/clang/tools/clang-format/clang-format.el                 \
+            ${worksrcpath}/tools/clang/tools/clang-format/clang-format.py
+    }
+
+    post-destroot {
+        file mkdir ${destroot}${sub_prefix}/libexec
+        file copy ${worksrcpath}/tools/clang/tools/clang-format ${destroot}${sub_prefix}/libexec/clang-format
+
+        file delete -force ${destroot}${sub_prefix}/libexec/clang-format/.svn
+        file delete -force ${destroot}${sub_prefix}/libexec/clang-format/Makefile
+        file delete -force ${destroot}${sub_prefix}/libexec/clang-format/Release+Debug+Asserts
+        file delete -force ${destroot}${sub_prefix}/libexec/clang-format/CMakeLists.txt
+        file delete -force ${destroot}${sub_prefix}/libexec/clang-format/ClangFormat.cpp
+    }
+}
+
+livecheck.type          none
</ins><span class="cx">Property changes on: trunk/dports/lang/llvm-devel/Portfile
</span><span class="cx">___________________________________________________________________
</span></span></pre></div>
<a id="svnkeywords"></a>
<div class="addfile"><h4>Added: svn:keywords</h4></div>
<a id="svneolstyle"></a>
<div class="addfile"><h4>Added: svn:eol-style</h4></div>
<a id="trunkdportslangllvmdevelfiles0001SettheMachOCPUSubtypetoppc7400whentargetingpatch"></a>
<div class="addfile"><h4>Added: trunk/dports/lang/llvm-devel/files/0001-Set-the-Mach-O-CPU-Subtype-to-ppc7400-when-targeting.patch (0 => 151991)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/llvm-devel/files/0001-Set-the-Mach-O-CPU-Subtype-to-ppc7400-when-targeting.patch                                (rev 0)
+++ trunk/dports/lang/llvm-devel/files/0001-Set-the-Mach-O-CPU-Subtype-to-ppc7400-when-targeting.patch        2016-08-25 22:42:32 UTC (rev 151991)
</span><span class="lines">@@ -0,0 +1,55 @@
</span><ins>+From 7c7ac9a92497d52494a841bd1bcf6df07b0f4d13 Mon Sep 17 00:00:00 2001
+From: Jeremy Huddleston Sequoia &lt;jeremyhu@apple.com&gt;
+Date: Sat, 17 Jan 2015 09:03:43 -0800
+Subject: [PATCH 1/4] Set the Mach-O CPU Subtype to ppc7400 when targeting
+ Leopard
+
+http://llvm.org/bugs/show_bug.cgi?id=18463
+
+Signed-off-by: Jeremy Huddleston Sequoia &lt;jeremyhu@apple.com&gt;
+---
+ lib/Target/PowerPC/MCTargetDesc/PPCAsmBackend.cpp | 13 ++++++++++---
+ 1 file changed, 10 insertions(+), 3 deletions(-)
+
+diff --git llvm_master/lib/Target/PowerPC/MCTargetDesc/PPCAsmBackend.cpp macports_master/lib/Target/PowerPC/MCTargetDesc/PPCAsmBackend.cpp
+index b6dd595..11a7953 100644
+--- llvm_master/lib/Target/PowerPC/MCTargetDesc/PPCAsmBackend.cpp
++++ macports_master/lib/Target/PowerPC/MCTargetDesc/PPCAsmBackend.cpp
+@@ -201,16 +201,23 @@ public:
+ // FIXME: This should be in a separate file.
+ namespace {
+   class DarwinPPCAsmBackend : public PPCAsmBackend {
++    Triple TheTriple;
+   public:
+-    DarwinPPCAsmBackend(const Target &amp;T) : PPCAsmBackend(T, false) { }
++    DarwinPPCAsmBackend(const Target &amp;T, const Triple &amp;TT) : PPCAsmBackend(T, false), TheTriple(TT) { }

+     MCObjectWriter *createObjectWriter(raw_pwrite_stream &amp;OS) const override {
+       bool is64 = getPointerSize() == 8;
++      MachO::CPUSubTypePowerPC CS = MachO::CPU_SUBTYPE_POWERPC_ALL;
++
++      if (TheTriple.isOSDarwin() &amp;&amp; !TheTriple.isMacOSXVersionLT(10,5)) {
++          CS = MachO::CPU_SUBTYPE_POWERPC_7400;
++      }
++
+       return createPPCMachObjectWriter(
+           OS,
+           /*Is64Bit=*/is64,
+           (is64 ? MachO::CPU_TYPE_POWERPC64 : MachO::CPU_TYPE_POWERPC),
+-          MachO::CPU_SUBTYPE_POWERPC_ALL);
++          CS);
+     }
+   };

+@@ -232,7 +239,7 @@ MCAsmBackend *llvm::createPPCAsmBackend(const Target &amp;T,
+                                         const MCRegisterInfo &amp;MRI,
+                                         const Triple &amp;TT, StringRef CPU) {
+   if (TT.isOSDarwin())
+-    return new DarwinPPCAsmBackend(T);
++    return new DarwinPPCAsmBackend(T, TT);

+   uint8_t OSABI = MCELFObjectTargetWriter::getOSABI(TT.getOS());
+   bool IsLittleEndian = TT.getArch() == Triple::ppc64le;
+-- 
+2.7.0
+
</ins></span></pre></div>
<a id="trunkdportslangllvmdevelfiles0002DefineEXC_MASK_CRASHandMACH_EXCEPTION_CODESifthpatch"></a>
<div class="addfile"><h4>Added: trunk/dports/lang/llvm-devel/files/0002-Define-EXC_MASK_CRASH-and-MACH_EXCEPTION_CODES-if-th.patch (0 => 151991)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/llvm-devel/files/0002-Define-EXC_MASK_CRASH-and-MACH_EXCEPTION_CODES-if-th.patch                                (rev 0)
+++ trunk/dports/lang/llvm-devel/files/0002-Define-EXC_MASK_CRASH-and-MACH_EXCEPTION_CODES-if-th.patch        2016-08-25 22:42:32 UTC (rev 151991)
</span><span class="lines">@@ -0,0 +1,36 @@
</span><ins>+From 8600795c2b9d37dc8eb8aa18dc38e7abe8767a36 Mon Sep 17 00:00:00 2001
+From: Jeremy Huddleston Sequoia &lt;jeremyhu@apple.com&gt;
+Date: Sun, 18 Jan 2015 11:18:13 -0800
+Subject: [PATCH 2/4] Define EXC_MASK_CRASH and MACH_EXCEPTION_CODES if they're
+ not defined in the SDK
+
+The 10.4 SDK does not define these macros
+
+Signed-off-by: Jeremy Huddleston Sequoia &lt;jeremyhu@apple.com&gt;
+---
+ lib/Support/Unix/Signals.inc | 9 +++++++++
+ 1 file changed, 9 insertions(+)
+
+diff --git llvm_master/lib/Support/Unix/Signals.inc macports_master/lib/Support/Unix/Signals.inc
+index 061cdb3..4d687b3 100644
+--- llvm_master/lib/Support/Unix/Signals.inc
++++ macports_master/lib/Support/Unix/Signals.inc
+@@ -387,6 +387,15 @@ void llvm::sys::PrintStackTraceOnErrorSignal(bool DisableCrashReporting) {
+   AddSignalHandler(PrintStackTraceSignalHandler, nullptr);

+ #if defined(__APPLE__) &amp;&amp; defined(ENABLE_CRASH_OVERRIDES)
++
++/* These aren't defined in the 10.4 SDK, so provide them here */
++#ifndef EXC_MASK_CRASH
++#define EXC_MASK_CRASH 0x400
++#endif
++#ifndef MACH_EXCEPTION_CODES
++#define MACH_EXCEPTION_CODES 0x80000000
++#endif
++
+   // Environment variable to disable any kind of crash dialog.
+   if (DisableCrashReporting || getenv(&quot;LLVM_DISABLE_CRASH_REPORT&quot;)) {
+     mach_port_t self = mach_task_self();
+-- 
+2.7.0
+
</ins></span></pre></div>
<a id="trunkdportslangllvmdevelfiles0003MacPortsOnlyDontembedthedeploymenttargetintpatch"></a>
<div class="addfile"><h4>Added: trunk/dports/lang/llvm-devel/files/0003-MacPorts-Only-Don-t-embed-the-deployment-target-in-t.patch (0 => 151991)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/llvm-devel/files/0003-MacPorts-Only-Don-t-embed-the-deployment-target-in-t.patch                                (rev 0)
+++ trunk/dports/lang/llvm-devel/files/0003-MacPorts-Only-Don-t-embed-the-deployment-target-in-t.patch        2016-08-25 22:42:32 UTC (rev 151991)
</span><span class="lines">@@ -0,0 +1,29 @@
</span><ins>+From f37d1e0f822b626119ca4b8873bf54418734e75a Mon Sep 17 00:00:00 2001
+From: Jeremy Huddleston Sequoia &lt;jeremyhu@apple.com&gt;
+Date: Sat, 17 Jan 2015 16:41:30 -0800
+Subject: [PATCH 3/4] MacPorts Only: Don't embed the deployment target in the
+ asm when using -fno-integrated-as
+
+http://llvm.org/bugs/show_bug.cgi?id=21636
+
+Signed-off-by: Jeremy Huddleston Sequoia &lt;jeremyhu@apple.com&gt;
+---
+ lib/CodeGen/AsmPrinter/AsmPrinter.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git llvm_master/lib/CodeGen/AsmPrinter/AsmPrinter.cpp macports_master/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
+index 4d945bd..5cbf88c 100644
+--- llvm_master/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
++++ macports_master/lib/CodeGen/AsmPrinter/AsmPrinter.cpp
+@@ -193,7 +193,7 @@ bool AsmPrinter::doInitialization(Module &amp;M) {
+   // anyway.
+   Triple TT(getTargetTriple());
+   // If there is a version specified, Major will be non-zero.
+-  if (TT.isOSDarwin() &amp;&amp; TT.getOSMajorVersion() != 0) {
++  if (TT.isOSDarwin() &amp;&amp; TT.getOSMajorVersion() != 0 &amp;&amp; MAI-&gt;useIntegratedAssembler()) {
+     unsigned Major, Minor, Update;
+     MCVersionMinType VersionType;
+     if (TT.isWatchOS()) {
+-- 
+2.7.0
+
</ins></span></pre></div>
<a id="trunkdportslangllvmdevelfiles1001MacPortsOnlyPrepareclangformatforreplacementwpatch"></a>
<div class="addfile"><h4>Added: trunk/dports/lang/llvm-devel/files/1001-MacPorts-Only-Prepare-clang-format-for-replacement-w.patch (0 => 151991)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/llvm-devel/files/1001-MacPorts-Only-Prepare-clang-format-for-replacement-w.patch                                (rev 0)
+++ trunk/dports/lang/llvm-devel/files/1001-MacPorts-Only-Prepare-clang-format-for-replacement-w.patch        2016-08-25 22:42:32 UTC (rev 151991)
</span><span class="lines">@@ -0,0 +1,84 @@
</span><ins>+From ab5dbc40e2dc4220e0ba1e88a106266e9ba10f8b Mon Sep 17 00:00:00 2001
+From: Jeremy Huddleston Sequoia &lt;jeremyhu@apple.com&gt;
+Date: Sat, 17 Jan 2015 17:50:24 -0800
+Subject: [PATCH 1001/1005] MacPorts Only: Prepare clang-format for replacement
+ with absolute path
+
+Signed-off-by: Jeremy Huddleston Sequoia &lt;jeremyhu@apple.com&gt;
+---
+ tools/clang-format/clang-format-bbedit.applescript | 2 +-
+ tools/clang-format/clang-format-diff.py            | 2 +-
+ tools/clang-format/clang-format-sublime.py         | 2 +-
+ tools/clang-format/clang-format.el                 | 3 +--
+ tools/clang-format/clang-format.py                 | 2 +-
+ 5 files changed, 5 insertions(+), 6 deletions(-)
+
+diff --git llvm_master/tools/clang/tools/clang-format/clang-format-bbedit.applescript macports_master/tools/clang/tools/clang-format/clang-format-bbedit.applescript
+index fa88fe9..eb09448 100644
+--- llvm_master/tools/clang/tools/clang-format/clang-format-bbedit.applescript
++++ macports_master/tools/clang/tools/clang-format/clang-format-bbedit.applescript
+@@ -15,7 +15,7 @@ tell application &quot;BBEdit&quot;
+ end tell

+ set filePath to urlToPOSIXPath(fileURL)
+-set newContents to do shell script &quot;/path/to/clang-format -offset=&quot; &amp; selectionOffset &amp; &quot; -length=&quot; &amp; selectionLength &amp; &quot; &quot; &amp; quoted form of filePath
++set newContents to do shell script &quot;@CLANG_FORMAT_PATH@ -offset=&quot; &amp; selectionOffset &amp; &quot; -length=&quot; &amp; selectionLength &amp; &quot; &quot; &amp; quoted form of filePath

+ tell application &quot;BBEdit&quot;
+         -- &quot;set contents of text document 1 to newContents&quot; scrolls to the bottom while
+diff --git llvm_master/tools/clang/tools/clang-format/clang-format-diff.py macports_master/tools/clang/tools/clang-format/clang-format-diff.py
+index 5e728f5..b23c3c8 100755
+--- llvm_master/tools/clang/tools/clang-format/clang-format-diff.py
++++ macports_master/tools/clang/tools/clang-format/clang-format-diff.py
+@@ -55,7 +55,7 @@ def main():
+   parser.add_argument('-style',
+                       help='formatting style to apply (LLVM, Google, Chromium, '
+                       'Mozilla, WebKit)')
+-  parser.add_argument('-binary', default='clang-format',
++  parser.add_argument('-binary', default='@CLANG_FORMAT_PATH@',
+                       help='location of binary to use for clang-format')
+   args = parser.parse_args()

+diff --git llvm_master/tools/clang/tools/clang-format/clang-format-sublime.py macports_master/tools/clang/tools/clang-format/clang-format-sublime.py
+index 16ff56e..4b68104 100644
+--- llvm_master/tools/clang/tools/clang-format/clang-format-sublime.py
++++ macports_master/tools/clang/tools/clang-format/clang-format-sublime.py
+@@ -18,7 +18,7 @@ import sublime_plugin
+ import subprocess

+ # Change this to the full path if clang-format is not on the path.
+-binary = 'clang-format'
++binary = '@CLANG_FORMAT_PATH@'

+ # Change this to format according to other formatting styles. See the output of
+ # 'clang-format --help' for a list of supported styles. The default looks for
+diff --git llvm_master/tools/clang/tools/clang-format/clang-format.el macports_master/tools/clang/tools/clang-format/clang-format.el
+index ca46144..1c49835 100644
+--- llvm_master/tools/clang/tools/clang-format/clang-format.el
++++ macports_master/tools/clang/tools/clang-format/clang-format.el
+@@ -36,8 +36,7 @@
+   :group 'tools)

+ (defcustom clang-format-executable
+-  (or (executable-find &quot;clang-format&quot;)
+-      &quot;clang-format&quot;)
++  &quot;@CLANG_FORMAT_PATH@&quot;
+   &quot;Location of the clang-format executable.

+ A string containing the name or the full path of the executable.&quot;
+diff --git llvm_master/tools/clang/tools/clang-format/clang-format.py macports_master/tools/clang/tools/clang-format/clang-format.py
+index 5cb41fc..e8a5904 100644
+--- llvm_master/tools/clang/tools/clang-format/clang-format.py
++++ macports_master/tools/clang/tools/clang-format/clang-format.py
+@@ -34,7 +34,7 @@ import vim

+ # set g:clang_format_path to the path to clang-format if it is not on the path
+ # Change this to the full path if clang-format is not on the path.
+-binary = 'clang-format'
++binary = '@CLANG_FORMAT_PATH@'
+ if vim.eval('exists(&quot;g:clang_format_path&quot;)') == &quot;1&quot;:
+   binary = vim.eval('g:clang_format_path')

+-- 
+2.7.0
+
</ins></span></pre></div>
<a id="trunkdportslangllvmdevelfiles1002MacPortsOnlyFixnameofscanviewexecutableinsidpatch"></a>
<div class="addfile"><h4>Added: trunk/dports/lang/llvm-devel/files/1002-MacPorts-Only-Fix-name-of-scan-view-executable-insid.patch (0 => 151991)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/llvm-devel/files/1002-MacPorts-Only-Fix-name-of-scan-view-executable-insid.patch                                (rev 0)
+++ trunk/dports/lang/llvm-devel/files/1002-MacPorts-Only-Fix-name-of-scan-view-executable-insid.patch        2016-08-25 22:42:32 UTC (rev 151991)
</span><span class="lines">@@ -0,0 +1,29 @@
</span><ins>+From f251a1bd711d637013a19dddb23bc0e7ab6ef685 Mon Sep 17 00:00:00 2001
+From: Jeremy Huddleston Sequoia &lt;jeremyhu@apple.com&gt;
+Date: Sat, 17 Jan 2015 17:55:27 -0800
+Subject: [PATCH 1002/1005] MacPorts Only: Fix name of scan-view executable
+ inside scan-build
+
+http://trac.macports.org/ticket/35006
+
+Signed-off-by: Jeremy Huddleston Sequoia &lt;jeremyhu@apple.com&gt;
+---
+ tools/scan-build/bin/scan-build | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git llvm_master/tools/clang/tools/scan-build/bin/scan-build macports_master/tools/clang/tools/scan-build/bin/scan-build
+index 6a14484..319305f 100755
+--- llvm_master/tools/clang/tools/scan-build/bin/scan-build
++++ macports_master/tools/clang/tools/scan-build/bin/scan-build
+@@ -1817,6 +1817,8 @@ if (defined $Options{OutputFormat}) {
+       Diag &quot;Analysis run complete.\n&quot;;
+       Diag &quot;Viewing analysis results in '$Options{OutputDir}' using scan-view.\n&quot;;
+       my $ScanView = Cwd::realpath(&quot;$RealBin/scan-view&quot;);
++      if (! -x $ScanView) { $ScanView = Cwd::realpath(&quot;$RealBin/bin/scan-view&quot;); }
++      if (! -x $ScanView) { $ScanView = Cwd::realpath(&quot;$RealBin/../scan-view/scan-view&quot;); }
+       if (! -x $ScanView) { $ScanView = &quot;scan-view&quot;; }
+       if (! -x $ScanView) { $ScanView = Cwd::realpath(&quot;$RealBin/../../scan-view/bin/scan-view&quot;); }
+       exec $ScanView, &quot;$Options{OutputDir}&quot;;
+-- 
+2.7.0
+
</ins></span></pre></div>
<a id="trunkdportslangllvmdevelfiles1003Defaulttoppc7400forOSX105patch"></a>
<div class="addfile"><h4>Added: trunk/dports/lang/llvm-devel/files/1003-Default-to-ppc7400-for-OSX-10.5.patch (0 => 151991)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/llvm-devel/files/1003-Default-to-ppc7400-for-OSX-10.5.patch                                (rev 0)
+++ trunk/dports/lang/llvm-devel/files/1003-Default-to-ppc7400-for-OSX-10.5.patch        2016-08-25 22:42:32 UTC (rev 151991)
</span><span class="lines">@@ -0,0 +1,26 @@
</span><ins>+From 2bf8502dda4a3ec979b15644513b31c0547959b7 Mon Sep 17 00:00:00 2001
+From: Iain Sandoe &lt;iain@codesourcery.com&gt;
+Date: Sun, 27 Jul 2014 20:35:16 +0100
+Subject: [PATCH 1003/1005] Default to ppc7400 for OSX 10.5+
+
+---
+ lib/Driver/Tools.cpp | 3 +++
+ 1 file changed, 3 insertions(+)
+
+diff --git llvm_master/tools/clang/lib/Driver/Tools.cpp macports_master/tools/clang/lib/Driver/Tools.cpp
+index 2819ab3..e7d5a0c 100644
+--- llvm_master/tools/clang/lib/Driver/Tools.cpp
++++ macports_master/tools/clang/lib/Driver/Tools.cpp
+@@ -1751,6 +1751,9 @@ static std::string getCPUName(const ArgList &amp;Args, const llvm::Triple &amp;T,
+         TargetCPUName = &quot;ppc64&quot;;
+       else if (T.getArch() == llvm::Triple::ppc64le)
+         TargetCPUName = &quot;ppc64le&quot;;
++      else if (T.isOSDarwin() &amp;&amp; !T.isMacOSXVersionLT(10,5))
++        // For 10.5+ Altivec is assumed available.
++        TargetCPUName = &quot;7400&quot;;
+       else
+         TargetCPUName = &quot;ppc&quot;;
+     }
+-- 
+2.7.0
+
</ins></span></pre></div>
<a id="trunkdportslangllvmdevelfiles1004OnlycallsetpriorityPRIO_DARWIN_THREAD0PRIO_DARWpatch"></a>
<div class="addfile"><h4>Added: trunk/dports/lang/llvm-devel/files/1004-Only-call-setpriority-PRIO_DARWIN_THREAD-0-PRIO_DARW.patch (0 => 151991)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/llvm-devel/files/1004-Only-call-setpriority-PRIO_DARWIN_THREAD-0-PRIO_DARW.patch                                (rev 0)
+++ trunk/dports/lang/llvm-devel/files/1004-Only-call-setpriority-PRIO_DARWIN_THREAD-0-PRIO_DARW.patch        2016-08-25 22:42:32 UTC (rev 151991)
</span><span class="lines">@@ -0,0 +1,29 @@
</span><ins>+From b81b30b857fbd33e4788688e4a157b37b0538947 Mon Sep 17 00:00:00 2001
+From: Jeremy Huddleston Sequoia &lt;jeremyhu@apple.com&gt;
+Date: Sat, 17 Jan 2015 19:08:57 -0800
+Subject: [PATCH 1004/1005] Only call setpriority(PRIO_DARWIN_THREAD, 0,
+ PRIO_DARWIN_BG) if it is available
+
+Tiger and earlier versions of darwin do not support this.
+
+Signed-off-by: Jeremy Huddleston Sequoia &lt;jeremyhu@apple.com&gt;
+---
+ tools/libclang/CIndex.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git llvm_master/tools/clang/tools/libclang/CIndex.cpp macports_master/tools/clang/tools/libclang/CIndex.cpp
+index b2a9ab8..98b50ce 100644
+--- llvm_master/tools/clang/tools/libclang/CIndex.cpp
++++ macports_master/tools/clang/tools/libclang/CIndex.cpp
+@@ -7744,7 +7744,7 @@ void clang::setThreadBackgroundPriority() {
+   if (getenv(&quot;LIBCLANG_BGPRIO_DISABLE&quot;))
+     return;

+-#ifdef USE_DARWIN_THREADS
++#if defined(USE_DARWIN_THREADS) &amp;&amp; defined(PRIO_DARWIN_THREAD) &amp;&amp; defined(PRIO_DARWIN_BG)
+   setpriority(PRIO_DARWIN_THREAD, 0, PRIO_DARWIN_BG);
+ #endif
+ }
+-- 
+2.7.0
+
</ins></span></pre></div>
<a id="trunkdportslangllvmdevelfiles1005DefaulttofragileObjCruntimewhentargetingdarwipatch"></a>
<div class="addfile"><h4>Added: trunk/dports/lang/llvm-devel/files/1005-Default-to-fragile-ObjC-runtime-when-targeting-darwi.patch (0 => 151991)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/llvm-devel/files/1005-Default-to-fragile-ObjC-runtime-when-targeting-darwi.patch                                (rev 0)
+++ trunk/dports/lang/llvm-devel/files/1005-Default-to-fragile-ObjC-runtime-when-targeting-darwi.patch        2016-08-25 22:42:32 UTC (rev 151991)
</span><span class="lines">@@ -0,0 +1,31 @@
</span><ins>+From e0bb397409adb1a6146dd5c1e044e0614070920e Mon Sep 17 00:00:00 2001
+From: Jeremy Huddleston Sequoia &lt;jeremyhu@apple.com&gt;
+Date: Tue, 20 Jan 2015 00:09:16 -0800
+Subject: [PATCH 1005/1005] Default to fragile ObjC runtime when targeting
+ darwin/ppc
+
+Signed-off-by: Jeremy Huddleston Sequoia &lt;jeremyhu@apple.com&gt;
+---
+ lib/Driver/ToolChains.h | 6 ++++--
+ 1 file changed, 4 insertions(+), 2 deletions(-)
+
+diff --git llvm_master/tools/clang/lib/Driver/ToolChains.h macports_master/tools/clang/lib/Driver/ToolChains.h
+index a5f5473..4f53d95 100644
+--- llvm_master/tools/clang/lib/Driver/ToolChains.h
++++ macports_master/tools/clang/lib/Driver/ToolChains.h
+@@ -324,8 +324,10 @@ public:
+   bool IsEncodeExtendedBlockSignatureDefault() const override { return true; }

+   bool IsObjCNonFragileABIDefault() const override {
+-    // Non-fragile ABI is default for everything but i386.
+-    return getTriple().getArch() != llvm::Triple::x86;
++    // Non-fragile ABI is default for legacy architectures
++    return getTriple().getArch() != llvm::Triple::x86 &amp;&amp;
++           getTriple().getArch() != llvm::Triple::ppc &amp;&amp;
++           getTriple().getArch() != llvm::Triple::ppc64;
+   }

+   bool UseObjCMixedDispatch() const override { return true; }
+-- 
+2.7.0
+
</ins></span></pre></div>
<a id="trunkdportslangllvmdevelfiles2001MacPortsOnlyDontcheckforthemacosxinternalSDpatch"></a>
<div class="addfile"><h4>Added: trunk/dports/lang/llvm-devel/files/2001-MacPorts-Only-Don-t-check-for-the-macosx.internal-SD.patch (0 => 151991)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/llvm-devel/files/2001-MacPorts-Only-Don-t-check-for-the-macosx.internal-SD.patch                                (rev 0)
+++ trunk/dports/lang/llvm-devel/files/2001-MacPorts-Only-Don-t-check-for-the-macosx.internal-SD.patch        2016-08-25 22:42:32 UTC (rev 151991)
</span><span class="lines">@@ -0,0 +1,45 @@
</span><ins>+From 56702152d81a7d993e3f25c64a93588196f09549 Mon Sep 17 00:00:00 2001
+From: Jeremy Huddleston Sequoia &lt;jeremyhu@apple.com&gt;
+Date: Mon, 30 Nov 2015 00:52:14 -0500
+Subject: [PATCH 2001/2001] MacPorts Only: Don't check for the macosx.internal
+ SDK
+
+https://llvm.org/bugs/show_bug.cgi?id=25677
+
+Signed-off-by: Jeremy Huddleston Sequoia &lt;jeremyhu@apple.com&gt;
+---
+ cmake/Modules/CompilerRTDarwinUtils.cmake | 11 -----------
+ 1 file changed, 11 deletions(-)
+
+diff --git llvm_master/projects/compiler-rt/cmake/Modules/CompilerRTDarwinUtils.cmake macports_master/projects/compiler-rt/cmake/Modules/CompilerRTDarwinUtils.cmake
+index 28d3986..92a51cf 100644
+--- llvm_master/projects/compiler-rt/cmake/Modules/CompilerRTDarwinUtils.cmake
++++ macports_master/projects/compiler-rt/cmake/Modules/CompilerRTDarwinUtils.cmake
+@@ -5,14 +5,6 @@ include(CMakeParseArguments)
+ # the current Xcode.
+ function(find_darwin_sdk_dir var sdk_name)
+   # Let's first try the internal SDK, otherwise use the public SDK.
+-  execute_process(
+-    COMMAND xcodebuild -version -sdk ${sdk_name}.internal Path
+-    RESULT_VARIABLE result_process
+-    OUTPUT_VARIABLE var_internal
+-    OUTPUT_STRIP_TRAILING_WHITESPACE
+-    ERROR_FILE /dev/null
+-  )
+-  if((NOT result_process EQUAL 0) OR &quot;&quot; STREQUAL &quot;${var_internal}&quot;)
+     execute_process(
+       COMMAND xcodebuild -version -sdk ${sdk_name} Path
+       RESULT_VARIABLE result_process
+@@ -20,9 +12,6 @@ function(find_darwin_sdk_dir var sdk_name)
+       OUTPUT_STRIP_TRAILING_WHITESPACE
+       ERROR_FILE /dev/null
+     )
+-  else()
+-    set(${var}_INTERNAL ${var_internal} PARENT_SCOPE)
+-  endif()
+   if(result_process EQUAL 0)
+     set(${var} ${var_internal} PARENT_SCOPE)
+   endif()
+-- 
+2.9.3
+
</ins></span></pre></div>
<a id="trunkdportslangllvmdevelfiles3001builditbuildfixforLeopardpatch"></a>
<div class="addfile"><h4>Added: trunk/dports/lang/llvm-devel/files/3001-buildit-build-fix-for-Leopard.patch (0 => 151991)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/llvm-devel/files/3001-buildit-build-fix-for-Leopard.patch                                (rev 0)
+++ trunk/dports/lang/llvm-devel/files/3001-buildit-build-fix-for-Leopard.patch        2016-08-25 22:42:32 UTC (rev 151991)
</span><span class="lines">@@ -0,0 +1,35 @@
</span><ins>+From 338a475972c93c0a819d8fb15050bcce638d3146 Mon Sep 17 00:00:00 2001
+From: Jeremy Huddleston Sequoia &lt;jeremyhu@apple.com&gt;
+Date: Fri, 16 Jan 2015 21:10:35 -0800
+Subject: [PATCH 3001/3005] buildit build fix for Leopard
+
+Signed-off-by: Jeremy Huddleston Sequoia &lt;jeremyhu@apple.com&gt;
+---
+ lib/buildit | 4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+diff --git llvm_master/projects/libcxx/lib/buildit macports_master/projects/libcxx/lib/buildit
+index 7e3bc2e..2740dee 100755
+--- llvm_master/projects/libcxx/lib/buildit
++++ macports_master/projects/libcxx/lib/buildit
+@@ -50,7 +50,7 @@ case $TRIPLE in
+       RC_CFLAGS=&quot;-arch i386 -arch x86_64&quot;
+     fi
+     SOEXT=dylib
+-    if [ &quot;$MACOSX_DEPLOYMENT_TARGET&quot; = &quot;10.6&quot; ]
++    if [ &quot;$MACOSX_DEPLOYMENT_TARGET&quot; = &quot;10.5&quot; ] || [ &quot;$MACOSX_DEPLOYMENT_TARGET&quot; = &quot;10.6&quot; ]
+     then
+         EXTRA_FLAGS=&quot;-nostdinc++ -std=c++11 -U__STRICT_ANSI__&quot;
+         LDSHARED_FLAGS=&quot;-o libc++.1.dylib \
+@@ -59,7 +59,7 @@ case $TRIPLE in
+             -install_name /usr/lib/libc++.1.dylib \
+             -Wl,-reexport_library,/usr/lib/libc++abi.dylib \
+             -Wl,-unexported_symbols_list,libc++unexp.exp  \
+-            /usr/lib/libSystem.B.dylib&quot;
++            /usr/lib/libSystem.B.dylib /usr/lib/libgcc_s.1.dylib&quot;
+     else
+         if [ -n &quot;$SDKROOT&quot; ]
+         then
+-- 
+2.6.1
+
</ins></span></pre></div>
<a id="trunkdportslangllvmdevelfiles3002builditSetcompatibilityversiontoRC_ProjectSourcpatch"></a>
<div class="addfile"><h4>Added: trunk/dports/lang/llvm-devel/files/3002-buildit-Set-compatibility-version-to-RC_ProjectSourc.patch (0 => 151991)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/llvm-devel/files/3002-buildit-Set-compatibility-version-to-RC_ProjectSourc.patch                                (rev 0)
+++ trunk/dports/lang/llvm-devel/files/3002-buildit-Set-compatibility-version-to-RC_ProjectSourc.patch        2016-08-25 22:42:32 UTC (rev 151991)
</span><span class="lines">@@ -0,0 +1,28 @@
</span><ins>+From b132f1d99a4d68032981ac5eac247957640a11b2 Mon Sep 17 00:00:00 2001
+From: Jeremy Huddleston Sequoia &lt;jeremyhu@apple.com&gt;
+Date: Fri, 16 Jan 2015 21:11:37 -0800
+Subject: [PATCH 3002/3005] buildit: Set compatibility version to
+ RC_ProjectSourceVersion
+
+Signed-off-by: Jeremy Huddleston Sequoia &lt;jeremyhu@apple.com&gt;
+---
+ lib/buildit | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git llvm_master/projects/libcxx/lib/buildit macports_master/projects/libcxx/lib/buildit
+index 2740dee..c74683f 100755
+--- llvm_master/projects/libcxx/lib/buildit
++++ macports_master/projects/libcxx/lib/buildit
+@@ -54,7 +54,8 @@ case $TRIPLE in
+     then
+         EXTRA_FLAGS=&quot;-nostdinc++ -std=c++11 -U__STRICT_ANSI__&quot;
+         LDSHARED_FLAGS=&quot;-o libc++.1.dylib \
+-            -dynamiclib -nodefaultlibs -current_version 1 \
++            -dynamiclib -nodefaultlibs \
++            -current_version ${RC_ProjectSourceVersion} \
+             -compatibility_version 1 \
+             -install_name /usr/lib/libc++.1.dylib \
+             -Wl,-reexport_library,/usr/lib/libc++abi.dylib \
+-- 
+2.6.1
+
</ins></span></pre></div>
<a id="trunkdportslangllvmdevelfiles3003FixlocalanditeratorwhenbuildingwithLionandnpatch"></a>
<div class="addfile"><h4>Added: trunk/dports/lang/llvm-devel/files/3003-Fix-local-and-iterator-when-building-with-Lion-and-n.patch (0 => 151991)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/llvm-devel/files/3003-Fix-local-and-iterator-when-building-with-Lion-and-n.patch                                (rev 0)
+++ trunk/dports/lang/llvm-devel/files/3003-Fix-local-and-iterator-when-building-with-Lion-and-n.patch        2016-08-25 22:42:32 UTC (rev 151991)
</span><span class="lines">@@ -0,0 +1,45 @@
</span><ins>+From 763f41fd807928cec405fa391fb062cfd2cc5251 Mon Sep 17 00:00:00 2001
+From: Jeremy Huddleston Sequoia &lt;jeremyhu@apple.com&gt;
+Date: Fri, 16 Jan 2015 21:34:36 -0800
+Subject: [PATCH 3003/3005] Fix &lt;local&gt; and &lt;iterator&gt; when building with Lion
+ and newer Availability.h
+
+Signed-off-by: Jeremy Huddleston Sequoia &lt;jeremyhu@apple.com&gt;
+---
+ include/iterator | 4 ++--
+ include/locale   | 4 ++--
+ 2 files changed, 4 insertions(+), 4 deletions(-)
+
+diff --git llvm_master/projects/libcxx/include/iterator macports_master/projects/libcxx/include/iterator
+index c06ef8f..168efa6 100644
+--- llvm_master/projects/libcxx/include/iterator
++++ macports_master/projects/libcxx/include/iterator
+@@ -920,8 +920,8 @@ public:
+     _LIBCPP_INLINE_VISIBILITY bool failed() const _NOEXCEPT {return __sbuf_ == 0;}

+ #if !defined(__APPLE__) || \
+-    (defined(__MAC_OS_X_VERSION_MIN_REQUIRED) &amp;&amp; __MAC_OS_X_VERSION_MIN_REQUIRED &gt; __MAC_10_8) || \
+-    (defined(__IPHONE_OS_VERSION_MIN_REQUIRED) &amp;&amp; __IPHONE_OS_VERSION_MIN_REQUIRED &gt; __IPHONE_6_0)
++    (defined(__MAC_OS_X_VERSION_MIN_REQUIRED) &amp;&amp; defined(__MAC_10_8) &amp;&amp; __MAC_OS_X_VERSION_MIN_REQUIRED &gt; __MAC_10_8) || \
++    (defined(__IPHONE_OS_VERSION_MIN_REQUIRED) &amp;&amp; defined(__IPHONE_6_0) &amp;&amp; __IPHONE_OS_VERSION_MIN_REQUIRED &gt; __IPHONE_6_0)

+     template &lt;class _Ch, class _Tr&gt;
+     friend
+diff --git llvm_master/projects/libcxx/include/locale macports_master/projects/libcxx/include/locale
+index 74898be..b82a3c7 100644
+--- llvm_master/projects/libcxx/include/locale
++++ macports_master/projects/libcxx/include/locale
+@@ -1474,8 +1474,8 @@ __pad_and_output(_OutputIterator __s,
+ }

+ #if !defined(__APPLE__) || \
+-    (defined(__MAC_OS_X_VERSION_MIN_REQUIRED) &amp;&amp; __MAC_OS_X_VERSION_MIN_REQUIRED &gt; __MAC_10_8) || \
+-    (defined(__IPHONE_OS_VERSION_MIN_REQUIRED) &amp;&amp; __IPHONE_OS_VERSION_MIN_REQUIRED &gt; __IPHONE_6_0)
++    (defined(__MAC_OS_X_VERSION_MIN_REQUIRED) &amp;&amp; defined(__MAC_10_8) &amp;&amp; __MAC_OS_X_VERSION_MIN_REQUIRED &gt; __MAC_10_8) || \
++    (defined(__IPHONE_OS_VERSION_MIN_REQUIRED) &amp;&amp; defined(__IPHONE_6_0) &amp;&amp; __IPHONE_OS_VERSION_MIN_REQUIRED &gt; __IPHONE_6_0)

+ template &lt;class _CharT, class _Traits&gt;
+ _LIBCPP_HIDDEN
+-- 
+2.6.1
+
</ins></span></pre></div>
<a id="trunkdportslangllvmdevelfiles3004Fixmissinglonglongmathprototypeswhenusingthepatch"></a>
<div class="addfile"><h4>Added: trunk/dports/lang/llvm-devel/files/3004-Fix-missing-long-long-math-prototypes-when-using-the.patch (0 => 151991)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/llvm-devel/files/3004-Fix-missing-long-long-math-prototypes-when-using-the.patch                                (rev 0)
+++ trunk/dports/lang/llvm-devel/files/3004-Fix-missing-long-long-math-prototypes-when-using-the.patch        2016-08-25 22:42:32 UTC (rev 151991)
</span><span class="lines">@@ -0,0 +1,41 @@
</span><ins>+From 133c794191c25455ffccacc703570c8e7b6b4379 Mon Sep 17 00:00:00 2001
+From: Jeremy Huddleston Sequoia &lt;jeremyhu@apple.com&gt;
+Date: Sat, 17 Jan 2015 16:26:20 -0800
+Subject: [PATCH 3004/3005] Fix missing long long math prototypes when using
+ the Snow Leopard SDK
+
+Signed-off-by: Jeremy Huddleston Sequoia &lt;jeremyhu@apple.com&gt;
+---
+ include/cmath | 16 ++++++++++++++++
+ 1 file changed, 16 insertions(+)
+
+diff --git llvm_master/projects/libcxx/include/cmath macports_master/projects/libcxx/include/cmath
+index ebbde18..f6d0d31 100644
+--- llvm_master/projects/libcxx/include/cmath
++++ macports_master/projects/libcxx/include/cmath
+@@ -300,6 +300,22 @@ long double    truncl(long double x);
+ #include &lt;__config&gt;
+ #include &lt;math.h&gt;

++#ifdef __APPLE__
++#include &lt;Availability.h&gt;
++#if __MAC_OS_X_VERSION_MAX_ALLOWED &lt; 1070
++/* These prototypes are incorrectly omitted from &lt;math.h&gt; on Snow Leopard despite being available */
++extern &quot;C&quot; {
++    extern long long int llrintl(long double);
++    extern long long int llrint(double);
++    extern long long int llrintf(float);
++
++    extern long long int llroundl(long double);
++    extern long long int llround(double);
++    extern long long int llroundf(float);
++}
++#endif
++#endif // __APPLE__
++
+ #if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
+ #pragma GCC system_header
+ #endif
+-- 
+2.6.1
+
</ins></span></pre></div>
<a id="trunkdportslangllvmdevelfiles3005implementatomicusingmutexlock_guardfor64bopspatch"></a>
<div class="addfile"><h4>Added: trunk/dports/lang/llvm-devel/files/3005-implement-atomic-using-mutex-lock_guard-for-64b-ops-.patch (0 => 151991)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/llvm-devel/files/3005-implement-atomic-using-mutex-lock_guard-for-64b-ops-.patch                                (rev 0)
+++ trunk/dports/lang/llvm-devel/files/3005-implement-atomic-using-mutex-lock_guard-for-64b-ops-.patch        2016-08-25 22:42:32 UTC (rev 151991)
</span><span class="lines">@@ -0,0 +1,316 @@
</span><ins>+From bfb3ae7b99d4efea34677d6931329efbb423415d Mon Sep 17 00:00:00 2001
+From: David Fang &lt;fang@csl.cornell.edu&gt;
+Date: Wed, 15 Jan 2014 21:27:34 -0800
+Subject: [PATCH 3005/3005] implement atomic&lt;&gt; using mutex/lock_guard for 64b
+ ops on 32b PPC not pretty, not fast, but passes atomic tests
+
+---
+ include/__atomic_locked | 240 ++++++++++++++++++++++++++++++++++++++++++++++++
+ include/atomic          |  46 ++++++++++
+ 2 files changed, 286 insertions(+)
+ create mode 100644 include/__atomic_locked
+
+diff --git llvm_master/projects/libcxx/include/__atomic_locked macports_master/projects/libcxx/include/__atomic_locked
+new file mode 100644
+index 0000000..f10dd74
+--- /dev/null
++++ macports_master/projects/libcxx/include/__atomic_locked
+@@ -0,0 +1,240 @@
++// -*- C++ -*-
++//===--------------------------- __atomic_locked --------------------------===//
++//
++//                     The LLVM Compiler Infrastructure
++//
++// This file is distributed under the University of Illinois Open Source
++// License. See LICENSE.TXT for details.
++//
++//===----------------------------------------------------------------------===//
++
++#ifndef _LIBCPP_ATOMIC_LOCKED
++#define _LIBCPP_ATOMIC_LOCKED
++
++#include &lt;__mutex_base&gt;        // for mutex and lock_guard
++
++/**
++        This provides slow-but-usable lock-based atomic access to
++        structures for which atomic lock-free functions are missing.
++        This is motivated by the desire for 64b atomic operations
++        on 32b PowerPC architectures.  
++**/
++
++#if !defined(_LIBCPP_HAS_NO_PRAGMA_SYSTEM_HEADER)
++#pragma GCC system_header
++#endif
++
++_LIBCPP_BEGIN_NAMESPACE_STD
++
++template &lt;class _Tp, bool = is_integral&lt;_Tp&gt;::value &amp;&amp; !is_same&lt;_Tp, bool&gt;::value&gt;
++struct __atomic_mutex_locked  // false
++{
++    mutable _Atomic(_Tp) __a_;
++    mutable mutex __lock_;
++    typedef lock_guard&lt;mutex&gt;        lock_type;
++
++    _Tp&amp; na(void) const { return reinterpret_cast&lt;_Tp&amp;&gt;(__a_); }
++    volatile _Tp&amp; na(void) const volatile { return reinterpret_cast&lt;volatile _Tp&amp;&gt;(__a_); }
++
++    _LIBCPP_INLINE_VISIBILITY
++    bool is_lock_free() const volatile _NOEXCEPT
++        {return false;}
++    _LIBCPP_INLINE_VISIBILITY
++    bool is_lock_free() const _NOEXCEPT
++        {return false;}
++    _LIBCPP_INLINE_VISIBILITY
++    void store(_Tp __d, memory_order = memory_order_seq_cst) volatile _NOEXCEPT
++        { const lock_type g(const_cast&lt;mutex&amp;&gt;(__lock_)); na() = __d; }
++    _LIBCPP_INLINE_VISIBILITY
++    void store(_Tp __d, memory_order = memory_order_seq_cst) _NOEXCEPT
++        { const lock_type g(__lock_); na() = __d; }
++    _LIBCPP_INLINE_VISIBILITY
++    _Tp load(memory_order = memory_order_seq_cst) const volatile _NOEXCEPT
++        { const lock_type g(const_cast&lt;mutex&amp;&gt;(__lock_)); return na(); }
++    _LIBCPP_INLINE_VISIBILITY
++    _Tp load(memory_order = memory_order_seq_cst) const _NOEXCEPT
++        { const lock_type g(__lock_); return na(); }
++    _LIBCPP_INLINE_VISIBILITY
++    operator _Tp() const volatile _NOEXCEPT {return load();}
++    _LIBCPP_INLINE_VISIBILITY
++    operator _Tp() const _NOEXCEPT          {return load();}
++    _LIBCPP_INLINE_VISIBILITY
++    _Tp exchange(_Tp __d, memory_order = memory_order_seq_cst) volatile _NOEXCEPT
++        { const lock_type g(const_cast&lt;mutex&amp;&gt;(__lock_));
++        // or use std::swap
++          const _Tp ret = na(); na() = __d; return ret; }
++    _LIBCPP_INLINE_VISIBILITY
++    _Tp exchange(_Tp __d, memory_order = memory_order_seq_cst) _NOEXCEPT
++        { const lock_type g(__lock_);
++        // or use std::swap
++          const _Tp ret = na(); na() = __d; return ret; }
++    _LIBCPP_INLINE_VISIBILITY
++    bool compare_exchange_weak(_Tp&amp; __e, _Tp __d,
++                               memory_order __s, memory_order __f) volatile _NOEXCEPT
++        { const lock_type g(const_cast&lt;mutex&amp;&gt;(__lock_));
++          if (na() == __e) { na() = __d; return true; }
++          else { __e = na(); return false; }
++        }
++    _LIBCPP_INLINE_VISIBILITY
++    bool compare_exchange_weak(_Tp&amp; __e, _Tp __d,
++                               memory_order __s, memory_order __f) _NOEXCEPT
++        { const lock_type g(__lock_);
++          if (na() == __e) { na() = __d; return true; }
++          else { __e = na(); return false; }
++        }
++
++    // for now, _weak inditinguishable from _strong
++    _LIBCPP_INLINE_VISIBILITY
++    bool compare_exchange_strong(_Tp&amp; __e, _Tp __d,
++                                 memory_order __s, memory_order __f) volatile _NOEXCEPT
++        {return compare_exchange_weak(__e, __d, __s, __f);}
++    _LIBCPP_INLINE_VISIBILITY
++    bool compare_exchange_strong(_Tp&amp; __e, _Tp __d,
++                                 memory_order __s, memory_order __f) _NOEXCEPT
++        {return compare_exchange_weak(__e, __d, __s, __f);}
++    _LIBCPP_INLINE_VISIBILITY
++    bool compare_exchange_weak(_Tp&amp; __e, _Tp __d,
++                              memory_order __m = memory_order_seq_cst) volatile _NOEXCEPT
++        {return compare_exchange_weak(__e, __d, __m, __m);}
++    _LIBCPP_INLINE_VISIBILITY
++    bool compare_exchange_weak(_Tp&amp; __e, _Tp __d,
++                               memory_order __m = memory_order_seq_cst) _NOEXCEPT
++        {return compare_exchange_weak(__e, __d, __m, __m);}
++    _LIBCPP_INLINE_VISIBILITY
++    bool compare_exchange_strong(_Tp&amp; __e, _Tp __d,
++                              memory_order __m = memory_order_seq_cst) volatile _NOEXCEPT
++        {return compare_exchange_strong(__e, __d, __m, __m);}
++    _LIBCPP_INLINE_VISIBILITY
++    bool compare_exchange_strong(_Tp&amp; __e, _Tp __d,
++                                 memory_order __m = memory_order_seq_cst) _NOEXCEPT
++        {return compare_exchange_strong(__e, __d, __m, __m);}
++
++    _LIBCPP_INLINE_VISIBILITY
++#ifndef _LIBCPP_HAS_NO_DEFAULTED_FUNCTIONS
++    __atomic_mutex_locked() _NOEXCEPT = default;
++#else
++    __atomic_mutex_locked() _NOEXCEPT : __a_() {}
++#endif // _LIBCPP_HAS_NO_DEFAULTED_FUNCTIONS
++
++    _LIBCPP_INLINE_VISIBILITY
++    _LIBCPP_CONSTEXPR __atomic_mutex_locked(_Tp __d) _NOEXCEPT : __a_(__d) {}
++#ifndef _LIBCPP_HAS_NO_DELETED_FUNCTIONS
++    __atomic_mutex_locked(const __atomic_mutex_locked&amp;) = delete;
++    __atomic_mutex_locked&amp; operator=(const __atomic_mutex_locked&amp;) = delete;
++    __atomic_mutex_locked&amp; operator=(const __atomic_mutex_locked&amp;) volatile = delete;
++#else  // _LIBCPP_HAS_NO_DELETED_FUNCTIONS
++private:
++    __atomic_mutex_locked(const __atomic_mutex_locked&amp;);
++    __atomic_mutex_locked&amp; operator=(const __atomic_mutex_locked&amp;);
++    __atomic_mutex_locked&amp; operator=(const __atomic_mutex_locked&amp;) volatile;
++#endif  // _LIBCPP_HAS_NO_DELETED_FUNCTIONS
++};        // end struct __atomic_mutex_locked
++
++// atomic&lt;Integral&gt;
++
++template &lt;class _Tp&gt;
++struct __atomic_mutex_locked&lt;_Tp, true&gt;
++    : public __atomic_mutex_locked&lt;_Tp, false&gt;
++{
++    typedef __atomic_mutex_locked&lt;_Tp, false&gt; __base;
++    typedef        typename __base::lock_type        lock_type;
++    using __base::__lock_;
++    using __base::na;
++
++    _LIBCPP_INLINE_VISIBILITY
++    __atomic_mutex_locked() _NOEXCEPT _LIBCPP_DEFAULT
++    _LIBCPP_INLINE_VISIBILITY
++    _LIBCPP_CONSTEXPR __atomic_mutex_locked(_Tp __d) _NOEXCEPT : __base(__d) {}
++
++    _LIBCPP_INLINE_VISIBILITY
++    _Tp fetch_add(_Tp __op, memory_order __m = memory_order_seq_cst) volatile _NOEXCEPT
++        { const lock_type g(const_cast&lt;mutex&amp;&gt;(__lock_));
++          const _Tp ret = na(); na() += __op; return ret;
++        }
++    _LIBCPP_INLINE_VISIBILITY
++    _Tp fetch_add(_Tp __op, memory_order __m = memory_order_seq_cst) _NOEXCEPT
++        { const lock_type g(__lock_);
++          const _Tp ret = na(); na() += __op; return ret;
++        }
++    _LIBCPP_INLINE_VISIBILITY
++    _Tp fetch_sub(_Tp __op, memory_order __m = memory_order_seq_cst) volatile _NOEXCEPT
++        { const lock_type g(const_cast&lt;mutex&amp;&gt;(__lock_));
++          const _Tp ret = na(); na() -= __op; return ret;
++        }
++    _LIBCPP_INLINE_VISIBILITY
++    _Tp fetch_sub(_Tp __op, memory_order __m = memory_order_seq_cst) _NOEXCEPT
++        { const lock_type g(__lock_);
++          const _Tp ret = na(); na() -= __op; return ret;
++        }
++    _LIBCPP_INLINE_VISIBILITY
++    _Tp fetch_and(_Tp __op, memory_order __m = memory_order_seq_cst) volatile _NOEXCEPT
++        { const lock_type g(const_cast&lt;mutex&amp;&gt;(__lock_));
++          const _Tp ret = na(); na() &amp;= __op; return ret;
++        }
++    _LIBCPP_INLINE_VISIBILITY
++    _Tp fetch_and(_Tp __op, memory_order __m = memory_order_seq_cst) _NOEXCEPT
++        { const lock_type g(__lock_);
++          const _Tp ret = na(); na() &amp;= __op; return ret;
++        }
++    _LIBCPP_INLINE_VISIBILITY
++    _Tp fetch_or(_Tp __op, memory_order __m = memory_order_seq_cst) volatile _NOEXCEPT
++        { const lock_type g(const_cast&lt;mutex&amp;&gt;(__lock_));
++          const _Tp ret = na(); na() |= __op; return ret;
++        }
++    _LIBCPP_INLINE_VISIBILITY
++    _Tp fetch_or(_Tp __op, memory_order __m = memory_order_seq_cst) _NOEXCEPT
++        { const lock_type g(__lock_);
++          const _Tp ret = na(); na() |= __op; return ret;
++        }
++    _LIBCPP_INLINE_VISIBILITY
++    _Tp fetch_xor(_Tp __op, memory_order __m = memory_order_seq_cst) volatile _NOEXCEPT
++        { const lock_type g(const_cast&lt;mutex&amp;&gt;(__lock_));
++          const _Tp ret = na(); na() ^= __op; return ret;
++        }
++    _LIBCPP_INLINE_VISIBILITY
++    _Tp fetch_xor(_Tp __op, memory_order __m = memory_order_seq_cst) _NOEXCEPT
++        { const lock_type g(__lock_);
++          const _Tp ret = na(); na() ^= __op; return ret;
++        }
++
++    _LIBCPP_INLINE_VISIBILITY
++    _Tp operator++(int) volatile _NOEXCEPT      {return fetch_add(_Tp(1));}
++    _LIBCPP_INLINE_VISIBILITY
++    _Tp operator++(int) _NOEXCEPT               {return fetch_add(_Tp(1));}
++    _LIBCPP_INLINE_VISIBILITY
++    _Tp operator--(int) volatile _NOEXCEPT      {return fetch_sub(_Tp(1));}
++    _LIBCPP_INLINE_VISIBILITY
++    _Tp operator--(int) _NOEXCEPT               {return fetch_sub(_Tp(1));}
++    _LIBCPP_INLINE_VISIBILITY
++    _Tp operator++() volatile _NOEXCEPT         {return fetch_add(_Tp(1)) + _Tp(1);}
++    _LIBCPP_INLINE_VISIBILITY
++    _Tp operator++() _NOEXCEPT                  {return fetch_add(_Tp(1)) + _Tp(1);}
++    _LIBCPP_INLINE_VISIBILITY
++    _Tp operator--() volatile _NOEXCEPT         {return fetch_sub(_Tp(1)) - _Tp(1);}
++    _LIBCPP_INLINE_VISIBILITY
++    _Tp operator--() _NOEXCEPT                  {return fetch_sub(_Tp(1)) - _Tp(1);}
++    _LIBCPP_INLINE_VISIBILITY
++    _Tp operator+=(_Tp __op) volatile _NOEXCEPT {return fetch_add(__op) + __op;}
++    _LIBCPP_INLINE_VISIBILITY
++    _Tp operator+=(_Tp __op) _NOEXCEPT          {return fetch_add(__op) + __op;}
++    _LIBCPP_INLINE_VISIBILITY
++    _Tp operator-=(_Tp __op) volatile _NOEXCEPT {return fetch_sub(__op) - __op;}
++    _LIBCPP_INLINE_VISIBILITY
++    _Tp operator-=(_Tp __op) _NOEXCEPT          {return fetch_sub(__op) - __op;}
++    _LIBCPP_INLINE_VISIBILITY
++    _Tp operator&amp;=(_Tp __op) volatile _NOEXCEPT {return fetch_and(__op) &amp; __op;}
++    _LIBCPP_INLINE_VISIBILITY
++    _Tp operator&amp;=(_Tp __op) _NOEXCEPT          {return fetch_and(__op) &amp; __op;}
++    _LIBCPP_INLINE_VISIBILITY
++    _Tp operator|=(_Tp __op) volatile _NOEXCEPT {return fetch_or(__op) | __op;}
++    _LIBCPP_INLINE_VISIBILITY
++    _Tp operator|=(_Tp __op) _NOEXCEPT          {return fetch_or(__op) | __op;}
++    _LIBCPP_INLINE_VISIBILITY
++    _Tp operator^=(_Tp __op) volatile _NOEXCEPT {return fetch_xor(__op) ^ __op;}
++    _LIBCPP_INLINE_VISIBILITY
++    _Tp operator^=(_Tp __op) _NOEXCEPT          {return fetch_xor(__op) ^ __op;}
++};
++
++_LIBCPP_END_NAMESPACE_STD
++
++#endif  // _LIBCPP_ATOMIC_LOCKED
+diff --git llvm_master/projects/libcxx/include/atomic macports_master/projects/libcxx/include/atomic
+index 13965fb..fb0266a 100644
+--- llvm_master/projects/libcxx/include/atomic
++++ macports_master/projects/libcxx/include/atomic
+@@ -1791,4 +1791,50 @@ typedef atomic&lt;uintmax_t&gt; atomic_uintmax_t;

+ _LIBCPP_END_NAMESPACE_STD

++#if        defined(__ppc__) &amp;&amp; !defined(__ppc64__)
++// specialize fallback implementation where 64b atomics are missing
++#include &lt;__atomic_locked&gt;
++
++_LIBCPP_BEGIN_NAMESPACE_STD
++
++template &lt;&gt;
++struct atomic&lt;long long&gt; : public __atomic_mutex_locked&lt;long long&gt;
++{
++    typedef long long                _Tp;
++    typedef __atomic_mutex_locked&lt;_Tp&gt; __base;
++    _LIBCPP_INLINE_VISIBILITY
++    atomic() _NOEXCEPT _LIBCPP_DEFAULT
++    _LIBCPP_INLINE_VISIBILITY
++    _LIBCPP_CONSTEXPR atomic(_Tp __d) _NOEXCEPT : __base(__d) {}
++
++    _LIBCPP_INLINE_VISIBILITY
++    _Tp operator=(_Tp __d) volatile _NOEXCEPT
++        {__base::store(__d); return __d;}
++    _LIBCPP_INLINE_VISIBILITY
++    _Tp operator=(_Tp __d) _NOEXCEPT
++        {__base::store(__d); return __d;}
++};
++
++template &lt;&gt;
++struct atomic&lt;unsigned long long&gt; :
++        public __atomic_mutex_locked&lt;unsigned long long&gt;
++{
++    typedef unsigned long long                _Tp;
++    typedef __atomic_mutex_locked&lt;_Tp&gt; __base;
++    _LIBCPP_INLINE_VISIBILITY
++    atomic() _NOEXCEPT _LIBCPP_DEFAULT
++    _LIBCPP_INLINE_VISIBILITY
++    _LIBCPP_CONSTEXPR atomic(_Tp __d) _NOEXCEPT : __base(__d) {}
++
++    _LIBCPP_INLINE_VISIBILITY
++    _Tp operator=(_Tp __d) volatile _NOEXCEPT
++        {__base::store(__d); return __d;}
++    _LIBCPP_INLINE_VISIBILITY
++    _Tp operator=(_Tp __d) _NOEXCEPT
++        {__base::store(__d); return __d;}
++};
++
++_LIBCPP_END_NAMESPACE_STD
++#endif        // defined(__ppc__) &amp;&amp; !defined(__ppc64__)
++
+ #endif  // _LIBCPP_ATOMIC
+-- 
+2.6.1
+
</ins></span></pre></div>
<a id="trunkdportslangllvmdevelfilesleopardnoasanpatch"></a>
<div class="addfile"><h4>Added: trunk/dports/lang/llvm-devel/files/leopard-no-asan.patch (0 => 151991)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/llvm-devel/files/leopard-no-asan.patch                                (rev 0)
+++ trunk/dports/lang/llvm-devel/files/leopard-no-asan.patch        2016-08-25 22:42:32 UTC (rev 151991)
</span><span class="lines">@@ -0,0 +1,12 @@
</span><ins>+--- a/projects/compiler-rt/cmake/config-ix.cmake        2015-11-29 22:17:04.000000000 -0800
++++ b/projects/compiler-rt/cmake/config-ix.cmake        2015-11-29 22:19:16.000000000 -0800
+@@ -313,9 +313,6 @@ if(APPLE)
+     else()
+       set(SANITIZER_MIN_OSX_VERSION 10.9)
+     endif()
+-    if(SANITIZER_MIN_OSX_VERSION VERSION_LESS &quot;10.7&quot;)
+-      message(FATAL_ERROR &quot;Too old OS X version: ${SANITIZER_MIN_OSX_VERSION}&quot;)
+-    endif()
+   endif()

+   # We're setting the flag manually for each target OS
</ins></span></pre></div>
<a id="trunkdportslangllvmdevelfilesleopardnoblockspatch"></a>
<div class="addfile"><h4>Added: trunk/dports/lang/llvm-devel/files/leopard-no-blocks.patch (0 => 151991)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/llvm-devel/files/leopard-no-blocks.patch                                (rev 0)
+++ trunk/dports/lang/llvm-devel/files/leopard-no-blocks.patch        2016-08-25 22:42:32 UTC (rev 151991)
</span><span class="lines">@@ -0,0 +1,26 @@
</span><ins>+From 2500edffc9f1f44983927351eb60d4fe1cee4bcd Mon Sep 17 00:00:00 2001
+From: Jeremy Huddleston Sequoia &lt;jeremyhu@apple.com&gt;
+Date: Wed, 7 Jan 2015 03:42:15 -0800
+Subject: [PATCH] Leopard: Default to -fno-blocks
+
+Signed-off-by: Jeremy Huddleston Sequoia &lt;jeremyhu@apple.com&gt;
+---
+ lib/Driver/ToolChains.h | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/lib/Driver/ToolChains.h b/lib/Driver/ToolChains.h
+index 876bb01..27aa2ee 100644
+--- a/tools/clang/lib/Driver/ToolChains.h
++++ b/tools/clang/lib/Driver/ToolChains.h
+@@ -257,7 +257,7 @@ public:
+   bool IsBlocksDefault() const override {
+     // Always allow blocks on Apple; users interested in versioning are
+     // expected to use /usr/include/Block.h.
+-    return true;
++    return false;
+   }
+   bool IsIntegratedAssemblerDefault() const override {
+     // Default integrated assembler to on for Apple's MachO targets.
+-- 
+2.2.1
+
</ins></span></pre></div>
<a id="trunkdportslangllvmdevelfilesllvmbin"></a>
<div class="addfile"><h4>Added: trunk/dports/lang/llvm-devel/files/llvm-bin (0 => 151991)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/llvm-devel/files/llvm-bin                                (rev 0)
+++ trunk/dports/lang/llvm-devel/files/llvm-bin        2016-08-25 22:42:32 UTC (rev 151991)
</span><span class="lines">@@ -0,0 +1,2 @@
</span><ins>+#!/bin/sh
+exec EXEC_PATH &quot;${@}&quot;
</ins><span class="cx">Property changes on: trunk/dports/lang/llvm-devel/files/llvm-bin
</span><span class="cx">___________________________________________________________________
</span></span></pre></div>
<a id="svnexecutable"></a>
<div class="addfile"><h4>Added: svn:executable</h4></div>
<a id="trunkdportslangllvmdevelfilesmpclangdevel"></a>
<div class="addfile"><h4>Added: trunk/dports/lang/llvm-devel/files/mp-clang-devel (0 => 151991)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/llvm-devel/files/mp-clang-devel                                (rev 0)
+++ trunk/dports/lang/llvm-devel/files/mp-clang-devel        2016-08-25 22:42:32 UTC (rev 151991)
</span><span class="lines">@@ -0,0 +1,34 @@
</span><ins>+bin/c-index-test-mp-devel
+bin/clang++-mp-devel
+bin/clang-mp-devel
+bin/clang-format-mp-devel
+-
+bin/scan-build-mp-devel
+bin/scan-view-mp-devel
+bin/clang-apply-replacements-mp-devel
+bin/clang-check-mp-devel
+bin/clang-cl-mp-devel
+-
+bin/clang-query-mp-devel
+bin/clang-rename-mp-devel
+bin/clang-tidy-mp-devel
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+
</ins></span></pre></div>
<a id="trunkdportslangllvmdevelfilesmpllvmdevel"></a>
<div class="addfile"><h4>Added: trunk/dports/lang/llvm-devel/files/mp-llvm-devel (0 => 151991)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/llvm-devel/files/mp-llvm-devel                                (rev 0)
+++ trunk/dports/lang/llvm-devel/files/mp-llvm-devel        2016-08-25 22:42:32 UTC (rev 151991)
</span><span class="lines">@@ -0,0 +1,60 @@
</span><ins>+bin/bugpoint-mp-devel
+bin/llc-mp-devel
+bin/lli-mp-devel
+bin/llvm-ar-mp-devel
+bin/llvm-as-mp-devel
+bin/llvm-bcanalyzer-mp-devel
+bin/llvm-config-mp-devel
+bin/llvm-cov-mp-devel
+bin/llvm-diff-mp-devel
+bin/llvm-dis-mp-devel
+bin/llvm-dwarfdump-mp-devel
+bin/llvm-extract-mp-devel
+-
+bin/llvm-link-mp-devel
+bin/llvm-mc-mp-devel
+bin/llvm-mcmarkup-mp-devel
+bin/llvm-nm-mp-devel
+bin/llvm-objdump-mp-devel
+-
+bin/llvm-ranlib-mp-devel
+bin/llvm-rtdyld-mp-devel
+bin/llvm-size-mp-devel
+-
+bin/llvm-stress-mp-devel
+bin/llvm-symbolizer-mp-devel
+bin/llvm-tblgen-mp-devel
+-
+-
+bin/opt-mp-devel
+bin/llvm-tblgen-mp-devel
+bin/llvm-readobj-mp-devel
+bin/llvm-profdata-mp-devel
+bin/llvm-dsymutil-mp-devel
+bin/llvm-cxxdump-mp-devel
+bin/llvm-pdbdump-mp-devel
+bin/llvm-c-test-mp-devel
+bin/llvm-dwp-mp-devel
+bin/llvm-lib-mp-devel
+bin/llvm-lto-mp-devel
+bin/llvm-split-mp-devel
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
+-
</ins></span></pre></div>
<a id="trunkdportslangllvmdevelfilesopenmplocationspatch"></a>
<div class="addfile"><h4>Added: trunk/dports/lang/llvm-devel/files/openmp-locations.patch (0 => 151991)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/dports/lang/llvm-devel/files/openmp-locations.patch                                (rev 0)
+++ trunk/dports/lang/llvm-devel/files/openmp-locations.patch        2016-08-25 22:42:32 UTC (rev 151991)
</span><span class="lines">@@ -0,0 +1,53 @@
</span><ins>+--- orig/tools/clang/lib/Driver/Tools.cpp        2015-09-03 11:39:15.000000000 -0500
++++ fixed/tools/clang/lib/Driver/Tools.cpp        2015-09-03 11:44:09.000000000 -0500
+@@ -2534,12 +2534,18 @@

+   switch (getOpenMPRuntime(getToolChain(), Args)) {
+   case OMPRT_OMP:
++    // Automatically find MacPorts' libomp
++    CmdArgs.push_back(&quot;-L@@PREFIX@@/lib/libomp&quot;);
+     CmdArgs.push_back(&quot;-lomp&quot;);
+     break;
+   case OMPRT_GOMP:
++    // Automatically find MacPorts' libgomp (libomp)
++    CmdArgs.push_back(&quot;-L@@PREFIX@@/lib/libomp&quot;);
+     CmdArgs.push_back(&quot;-lgomp&quot;);
+     break;
+   case OMPRT_IOMP5:
++    // Automatically find MacPorts' libiomp5 (libomp)
++    CmdArgs.push_back(&quot;-L@@PREFIX@@/lib/libomp&quot;);
+     CmdArgs.push_back(&quot;-liomp5&quot;);
+     break;
+   case OMPRT_Unknown:
+@@ -4285,6 +4291,8 @@
+     case OMPRT_OMP:
+     case OMPRT_IOMP5:
+       // Clang can generate useful OpenMP code for these two runtime libraries.
++      // Automatically find MacPorts' omp.h
++      CmdArgs.push_back(&quot;-I@@PREFIX@@/include/libomp&quot;);
+       CmdArgs.push_back(&quot;-fopenmp&quot;);

+       // If no option regarding the use of TLS in OpenMP codegeneration is
+@@ -8527,9 +8535,13 @@
+         // Also link the particular OpenMP runtimes.
+         switch (getOpenMPRuntime(ToolChain, Args)) {
+         case OMPRT_OMP:
++          // Automatically find MacPorts' libomp
++          CmdArgs.push_back(&quot;-L@@PREFIX@@/lib/libomp&quot;);
+           CmdArgs.push_back(&quot;-lomp&quot;);
+           break;
+         case OMPRT_GOMP:
++          // Automatically find MacPorts' libgomp (libomp)
++          CmdArgs.push_back(&quot;-L@@PREFIX@@/lib/libomp&quot;);
+           CmdArgs.push_back(&quot;-lgomp&quot;);

+           // FIXME: Exclude this for platforms with libgomp that don't require
+@@ -8537,6 +8549,8 @@
+           CmdArgs.push_back(&quot;-lrt&quot;);
+           break;
+         case OMPRT_IOMP5:
++          // Automatically find MacPorts' libiomp5 (libomp)
++          CmdArgs.push_back(&quot;-L@@PREFIX@@/lib/libomp&quot;);
+           CmdArgs.push_back(&quot;-liomp5&quot;);
+           break;
+         case OMPRT_Unknown:
</ins></span></pre>
</div>
</div>

</body>
</html>