<pre style='margin:0'>
Ryan Carsten Schmidt (ryandesign) pushed a commit to branch master
in repository macports-ports.

</pre>
<p><a href="https://github.com/macports/macports-ports/commit/696d264ad3cad9840f9be88687db560475f10d82">https://github.com/macports/macports-ports/commit/696d264ad3cad9840f9be88687db560475f10d82</a></p>
<pre style="white-space: pre; background: #F8F8F8">The following commit(s) were added to refs/heads/master by this push:
<span style='display:block; white-space:pre;color:#404040;'>     new 696d264ad3c bmake: Fix universal and non-default-arch builds
</span>696d264ad3c is described below

<span style='display:block; white-space:pre;color:#808000;'>commit 696d264ad3cad9840f9be88687db560475f10d82
</span>Author: Ryan Carsten Schmidt <ryandesign@macports.org>
AuthorDate: Fri Apr 26 03:35:45 2024 -0500

<span style='display:block; white-space:pre;color:#404040;'>    bmake: Fix universal and non-default-arch builds
</span><span style='display:block; white-space:pre;color:#404040;'>    
</span><span style='display:block; white-space:pre;color:#404040;'>    See: https://trac.macports.org/ticket/67425
</span>---
 devel/bmake/Portfile               | 37 +++++++++++++++++++++++++++++++------
 devel/bmake/files/boot-strap.patch | 19 +++++++++++++++++++
 2 files changed, 50 insertions(+), 6 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/bmake/Portfile b/devel/bmake/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index ac182497c35..26b28ffbed1 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/bmake/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/bmake/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,6 +1,7 @@
</span> # -*- coding: utf-8; mode: tcl; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- vim:fenc=utf-8:ft=tcl:et:sw=4:ts=4:sts=4
 
 PortSystem          1.0
<span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup           muniversal 1.1
</span> 
 name                bmake
 version             20240414
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -21,18 +22,42 @@ long_description    bmake is the portable version of NetBSD make.
</span> 
 worksrcdir          ${name}
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.cmd       ./boot-strap
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-configure.args-append \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    op=configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles          boot-strap.patch
</span> 
<span style='display:block; white-space:pre;background:#e0ffe0;'>+# https://trac.macports.org/wiki/WimplicitFunctionDeclaration#strchr
</span> configure.checks.implicit_function_declaration.whitelist-append strchr
 
<span style='display:block; white-space:pre;background:#ffe0e0;'>-build.cmd           ./boot-strap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# No idea what the legal values are or how these are used. These values should
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# more or less match the defaults except that I haven't checked ppc64.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.args.arm64    --with-machine=arm64    --with-machine_arch=arm
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.args.i386     --with-machine=i386     --with-machine_arch=i386
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.args.ppc      --with-machine=powerpc  --with-machine_arch=powerpc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.args.ppc64    --with-machine=powerpc  --with-machine_arch=powerpc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.args.x86_64   --with-machine=x86_64   --with-machine_arch=i386
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.cmd       ./boot-strap
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.post_args op=configure
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.args      --objdir build \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    --without-makefile
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+build.cmd           ${configure.cmd}
</span> build.target        op=build
<span style='display:block; white-space:pre;background:#e0ffe0;'>+build.args          {*}${configure.pre_args} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    {*}${configure.args}
</span> 
 destroot.target     op=install
<span style='display:block; white-space:pre;background:#ffe0e0;'>-destroot.args-append \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    --prefix=${prefix}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+destroot.args       {*}${configure.pre_args} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    {*}${configure.args}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {[variant_isset universal]} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+    destroot.args-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    BMAKE=[muniversal::get_arch_dir ${build.dir} ${configure.build_arch}]/build/bmake
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Tests are already run after the build but you can also run them separately.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+test.target         op=test
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+test.args           {*}${configure.pre_args} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    {*}${configure.args}
</span> 
 livecheck.type      regex
 livecheck.url       ${master_sites}
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/bmake/files/boot-strap.patch b/devel/bmake/files/boot-strap.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..9f134208704
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/bmake/files/boot-strap.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,19 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Don't consider it an error if testing fails because bmake is not executable.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+This would happen if compiling for an architecture we can't run.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- boot-strap.orig        2024-03-10 12:51:10.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ boot-strap     2024-04-26 02:29:26.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -446,7 +446,13 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   test) ;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   *) is_newer bmake tested || return;;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   esac
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-  Bmake test TEST_MAKE=$objdir/bmake "$@" || exit 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  Bmake test TEST_MAKE=$objdir/bmake "$@"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  result="$?"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  if [ "$result" -eq 126 ]; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          echo "WARNING: skipping tests because bmake is not executable, presumably because of cross compilation"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  elif [ "$result" -ne 0 ]; then
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++          exit 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++  fi
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+   touch tested
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span></pre><pre style='margin:0'>

</pre>