<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/a52dd80ea781f86f683826d9d2924d8838c5a775">https://github.com/macports/macports-ports/commit/a52dd80ea781f86f683826d9d2924d8838c5a775</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 a52dd80ea78 ninja: Update to 1.12.1
</span>a52dd80ea78 is described below

<span style='display:block; white-space:pre;color:#808000;'>commit a52dd80ea781f86f683826d9d2924d8838c5a775
</span>Author: Ryan Carsten Schmidt <ryandesign@macports.org>
AuthorDate: Fri May 17 01:06:23 2024 -0500

<span style='display:block; white-space:pre;color:#404040;'>    ninja: Update to 1.12.1
</span>---
 devel/ninja/Portfile                               |  23 ++++-
 .../files/patch-configure.py-bootstrap-only.diff   |   6 +-
 .../files/patch-ninja-configure.py-remove-mmd.diff |   6 +-
 devel/ninja/files/tests.patch                      | 101 +++++++++++++++++++++
 4 files changed, 125 insertions(+), 11 deletions(-)

<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/ninja/Portfile b/devel/ninja/Portfile
</span><span style='display:block; white-space:pre;color:#808080;'>index 15d563d8186..ce52832a918 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/ninja/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/ninja/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -4,12 +4,11 @@ PortSystem          1.0
</span> PortGroup           github 1.0
 
 epoch               1
<span style='display:block; white-space:pre;background:#ffe0e0;'>-github.setup        ninja-build ninja 1.12.0 v
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+github.setup        ninja-build ninja 1.12.1 v
</span> revision            0
<span style='display:block; white-space:pre;background:#ffe0e0;'>-
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-checksums           rmd160  ec9d91ea727da87f1178226ccf42645d10d05d45 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    sha256  8b2c86cd483dc7fcb7975c5ec7329135d210099a89bc7db0590a07b0bbfe49a5 \
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-                    size    240291
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums           rmd160  edb99cb67641947a6cdde89300a326de69df77f4 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  821bdff48a3f683bc4bb3b6f0b5fe7b2d647cf65d52aeb63328c91a6c6df285a \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    240483
</span> 
 categories          devel
 maintainers         {ryandesign @ryandesign} openmaintainer
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -34,11 +33,24 @@ long_description    Ninja is yet another build system. It takes as input    \
</span> 
 homepage            https://ninja-build.org
 github.tarball_from archive
<span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums-prepend   ${distfiles}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set gtest_version   1.14.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set gtest_distname  googletest-${gtest_version}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set gtest_distfile  ${gtest_distname}${extract.suffix}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+master_sites        ${master_sites}:main \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    https://github.com/google/googletest/archive/v${gtest_version}:gtest
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+distfiles           ${distfiles}:main \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    ${gtest_distfile}:gtest
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums-append    ${gtest_distfile} \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    rmd160  54f7bd68b80152528dfc13d9291b247c0353c2a4 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    sha256  8ad598c73ad796e0d8280b082cebd82a630d73e73cd3c70057938a6501bba5d7 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                    size    867764
</span> 
 installs_libs       no
 
 patchfiles          patch-configure.py-bootstrap-only.diff \
                     patch-ninja-configure.py-remove-mmd.diff
<span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles-append   tests.patch
</span> 
 depends_build-append \
                     port:re2c
<span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -58,6 +70,7 @@ configure.pre_args  configure.py
</span> default configure.args \
                     {--with-python=${configure.python}}
 configure.post_args --bootstrap \
<span style='display:block; white-space:pre;background:#e0ffe0;'>+                    --gtest-source-dir=${workpath}/${gtest_distname} \
</span>                     --verbose
 configure.universal_args
 
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/ninja/files/patch-configure.py-bootstrap-only.diff b/devel/ninja/files/patch-configure.py-bootstrap-only.diff
</span><span style='display:block; white-space:pre;color:#808080;'>index 024612309d2..839eb20465e 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/ninja/files/patch-configure.py-bootstrap-only.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/ninja/files/patch-configure.py-bootstrap-only.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,7 +1,7 @@
</span> When running ./configure.py --bootstrap, do not automatically run ./ninja
<span style='display:block; white-space:pre;background:#ffe0e0;'>---- configure.py.orig   2022-05-15 10:08:10.000000000 -0500
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ configure.py   2022-05-18 04:18:56.000000000 -0500
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -693,28 +693,3 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- configure.py.orig      2024-05-11 06:43:36.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ configure.py   2024-05-17 00:15:59.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -675,28 +675,3 @@
</span>  n.close()
  print('wrote %s.' % BUILD_FILENAME)
  
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/ninja/files/patch-ninja-configure.py-remove-mmd.diff b/devel/ninja/files/patch-ninja-configure.py-remove-mmd.diff
</span><span style='display:block; white-space:pre;color:#808080;'>index ebcd5a65904..9cee8244058 100644
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>--- a/devel/ninja/files/patch-ninja-configure.py-remove-mmd.diff
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/ninja/files/patch-ninja-configure.py-remove-mmd.diff
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -1,6 +1,6 @@
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>---- configure.py.orig      2021-02-13 23:21:58.000000000 -0800
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-+++ configure.py   2021-02-13 23:22:17.000000000 -0800
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>-@@ -425,7 +425,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- configure.py.orig      2024-05-17 00:15:14.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ configure.py   2024-05-17 00:15:14.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -435,7 +435,7 @@
</span>      )
  else:
      n.rule('cxx',
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/ninja/files/tests.patch b/devel/ninja/files/tests.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..94c1275ea8e
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/ninja/files/tests.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,101 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Allow the tests to be run using the Python-based configure.py build system.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://github.com/ninja-build/ninja/issues/2447
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+https://github.com/ninja-build/ninja/pull/2448
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- configure.py.orig      2024-05-17 01:04:17.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ configure.py   2024-05-17 01:04:17.000000000 -0500
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -213,7 +213,10 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ parser.add_option('--profile', metavar='TYPE',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   choices=profilers,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   help='enable profiling (' + '/'.join(profilers) + ')',)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-parser.add_option('--with-gtest', metavar='PATH', help='ignored')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++parser.add_option('--gtest-source-dir', metavar='PATH',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                  help='Path to GoogleTest source directory. If not provided ' +
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                       'GTEST_SOURCE_DIR will be probed in the environment. ' +
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                       'Tests will not be built without a value.')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ parser.add_option('--with-python', metavar='EXE',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   help='use EXE as the Python interpreter',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+                   default=os.path.basename(sys.executable))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -582,6 +585,83 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     # build.ninja file.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+     n = ninja_writer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Build the ninja_test executable only if the GTest source directory
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# is provided explicitly. Either from the environment with GTEST_SOURCE_DIR
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# or with the --gtest-source-dir command-line option.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# Do not try to look for an installed binary version, and link against it
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# because doing so properly is platform-specific (use the CMake build for
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++# this).
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if options.gtest_source_dir:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    gtest_src_dir = options.gtest_source_dir
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++else:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    gtest_src_dir = os.environ.get('GTEST_SOURCE_DIR')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++if gtest_src_dir:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # Verify GoogleTest source directory, and add its include directory
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # to the global include search path (even for non-test sources) to
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # keep the build plan generation simple.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    gtest_all_cc = os.path.join(gtest_src_dir, 'googletest', 'src', 'gtest-all.cc')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if not os.path.exists(gtest_all_cc):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        print('ERROR: Missing GoogleTest source file: %s' % gtest_all_cc)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        sys.exit(1)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    n.comment('Tests all build into ninja_test executable.')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # Test-specific version of cflags, must include the GoogleTest
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # include directory. Also GoogleTest can only build with a C++14 compiler.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    test_cflags = [f.replace('std=c++11', 'std=c++14') for f in cflags]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    test_cflags.append('-I' + os.path.join(gtest_src_dir, 'googletest', 'include'))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    test_variables = [('cflags', test_cflags)]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if platform.is_msvc():
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        test_variables += [('pdb', 'ninja_test.pdb')]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    test_names = [
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        'build_log_test',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        'build_test',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        'clean_test',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        'clparser_test',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        'depfile_parser_test',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        'deps_log_test',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        'disk_interface_test',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        'dyndep_parser_test',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        'edit_distance_test',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        'graph_test',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        'json_test',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        'lexer_test',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        'manifest_parser_test',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        'ninja_test',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        'state_test',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        'string_piece_util_test',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        'subprocess_test',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        'test',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        'util_test',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    ]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    if platform.is_windows():
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        test_names += [
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            'includes_normalize_test',
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++            'msvc_helper_test',
</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;'>++    objs = []
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    for name in test_names:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++        objs += cxx(name, variables=test_variables)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # Build GTest as a monolithic source file.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # This requires one extra include search path, so replace the
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # value of 'cflags' in our list.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    gtest_all_variables = test_variables[1:] + [
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++      ('cflags', test_cflags + ['-I' + os.path.join(gtest_src_dir, 'googletest') ]),
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    ]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    # Do not use cxx() directly to ensure the object file is under $builddir.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    objs += n.build(built('gtest_all' + objext), 'cxx', gtest_all_cc, variables=gtest_all_variables)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    ninja_test = n.build(binary('ninja_test'), 'link', objs, implicit=ninja_lib,
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++                         variables=[('libs', libs)])
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    n.newline()
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++    all_targets += ninja_test
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ n.comment('Ancillary executables.')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if platform.is_aix() and '-maix64' not in ldflags:
</span></pre><pre style='margin:0'>

</pre>