<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>