<pre style='margin:0'>
Joshua Root (jmroot) pushed a commit to branch master
in repository macports-base.

</pre>
<p><a href="https://github.com/macports/macports-base/commit/2fafcefd752f326433e80636867be76775bb3531">https://github.com/macports/macports-base/commit/2fafcefd752f326433e80636867be76775bb3531</a></p>
<pre style="white-space: pre; background: #F8F8F8"><span style='display:block; white-space:pre;color:#808000;'>commit 2fafcefd752f326433e80636867be76775bb3531
</span>Author: Joshua Root <jmr@macports.org>
AuthorDate: Wed Mar 15 03:58:00 2023 +1100

<span style='display:block; white-space:pre;color:#404040;'>    build_getjobsarg improvements
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Only match against the actual command name in build.cmd, not the path
</span><span style='display:block; white-space:pre;color:#404040;'>    leading up to it or args being passed to it. Only pass an explicit -j1
</span><span style='display:block; white-space:pre;color:#404040;'>    when needed to prevent parallel build, i.e. with ninja.
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    Closes: https://trac.macports.org/ticket/67096
</span>---
 src/port1.0/portbuild.tcl | 11 ++++++-----
 1 file changed, 6 insertions(+), 5 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/src/port1.0/portbuild.tcl b/src/port1.0/portbuild.tcl
</span><span style='display:block; white-space:pre;color:#808080;'>index fb71601dd..87b3a8ed9 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/src/port1.0/portbuild.tcl
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/src/port1.0/portbuild.tcl
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -172,15 +172,16 @@ proc portbuild::build_getargs {args} {
</span> }
 
 proc portbuild::build_getjobsarg {args} {
<span style='display:block; white-space:pre;background:#e0ffe0;'>+    set cmdname [file tail [lindex [option build.cmd] 0]]
</span>     if {![exists build.jobs] || \
<span style='display:block; white-space:pre;background:#ffe0e0;'>-            !([string match "*make*" [option build.cmd]] || \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-              [string match "*ninja*" [option build.cmd]] || \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-              [string match "*scons*" [option build.cmd]])} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+            !([string match "*make" $cmdname] || \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+              "ninja" eq $cmdname || \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+              "scons" eq $cmdname)} {
</span>         return ""
     }
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span>     set jobs [option build.jobs]
<span style='display:block; white-space:pre;background:#ffe0e0;'>-    if {![string is integer -strict $jobs] || $jobs < 1} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    if {![string is integer -strict $jobs] || $jobs < 1 || ($cmdname ne "ninja" && $jobs < 2)} {
</span>         return ""
     }
     return " -j$jobs"
</pre><pre style='margin:0'>

</pre>