<pre style='margin:0'>
Sean Farley (seanfarley) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/e4b7cef1fd26bb17abd0434670fa16884cd21513">https://github.com/macports/macports-ports/commit/e4b7cef1fd26bb17abd0434670fa16884cd21513</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit e4b7cef1fd26bb17abd0434670fa16884cd21513
</span>Author: Sean Farley <sean@macports.org>
AuthorDate: Sun Mar 25 15:02:48 2018 -0700
<span style='display:block; white-space:pre;color:#404040;'> compilers portgroup: remove dragonegg and llvm variants
</span><span style='display:block; white-space:pre;color:#404040;'>
</span><span style='display:block; white-space:pre;color:#404040;'> The llvm compiler has been blacklisted for a very long time now. Dragonegg
</span><span style='display:block; white-space:pre;color:#404040;'> compilers have been broken for years.
</span>---
_resources/port1.0/group/compilers-1.0.tcl | 76 ++++++------------------------
1 file changed, 14 insertions(+), 62 deletions(-)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/_resources/port1.0/group/compilers-1.0.tcl b/_resources/port1.0/group/compilers-1.0.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index 0ee293e..ae9fcad 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/_resources/port1.0/group/compilers-1.0.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/_resources/port1.0/group/compilers-1.0.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -47,8 +47,8 @@
</span> # Add specified variants to the conflicts list of all variants created by this PortGroup.
# Useful if another compiler variant is created explicitly in the Portfile. Must come before compilers.setup.
# compilers.setup {args}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# Possible arguments: any compiler variant name with a minus removes it from the list of variants, e.g. -llvm.
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# -gcc, -dragonegg, -clang remove all compilers of that category. -fortran removes gfortran and g95.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Possible arguments: any compiler variant name with a minus removes it from the list of variants, e.g. -clang.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# -gcc, -clang remove all compilers of that category. -fortran removes gfortran and g95.
</span> # Blacklisted compilers are automatically removed, as are ones that do not support the compilers in compilers.choose:
# e.g. if choose is just f90, clang variants will not be added.
# List "default_fortran" to make a Fortran variant be selected by default.
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -85,7 +85,6 @@ default compilers.variants {}
</span> default compilers.fortran_variants {}
default compilers.gcc_variants {}
default compilers.clang_variants {}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-default compilers.dragonegg_variants {}
</span> default compilers.require_fortran 0
default compilers.default_fortran 0
default compilers.setup_done 0
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -166,46 +165,7 @@ foreach v ${clang_versions} {
</span> set cdb(clang$v,f90) ""
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>-# dragonegg versions match the corresponding clang version until 3.5
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set dragonegg_versions {3 4}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-foreach v ${dragonegg_versions} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- lappend compilers.dragonegg_variants dragonegg3$v
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set cdb(dragonegg3$v,variant) dragonegg3$v
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set cdb(dragonegg3$v,compiler) macports-dragonegg-3.$v
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set cdb(dragonegg3$v,descrip) "MacPorts dragonegg 3.$v"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set cdb(dragonegg3$v,depends) path:bin/dragonegg-3.$v-gcc:dragonegg-3.$v
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set cdb(dragonegg3$v,dependsl) path:lib/libgcc/libgcc_s.1.dylib:libgcc
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set cdb(dragonegg3$v,libfortran) ${prefix}/lib/gcc46/libgfortran.dylib
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set cdb(dragonegg3$v,dependsd) port:g95
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set cdb(dragonegg3$v,dependsa) dragonegg-3.$v
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set cdb(dragonegg3$v,conflict) "gfortran g95"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set cdb(dragonegg3$v,cc) ${prefix}/bin/dragonegg-3.$v-gcc
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set cdb(dragonegg3$v,cxx) ${prefix}/bin/dragonegg-3.$v-g++
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set cdb(dragonegg3$v,cpp) ${prefix}/bin/dragonegg-3.$v-cpp
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set cdb(dragonegg3$v,objc) ""
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set cdb(dragonegg3$v,fc) ${prefix}/bin/dragonegg-3.$v-gfortran
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set cdb(dragonegg3$v,f77) ${prefix}/bin/dragonegg-3.$v-gfortran
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set cdb(dragonegg3$v,f90) ${prefix}/bin/dragonegg-3.$v-gfortran
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-}
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set cdb(llvm,variant) llvm
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set cdb(llvm,compiler) llvm-gcc-4.2
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set cdb(llvm,descrip) "Apple native llvm-gcc 4.2"
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set cdb(llvm,depends) bin:llvm-gcc-4.2:llvm-gcc42
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set cdb(llvm,dependsl) ""
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set cdb(llvm,libfortran) ""
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set cdb(llvm,dependsd) ""
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set cdb(llvm,dependsa) ""
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set cdb(llvm,conflict) ""
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set cdb(llvm,cc) llvm-gcc-4.2
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set cdb(llvm,cxx) llvm-g++-4.2
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set cdb(llvm,cpp) llvm-cpp-4.2
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set cdb(llvm,objc) llvm-gcc-4.2
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set cdb(llvm,fc) ""
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set cdb(llvm,f77) ""
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-set cdb(llvm,f90) ""
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-# and lastly we add a gfortran and g95 variant for use with clang* and llvm; note that
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# and lastly we add a gfortran and g95 variant for use with clang*; note that
</span> # we don't need gfortran when we are in an "only-fortran" mode
set cdb(gfortran,variant) gfortran
set cdb(gfortran,compiler) gfortran
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -259,7 +219,7 @@ proc compilers.set_variants_conflict {args} {
</span>
proc compilers.setup_variants {args} {
global cdb compilers.variants compilers.clang_variants compilers.gcc_variants
<span style='display:block; white-space:pre;background:#ffe0e0;'>- global compilers.dragonegg_variants compilers.fortran_variants compilers.list
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ global compilers.fortran_variants compilers.list
</span> global compilers.variants_conflict
global compilers.clear_archflags
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -275,13 +235,13 @@ proc compilers.setup_variants {args} {
</span> set c [lreplace ${compilers.variants} $i $i]
# Fortran compilers do not conflict with C compilers.
<span style='display:block; white-space:pre;background:#ffe0e0;'>- # thus, llvm and clang do not conflict with g95 and gfortran
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # thus clang does not conflict with g95 and gfortran
</span> if {$variant eq "gfortran" || $variant eq "g95"} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- foreach clangcomp [concat ${compilers.clang_variants} {llvm}] {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ foreach clangcomp ${compilers.clang_variants} {
</span> set i [lsearch -exact $c $clangcomp]
set c [lreplace $c $i $i]
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>- } elseif {[string match clang* $variant] || $variant == "llvm"} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } elseif {[string match clang* $variant]} {
</span> set i [lsearch -exact $c gfortran]
set c [lreplace $c $i $i]
set i [lsearch -exact $c g95]
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -296,6 +256,8 @@ proc compilers.setup_variants {args} {
</span> }
}
<span style='display:block; white-space:pre;background:#e0ffe0;'>+ # TODO: all the compilers are in portconfigure now, so see if below
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # is even needed now;
</span> # for each compiler, set the value if not empty; we can't use
# configure.compiler because of dragonegg and possibly other new
# compilers that aren't in macports portconfigure.tcl
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -414,7 +376,7 @@ proc fortran_variant_name {} {
</span> }
proc clang_variant_name {} {
<span style='display:block; white-space:pre;background:#ffe0e0;'>- global compilers.clang_variants compilers.dragonegg_variants variations
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ global compilers.clang_variants variations
</span>
foreach c ${compilers.clang_variants} {
# we need to check the default_variants so we can't use variant_isset
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -423,13 +385,6 @@ proc clang_variant_name {} {
</span> }
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>- foreach c ${compilers.dragonegg_variants} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # we need to check the default_variants so we can't use variant_isset
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- if {[info exists variations($c)] && $variations($c) eq "+"} {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- return $c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span> return ""
}
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -607,7 +562,7 @@ proc compilers.action_enforce_some_f {args} {
</span>
proc compilers.setup {args} {
global cdb compilers.variants compilers.clang_variants compilers.gcc_variants
<span style='display:block; white-space:pre;background:#ffe0e0;'>- global compilers.dragonegg_variants compilers.fortran_variants
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ global compilers.fortran_variants
</span> global compilers.require_fortran compilers.default_fortran compilers.setup_done compilers.list
global compilers.gcc_default
global compiler.blacklist
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -616,9 +571,9 @@ proc compilers.setup {args} {
</span> set add_list {}
set remove_list ${compilers.variants}
<span style='display:block; white-space:pre;background:#ffe0e0;'>- # if we are only setting fortran compilers, then we are in "only fortran
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # mode", i.e. we just need +gccXY and +dragoneggXY for the fortran
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- # compilers so we remove +clangXY and +llvm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # if we are only setting fortran compilers, then we are in "only
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # fortran mode", i.e. we just need +gccXY for the fortran compilers so
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # we remove +clangXY
</span> if {[compilers.is_fortran_only]} {
# remove gfortran since that only exists to "complete" clang/llvm
set remove_list [remove_from_list ${compilers.fortran_variants} gfortran]
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -643,9 +598,6 @@ proc compilers.setup {args} {
</span> gcc {
set ${mode}_list [${mode}_from_list [expr $${mode}_list] ${compilers.gcc_variants}]
}
<span style='display:block; white-space:pre;background:#ffe0e0;'>- dragonegg {
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- set ${mode}_list [${mode}_from_list [expr $${mode}_list] ${compilers.dragonegg_variants}]
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>- }
</span> fortran {
# here we just check gfortran and g95, not every fortran
# compatible variant since it makes more sense to specify
</pre><pre style='margin:0'>
</pre>