[140577] trunk/dports/lang
eborisch at macports.org
eborisch at macports.org
Wed Sep 23 19:38:52 PDT 2015
Revision: 140577
https://trac.macports.org/changeset/140577
Author: eborisch at macports.org
Date: 2015-09-23 19:38:52 -0700 (Wed, 23 Sep 2015)
Log Message:
-----------
llvm/clang-3.[78]: Update 3.7 to release; update 3.8 to latest SVN. Add +openmp variant (makes "clang-mp-3.[78] -fopenmp ..." work) to 3.7 and 3.8. See #48759.
Modified Paths:
--------------
trunk/dports/lang/llvm-3.7/Portfile
trunk/dports/lang/llvm-3.8/Portfile
Added Paths:
-----------
trunk/dports/lang/llvm-3.7/files/openmp-locations.patch
trunk/dports/lang/llvm-3.8/files/openmp-locations.patch
Modified: trunk/dports/lang/llvm-3.7/Portfile
===================================================================
--- trunk/dports/lang/llvm-3.7/Portfile 2015-09-24 01:18:36 UTC (rev 140576)
+++ trunk/dports/lang/llvm-3.7/Portfile 2015-09-24 02:38:52 UTC (rev 140577)
@@ -3,6 +3,7 @@
PortSystem 1.0
PortGroup select 1.0
PortGroup compiler_blacklist_versions 1.0
+PortGroup active_variants 1.1
set llvm_version 3.7
set llvm_version_no_dot 37
@@ -62,26 +63,25 @@
default_variants +analyzer
}
-fetch.type svn
-svn.revision 246024
+#fetch.type svn
+#svn.revision 246024
-set compiler_rt_rev ${svn.revision}
-set libcxx_rev ${svn.revision}
-set clang-modernize_rev ${svn.revision}
-version ${llvm_version}-r${svn.revision}
+#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
+#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
-#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
+version ${llvm_version}.0
+epoch 1
+master_sites http://llvm.org/releases/${version}
+use_xz yes
+distfiles llvm-${version}.src${extract.suffix}
+worksrcdir llvm-${version}.src
if {${distfiles} ne ""} {
if {${subport} eq "llvm-${llvm_version}"} {
@@ -93,6 +93,26 @@
}
}
+checksums \
+ llvm-3.7.0.src.tar.xz \
+ rmd160 1e47ce5e07df267a921c60e526673b2908ffb99b \
+ sha256 ab45895f9dcdad1e140a3a79fd709f64b05ad7364e308c0e582c5b02e9cc3153 \
+ cfe-3.7.0.src.tar.xz \
+ rmd160 b59a82dcc44d16f1152f5204584bbc47861d223e \
+ sha256 4ed740c5a91df1c90a4118c5154851d6a475f39a91346bdf268c1c29c13aa1cc \
+ compiler-rt-3.7.0.src.tar.xz \
+ rmd160 94cc920bce769e8b6234376ce8c517cdccd96e0c \
+ sha256 227fa998520bc94974a428dc8e7654d9bdf277e5bc70d4064ebc05691bd62b0b \
+ libcxx-3.7.0.src.tar.xz \
+ rmd160 d78a0948483ff593ab2c39dc5ca745b4d08e8620 \
+ sha256 c18f3c8333cd7e678c1424a57fe5e25efe740ca7caf62ac67152b4723f3ad08e \
+ clang-tools-extra-3.7.0.src.tar.xz \
+ rmd160 fda3871341bfbcfc28d8a368dd56ff8cf60b4987 \
+ sha256 8ae8a0a3a96b7a700412d67df0af172cb2fc1326beec575fcc0f71d2e72709cd \
+ polly-3.7.0.src.tar.xz \
+ rmd160 6c26e90141608c2c4e883faf36c74c35d3ee3d3e \
+ sha256 3e5f3f4dc141c7d25b36b910d48c7da74ecc92f10cea5b568c909623d6067edf
+
patch.pre_args -p1
patchfiles \
0001-Set-the-Mach-O-CPU-Subtype-to-ppc7400-when-targeting.patch \
@@ -326,6 +346,14 @@
destroot.args-append OVERRIDE_libdir=${sub_prefix}/lib
}
} elseif {${subport} eq "clang-${llvm_version}"} {
+ 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} {
depends_run-append port:perl5
@@ -360,7 +388,18 @@
}
}
+ variant openmp description {Use MacPorts' provided libomp with -fopenmp} {
+ configure.args-append \
+ --with-clang-default-openmp-runtime=libomp
+ depends_lib-append port:libomp
+ patchfiles-append openmp-locations.patch
+ post-patch {
+ reinplace "s|@@PREFIX@@|${prefix}|" \
+ ${worksrcpath}/tools/clang/lib/Driver/Tools.cpp
+ }
+ }
+
post-patch {
reinplace "s|@CLANG_FORMAT_PATH@|${prefix}/bin/clang-format-${suffix}|g" \
${worksrcpath}/tools/clang/tools/clang-format/clang-format-bbedit.applescript \
Added: trunk/dports/lang/llvm-3.7/files/openmp-locations.patch
===================================================================
--- trunk/dports/lang/llvm-3.7/files/openmp-locations.patch (rev 0)
+++ trunk/dports/lang/llvm-3.7/files/openmp-locations.patch 2015-09-24 02:38:52 UTC (rev 140577)
@@ -0,0 +1,53 @@
+--- 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
+@@ -4064,6 +4064,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("-I@@PREFIX@@/include/libomp");
+ CmdArgs.push_back("-fopenmp");
+
+ // If no option regarding the use of TLS in OpenMP codegeneration is
+@@ -6531,12 +6533,18 @@
+ options::OPT_fno_openmp, false)) {
+ switch (getOpenMPRuntime(getToolChain(), Args)) {
+ case OMPRT_OMP:
++ // Automatically find MacPorts' libomp
++ CmdArgs.push_back("-L@@PREFIX@@/lib/libomp");
+ CmdArgs.push_back("-lomp");
+ break;
+ case OMPRT_GOMP:
++ // Automatically find MacPorts' libgomp (libomp)
++ CmdArgs.push_back("-L@@PREFIX@@/lib/libomp");
+ CmdArgs.push_back("-lgomp");
+ break;
+ case OMPRT_IOMP5:
++ // Automatically find MacPorts' libiomp5 (libomp)
++ CmdArgs.push_back("-L@@PREFIX@@/lib/libomp");
+ CmdArgs.push_back("-liomp5");
+ break;
+ case OMPRT_Unknown:
+@@ -8248,9 +8256,13 @@
+ // Also link the particular OpenMP runtimes.
+ switch (getOpenMPRuntime(ToolChain, Args)) {
+ case OMPRT_OMP:
++ // Automatically find MacPorts' libomp
++ CmdArgs.push_back("-L@@PREFIX@@/lib/libomp");
+ CmdArgs.push_back("-lomp");
+ break;
+ case OMPRT_GOMP:
++ // Automatically find MacPorts' libgomp (libomp)
++ CmdArgs.push_back("-L@@PREFIX@@/lib/libomp");
+ CmdArgs.push_back("-lgomp");
+
+ // FIXME: Exclude this for platforms with libgomp that don't require
+@@ -8258,6 +8270,8 @@
+ CmdArgs.push_back("-lrt");
+ break;
+ case OMPRT_IOMP5:
++ // Automatically find MacPorts' libiomp5 (libomp)
++ CmdArgs.push_back("-L@@PREFIX@@/lib/libomp");
+ CmdArgs.push_back("-liomp5");
+ break;
+ case OMPRT_Unknown:
Modified: trunk/dports/lang/llvm-3.8/Portfile
===================================================================
--- trunk/dports/lang/llvm-3.8/Portfile 2015-09-24 01:18:36 UTC (rev 140576)
+++ trunk/dports/lang/llvm-3.8/Portfile 2015-09-24 02:38:52 UTC (rev 140577)
@@ -3,6 +3,7 @@
PortSystem 1.0
PortGroup select 1.0
PortGroup compiler_blacklist_versions 1.0
+PortGroup active_variants 1.1
set llvm_version 3.8
set llvm_version_no_dot 38
@@ -326,6 +327,14 @@
destroot.args-append OVERRIDE_libdir=${sub_prefix}/lib
}
} elseif {${subport} eq "clang-${llvm_version}"} {
+ 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} {
depends_run-append port:perl5
@@ -360,7 +369,18 @@
}
}
+ variant openmp description {Use MacPorts' provided libomp with -fopenmp} {
+ configure.args-append \
+ --with-clang-default-openmp-runtime=libomp
+ depends_lib-append port:libomp
+ patchfiles-append openmp-locations.patch
+ post-patch {
+ reinplace "s|@@PREFIX@@|${prefix}|" \
+ ${worksrcpath}/tools/clang/lib/Driver/Tools.cpp
+ }
+ }
+
post-patch {
reinplace "s|@CLANG_FORMAT_PATH@|${prefix}/bin/clang-format-${suffix}|g" \
${worksrcpath}/tools/clang/tools/clang-format/clang-format-bbedit.applescript \
Added: trunk/dports/lang/llvm-3.8/files/openmp-locations.patch
===================================================================
--- trunk/dports/lang/llvm-3.8/files/openmp-locations.patch (rev 0)
+++ trunk/dports/lang/llvm-3.8/files/openmp-locations.patch 2015-09-24 02:38:52 UTC (rev 140577)
@@ -0,0 +1,53 @@
+--- 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
+@@ -4064,6 +4064,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("-I@@PREFIX@@/include/libomp");
+ CmdArgs.push_back("-fopenmp");
+
+ // If no option regarding the use of TLS in OpenMP codegeneration is
+@@ -6531,12 +6533,18 @@
+ options::OPT_fno_openmp, false)) {
+ switch (getOpenMPRuntime(getToolChain(), Args)) {
+ case OMPRT_OMP:
++ // Automatically find MacPorts' libomp
++ CmdArgs.push_back("-L@@PREFIX@@/lib/libomp");
+ CmdArgs.push_back("-lomp");
+ break;
+ case OMPRT_GOMP:
++ // Automatically find MacPorts' libgomp (libomp)
++ CmdArgs.push_back("-L@@PREFIX@@/lib/libomp");
+ CmdArgs.push_back("-lgomp");
+ break;
+ case OMPRT_IOMP5:
++ // Automatically find MacPorts' libiomp5 (libomp)
++ CmdArgs.push_back("-L@@PREFIX@@/lib/libomp");
+ CmdArgs.push_back("-liomp5");
+ break;
+ case OMPRT_Unknown:
+@@ -8248,9 +8256,13 @@
+ // Also link the particular OpenMP runtimes.
+ switch (getOpenMPRuntime(ToolChain, Args)) {
+ case OMPRT_OMP:
++ // Automatically find MacPorts' libomp
++ CmdArgs.push_back("-L@@PREFIX@@/lib/libomp");
+ CmdArgs.push_back("-lomp");
+ break;
+ case OMPRT_GOMP:
++ // Automatically find MacPorts' libgomp (libomp)
++ CmdArgs.push_back("-L@@PREFIX@@/lib/libomp");
+ CmdArgs.push_back("-lgomp");
+
+ // FIXME: Exclude this for platforms with libgomp that don't require
+@@ -8258,6 +8270,8 @@
+ CmdArgs.push_back("-lrt");
+ break;
+ case OMPRT_IOMP5:
++ // Automatically find MacPorts' libiomp5 (libomp)
++ CmdArgs.push_back("-L@@PREFIX@@/lib/libomp");
+ CmdArgs.push_back("-liomp5");
+ break;
+ case OMPRT_Unknown:
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.macosforge.org/pipermail/macports-changes/attachments/20150923/77603bf2/attachment.html>
More information about the macports-changes
mailing list