<pre style='margin:0'>
Ken (kencu) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/43126c8ba9aba6281639424b9f3aa53ad74e6ef1">https://github.com/macports/macports-ports/commit/43126c8ba9aba6281639424b9f3aa53ad74e6ef1</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 43126c8ba9aba6281639424b9f3aa53ad74e6ef1
</span>Author: Ken Cunningham <kencu@macports.org>
AuthorDate: Sun Dec 23 22:28:56 2018 -0500
<span style='display:block; white-space:pre;color:#404040;'> libcxx: fix build with all clang versions
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> missing -nostdinc++ in libccabi buildit was responsible
</span><span style='display:block; white-space:pre;color:#404040;'> refactor patches for clarity
</span><span style='display:block; white-space:pre;color:#404040;'> update ppc blacklisting
</span>---
lang/libcxx/Portfile | 41 ++++++++++++----------
...it-script-to-read-EXTRA_LDFLAGS-from-the.patch} | 0
...PP_BUILDING_LIBRARY-during-build-to-supp.patch} | 0
...se-undefined-dynamic_lookup-when-linking.patch} | 0
.../0004-libcxxabi-buildit-add-nostdinc++.diff | 13 +++++++
...e-the-buildit-and-testit-scripts-they-ha.patch} | 0
...002-libcxx-buildit-build-fix-for-Leopard.patch} | 0
...compatibility-version-to-RC_ProjectSourc.patch} | 0
...-LIBCXXABI_PATH-for-path-to-build-time-l.patch} | 0
...CFLAGS-for-Leopard-and-Snow-Leopard-to-i.patch} | 0
...d-iterator-when-building-with-Lion-and-n.patch} | 0
...long-long-math-prototypes-when-using-the.patch} | 0
...omic-using-mutex-lock_guard-for-64b-ops-.patch} | 0
13 files changed, 36 insertions(+), 18 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/libcxx/Portfile b/lang/libcxx/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 70a4590..bb34c80 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/lang/libcxx/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/libcxx/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -75,22 +75,18 @@ if {${os.major} < 11 || [variant_isset replacemnt_libcxx]} {
</span> compiler.blacklist *gcc* {clang < 500}
# clang 3.5 and newer are conditionally blacklisted to prevent dependency cycles
<span style='display:block; white-space:pre;background:#ffe0e0;'>- foreach ver {3.5 3.6 3.7 3.8 3.9 4.0 5.0 devel} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ foreach ver {3.5 3.6 3.7 3.8 3.9 4.0 5.0 6.0 7.0 devel} {
</span> if {![file exists ${prefix}/bin/clang-mp-${ver}]} {
compiler.blacklist-append macports-clang-${ver}
}
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>- # clang 3.8 and newer are blacklisted due to a build failure in stdlib.h that needs to ne triaged
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- foreach ver {3.8 3.9 4.0 5.0 devel} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- compiler.blacklist-append macports-clang-${ver}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> supported_archs i386 x86_64 ppc
if {[variant_isset universal] && [lsearch ${universal_archs} ppc] != -1} {
# http://trac.macports.org/wiki/LibcxxOnOlderSystems#Leopardppc
<span style='display:block; white-space:pre;background:#ffe0e0;'>- compiler.whitelist macports-clang-3.7 macports-clang-3.6
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # older clang compilers produce unreliable ppc code
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ compiler.blacklist-append macports-clang-3.4 macports-clang-3.5 macports-clang-3.6
</span> }
post-extract {
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -108,18 +104,27 @@ if {${os.major} < 11 || [variant_isset replacemnt_libcxx]} {
</span>
patch.dir ${workpath}
patch.pre_args -p0
<span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # patches for libc++abi buildit
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patchfiles-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 0001-libcxxabi-Update-buildit-script-to-read-EXTRA_LDFLAGS-from-the.patch \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 0002-libcxxabi-Define-_LIBCPP_BUILDING_LIBRARY-during-build-to-supp.patch \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 0003-libcxxabi-buildit-Use-undefined-dynamic_lookup-when-linking.patch \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 0004-libcxxabi-buildit-add-nostdinc++.diff
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # restore libc++ buildit and patches for libc++ buildit
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ patchfiles-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1001-Revert-Remove-the-buildit-and-testit-scripts-they-ha.patch \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1002-libcxx-buildit-build-fix-for-Leopard.patch \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1003-libcxx-buildit-Set-compatibility-version-to-RC_ProjectSourc.patch \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1004-libcxx-MacPorts-Use-LIBCXXABI_PATH-for-path-to-build-time-l.patch \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1005-libcxx-buildit-Fix-CFLAGS-for-Leopard-and-Snow-Leopard-to-i.patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # patches for libc++ include files
</span> patchfiles-append \
<span style='display:block; white-space:pre;background:#ffe0e0;'>- 0001-Update-buildit-script-to-read-EXTRA_LDFLAGS-from-the.patch \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 0002-Define-_LIBCPP_BUILDING_LIBRARY-during-build-to-supp.patch \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 0003-buildit-Use-undefined-dynamic_lookup-when-linking.patch \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 3001-Fix-local-and-iterator-when-building-with-Lion-and-n.patch \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 3002-Fix-missing-long-long-math-prototypes-when-using-the.patch \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 3003-implement-atomic-using-mutex-lock_guard-for-64b-ops-.patch \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 3004-Revert-Remove-the-buildit-and-testit-scripts-they-ha.patch \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 3005-buildit-build-fix-for-Leopard.patch \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 3006-buildit-Set-compatibility-version-to-RC_ProjectSourc.patch \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 3007-MacPorts-Use-LIBCXXABI_PATH-for-path-to-build-time-l.patch \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- 3008-buildit-Fix-CFLAGS-for-Leopard-and-Snow-Leopard-to-i.patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 2001-Fix-local-and-iterator-when-building-with-Lion-and-n.patch \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 2002-Fix-missing-long-long-math-prototypes-when-using-the.patch \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 2003-implement-atomic-using-mutex-lock_guard-for-64b-ops-.patch
</span>
post-patch {
system "chmod 755 ${libcxx_worksrcpath}/lib/buildit"
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/libcxx/files/0001-Update-buildit-script-to-read-EXTRA_LDFLAGS-from-the.patch b/lang/libcxx/files/0001-libcxxabi-Update-buildit-script-to-read-EXTRA_LDFLAGS-from-the.patch
</span>similarity index 100%
rename from lang/libcxx/files/0001-Update-buildit-script-to-read-EXTRA_LDFLAGS-from-the.patch
rename to lang/libcxx/files/0001-libcxxabi-Update-buildit-script-to-read-EXTRA_LDFLAGS-from-the.patch
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/libcxx/files/0002-Define-_LIBCPP_BUILDING_LIBRARY-during-build-to-supp.patch b/lang/libcxx/files/0002-libcxxabi-Define-_LIBCPP_BUILDING_LIBRARY-during-build-to-supp.patch
</span>similarity index 100%
rename from lang/libcxx/files/0002-Define-_LIBCPP_BUILDING_LIBRARY-during-build-to-supp.patch
rename to lang/libcxx/files/0002-libcxxabi-Define-_LIBCPP_BUILDING_LIBRARY-during-build-to-supp.patch
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/libcxx/files/0003-buildit-Use-undefined-dynamic_lookup-when-linking.patch b/lang/libcxx/files/0003-libcxxabi-buildit-Use-undefined-dynamic_lookup-when-linking.patch
</span>similarity index 100%
rename from lang/libcxx/files/0003-buildit-Use-undefined-dynamic_lookup-when-linking.patch
rename to lang/libcxx/files/0003-libcxxabi-buildit-Use-undefined-dynamic_lookup-when-linking.patch
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/libcxx/files/0004-libcxxabi-buildit-add-nostdinc++.diff b/lang/libcxx/files/0004-libcxxabi-buildit-add-nostdinc++.diff
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 0000000..4ec33b5
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/lang/libcxx/files/0004-libcxxabi-buildit-add-nostdinc++.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,13 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git libcxxabi-5.0.1.src/lib/buildit.old libcxxabi-5.0.1.src/lib/buildit
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index d03e0e6..3690482 100755
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- libcxxabi-5.0.1.src/lib/buildit.old
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ libcxxabi-5.0.1.src/lib/buildit
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -27,7 +27,7 @@ then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ RC_ProjectSourceVersion=1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-EXTRA_FLAGS="-std=c++11 -stdlib=libc++ -fstrict-aliasing -Wstrict-aliasing=2 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++EXTRA_FLAGS="-std=c++11 -stdlib=libc++ -nostdinc++ -fstrict-aliasing -Wstrict-aliasing=2 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -Wsign-conversion -Wshadow -Wconversion -Wunused-variable \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -Wmissing-field-initializers -Wchar-subscripts -Wmismatched-tags \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ -Wmissing-braces -Wshorten-64-to-32 -Wsign-compare \
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/libcxx/files/3004-Revert-Remove-the-buildit-and-testit-scripts-they-ha.patch b/lang/libcxx/files/1001-Revert-Remove-the-buildit-and-testit-scripts-they-ha.patch
</span>similarity index 100%
rename from lang/libcxx/files/3004-Revert-Remove-the-buildit-and-testit-scripts-they-ha.patch
rename to lang/libcxx/files/1001-Revert-Remove-the-buildit-and-testit-scripts-they-ha.patch
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/libcxx/files/3005-buildit-build-fix-for-Leopard.patch b/lang/libcxx/files/1002-libcxx-buildit-build-fix-for-Leopard.patch
</span>similarity index 100%
rename from lang/libcxx/files/3005-buildit-build-fix-for-Leopard.patch
rename to lang/libcxx/files/1002-libcxx-buildit-build-fix-for-Leopard.patch
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/libcxx/files/3006-buildit-Set-compatibility-version-to-RC_ProjectSourc.patch b/lang/libcxx/files/1003-libcxx-buildit-Set-compatibility-version-to-RC_ProjectSourc.patch
</span>similarity index 100%
rename from lang/libcxx/files/3006-buildit-Set-compatibility-version-to-RC_ProjectSourc.patch
rename to lang/libcxx/files/1003-libcxx-buildit-Set-compatibility-version-to-RC_ProjectSourc.patch
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/libcxx/files/3007-MacPorts-Use-LIBCXXABI_PATH-for-path-to-build-time-l.patch b/lang/libcxx/files/1004-libcxx-MacPorts-Use-LIBCXXABI_PATH-for-path-to-build-time-l.patch
</span>similarity index 100%
rename from lang/libcxx/files/3007-MacPorts-Use-LIBCXXABI_PATH-for-path-to-build-time-l.patch
rename to lang/libcxx/files/1004-libcxx-MacPorts-Use-LIBCXXABI_PATH-for-path-to-build-time-l.patch
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/libcxx/files/3008-buildit-Fix-CFLAGS-for-Leopard-and-Snow-Leopard-to-i.patch b/lang/libcxx/files/1005-libcxx-buildit-Fix-CFLAGS-for-Leopard-and-Snow-Leopard-to-i.patch
</span>similarity index 100%
rename from lang/libcxx/files/3008-buildit-Fix-CFLAGS-for-Leopard-and-Snow-Leopard-to-i.patch
rename to lang/libcxx/files/1005-libcxx-buildit-Fix-CFLAGS-for-Leopard-and-Snow-Leopard-to-i.patch
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/libcxx/files/3001-Fix-local-and-iterator-when-building-with-Lion-and-n.patch b/lang/libcxx/files/2001-Fix-local-and-iterator-when-building-with-Lion-and-n.patch
</span>similarity index 100%
rename from lang/libcxx/files/3001-Fix-local-and-iterator-when-building-with-Lion-and-n.patch
rename to lang/libcxx/files/2001-Fix-local-and-iterator-when-building-with-Lion-and-n.patch
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/libcxx/files/3002-Fix-missing-long-long-math-prototypes-when-using-the.patch b/lang/libcxx/files/2002-Fix-missing-long-long-math-prototypes-when-using-the.patch
</span>similarity index 100%
rename from lang/libcxx/files/3002-Fix-missing-long-long-math-prototypes-when-using-the.patch
rename to lang/libcxx/files/2002-Fix-missing-long-long-math-prototypes-when-using-the.patch
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/lang/libcxx/files/3003-implement-atomic-using-mutex-lock_guard-for-64b-ops-.patch b/lang/libcxx/files/2003-implement-atomic-using-mutex-lock_guard-for-64b-ops-.patch
</span>similarity index 100%
rename from lang/libcxx/files/3003-implement-atomic-using-mutex-lock_guard-for-64b-ops-.patch
rename to lang/libcxx/files/2003-implement-atomic-using-mutex-lock_guard-for-64b-ops-.patch
</pre><pre style='margin:0'>
</pre>