<pre style='margin:0'>
Herby Gillot (herbygillot) pushed a commit to branch master
in repository macports-ports.
</pre>
<p><a href="https://github.com/macports/macports-ports/commit/88a17eb424eefc7c304d29d3ff248166e1f15aa1">https://github.com/macports/macports-ports/commit/88a17eb424eefc7c304d29d3ff248166e1f15aa1</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 88a17eb424e gn: new port in devel
</span>88a17eb424e is described below
<span style='display:block; white-space:pre;color:#808000;'>commit 88a17eb424eefc7c304d29d3ff248166e1f15aa1
</span>Author: barracuda156 <vital.had@gmail.com>
AuthorDate: Fri Nov 3 15:51:53 2023 +0800
<span style='display:block; white-space:pre;color:#404040;'> gn: new port in devel
</span>---
devel/gn/Portfile | 76 +++++++++++++++++++++
...-gen.py-do-not-force-random-macOS-version.patch | 22 ++++++
...ed-do-not-use-objc-types-when-unsupported.patch | 46 +++++++++++++
...ed-version-due-to-configure-not-honoring-.patch | 55 +++++++++++++++
...g.h-sys_info.cc-args.cc-fix-PowerPC-defin.patch | 78 ++++++++++++++++++++++
...se-libdispatch-only-where-it-actually-exi.patch | 53 +++++++++++++++
6 files changed, 330 insertions(+)
<span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/gn/Portfile b/devel/gn/Portfile
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..3f23b722155
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/gn/Portfile
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,76 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# -*- 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
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortSystem 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+PortGroup github 1.0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+github.setup cglogic gn 2124 v
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+revision 0
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+categories devel
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+license BSD
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+maintainers {@barracuda156 gmail.com:vital.had} openmaintainer
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+description Gn meta build framework – standalone version
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+long_description GN is a meta-build system that generates build files for Ninja. \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ GN is currently used as the build system for Chromium, Fuchsia and related projects.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+homepage https://gn.googlesource.com/gn
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+checksums rmd160 cb2d071cd328363724468a5a50b6739f0c5f52ed \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ sha256 91ab314affb97c61cd4037520e873438ffa356bf6bbbbfc086e7bc3e9e9a20e3 \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ size 1068534
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+github.tarball_from archive
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set py_ver 3.11
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+set py_ver_nodot [string map {. {}} ${py_ver}]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_build-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:ninja \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ port:python${py_ver_nodot}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+depends_run-append port:python${py_ver_nodot}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.python ${prefix}/bin/python${py_ver}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+compiler.cxx_standard 2017
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+patchfiles 0001-gen.py-do-not-force-random-macOS-version.patch \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 0002-mac-scoped-do-not-use-objc-types-when-unsupported.patch \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 0003-Fix-undefined-version-due-to-configure-not-honoring-.patch \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 0004-build_config.h-sys_info.cc-args.cc-fix-PowerPC-defin.patch \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 0005-semaphore-use-libdispatch-only-where-it-actually-exi.patch
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+post-patch {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace "s|python3|${configure.python}|" ${worksrcpath}/src/gn/exec_process_unittest.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace "s|/usr/bin/env python3|${configure.python}|" ${worksrcpath}/build/full_test.py ${worksrcpath}/build/gen.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace "s|@DEPLOYMENT_TARGET@|${macosx_deployment_target}|" ${worksrcpath}/build/gen.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ reinplace "s|@VERSION@|${version}|" ${worksrcpath}/src/gn/gn_main.cc ${worksrcpath}/src/gn/scope_per_file_provider.cc
</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;'>+configure.cmd ${configure.python} ./build/gen.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# --prefix is not accepted by the configure script.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.pre_args-delete \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --prefix=${prefix}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# You would expect this to be honored, but it is not, and the sources include non-existent header unconditionally.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# It is fixed by a patch above.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+configure.args --no-last-commit-position
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# Upstream seems to support minimum 10.9. Build fails with -Werror on older systems:
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+# desc_builder.cc: error: redundant move in return statement [-Werror=redundant-move]
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+if {${os.platform} eq "darwin" && ${os.major} < 13} {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ configure.args-append \
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ --allow-warnings
</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;'>+build.cmd ${prefix}/bin/ninja
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+build.dir ${worksrcpath}/out
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+build.target
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+build.env-append CC=${configure.cc} CXX=${configure.cxx}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+destroot {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ copy ${worksrcpath}/out/${name} ${destroot}${prefix}/bin/
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ set docdir ${prefix}/share/doc/${name}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -d ${destroot}${docdir}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ xinstall -m 0644 -W ${worksrcpath} AUTHORS LICENSE OWNERS README.md ${destroot}${docdir}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ copy ${worksrcpath}/docs ${destroot}${docdir}
</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;'>+test.run yes
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+test.cmd ${worksrcpath}/out/gn_unittests
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+test.target
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/gn/files/0001-gen.py-do-not-force-random-macOS-version.patch b/devel/gn/files/0001-gen.py-do-not-force-random-macOS-version.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..97f302ece05
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/gn/files/0001-gen.py-do-not-force-random-macOS-version.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,22 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 2172257dffa703fd8f567bf6b1268012a4eb7ad7 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: barracuda156 <vital.had@gmail.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Fri, 3 Nov 2023 13:21:31 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH 1/5] gen.py: do not force random macOS version
</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;'>+ build/gen.py | 2 +-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 1 file changed, 1 insertion(+), 1 deletion(-)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git build/gen.py build/gen.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index adb622a9..6420b4a1 100755
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- build/gen.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ build/gen.py
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -495,7 +495,7 @@ def WriteGNNinja(path, platform, host, options, args_list):
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ # This is needed by libc++.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ libs.append('-ldl')
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ elif platform.is_darwin():
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- min_mac_version_flag = '-mmacosx-version-min=10.9'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ min_mac_version_flag = '-mmacosx-version-min=@DEPLOYMENT_TARGET@'
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ cflags.append(min_mac_version_flag)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ldflags.append(min_mac_version_flag)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ elif platform.is_aix():
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/gn/files/0002-mac-scoped-do-not-use-objc-types-when-unsupported.patch b/devel/gn/files/0002-mac-scoped-do-not-use-objc-types-when-unsupported.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..ba49bbb3af9
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/gn/files/0002-mac-scoped-do-not-use-objc-types-when-unsupported.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,46 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From 58747108a78a5767d678c0a69d64a98e02c2bee5 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: barracuda156 <vital.had@gmail.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Fri, 3 Nov 2023 14:02:45 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH 2/5] mac/scoped*: do not use objc types when unsupported
</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;'>+ src/base/mac/scoped_cftyperef.h | 2 ++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ src/base/mac/scoped_typeref.h | 2 ++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 2 files changed, 4 insertions(+)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git src/base/mac/scoped_cftyperef.h src/base/mac/scoped_cftyperef.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index a602fd9c..2631cd53 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/base/mac/scoped_cftyperef.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/base/mac/scoped_cftyperef.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -9,6 +9,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "base/mac/scoped_typeref.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if defined(__OBJC__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ namespace base {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // ScopedCFTypeRef<> is patterned after std::unique_ptr<>, but maintains
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -45,4 +46,5 @@ using ScopedCFTypeRef =
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } // namespace base
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif // BASE_MAC_SCOPED_CFTYPEREF_H_
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git src/base/mac/scoped_typeref.h src/base/mac/scoped_typeref.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 034ed902..cab6374e 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/base/mac/scoped_typeref.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/base/mac/scoped_typeref.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -9,6 +9,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "base/logging.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "base/memory/scoped_policy.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if defined(__OBJC__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ namespace base {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // ScopedTypeRef<> is patterned after std::unique_ptr<>, but maintains ownership
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -135,4 +136,5 @@ class ScopedTypeRef {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } // namespace base
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif // BASE_MAC_SCOPED_TYPEREF_H_
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/gn/files/0003-Fix-undefined-version-due-to-configure-not-honoring-.patch b/devel/gn/files/0003-Fix-undefined-version-due-to-configure-not-honoring-.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..9a954e4df35
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/gn/files/0003-Fix-undefined-version-due-to-configure-not-honoring-.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,55 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From d219814e39648848dc0c12c1b908f163c6a97f86 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: barracuda156 <vital.had@gmail.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Fri, 3 Nov 2023 14:50:28 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH 3/5] Fix undefined version due to configure not honoring
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ options set
</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;'>+ src/gn/gn_main.cc | 4 +---
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ src/gn/scope_per_file_provider.cc | 4 ++--
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 2 files changed, 3 insertions(+), 5 deletions(-)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git src/gn/gn_main.cc src/gn/gn_main.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index e1a05177..4f528223 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/gn/gn_main.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/gn/gn_main.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -16,8 +16,6 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "util/msg_loop.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "util/sys_info.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#include "last_commit_position.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ namespace {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ std::vector<std::string> GetArgs(const base::CommandLine& cmdline) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -49,7 +47,7 @@ int main(int argc, char** argv) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ command = commands::kHelp;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } else if (cmdline.HasSwitch(switches::kVersion)) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // Make "--version" print the version and exit.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- OutputString(std::string(LAST_COMMIT_POSITION) + "\n");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ OutputString("@VERSION@\n");
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ exit(0);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } else if (args.empty()) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // No command, print error and exit.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git src/gn/scope_per_file_provider.cc src/gn/scope_per_file_provider.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 9332c40e..d508d873 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/gn/scope_per_file_provider.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/gn/scope_per_file_provider.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -12,7 +12,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "gn/value.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "gn/variables.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#include "last_commit_position.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define gc_ver_num @VERSION@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ ScopePerFileProvider::ScopePerFileProvider(Scope* scope, bool allow_target_vars)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ : ProgrammaticProvider(scope), allow_target_vars_(allow_target_vars) {}
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -68,7 +68,7 @@ const Value* ScopePerFileProvider::GetDefaultToolchain() {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ const Value* ScopePerFileProvider::GetGnVersion() {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ if (!gn_version_) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ gn_version_ = std::make_unique<Value>(
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- nullptr, static_cast<int64_t>(LAST_COMMIT_POSITION_NUM));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ nullptr, static_cast<int64_t>(gc_ver_num));
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ return gn_version_.get();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ }
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/gn/files/0004-build_config.h-sys_info.cc-args.cc-fix-PowerPC-defin.patch b/devel/gn/files/0004-build_config.h-sys_info.cc-args.cc-fix-PowerPC-defin.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..1c867af2ffc
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/gn/files/0004-build_config.h-sys_info.cc-args.cc-fix-PowerPC-defin.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,78 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From b065043451b9fcf69b1a812e6853c55d598d4092 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: barracuda156 <vital.had@gmail.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Fri, 3 Nov 2023 13:36:26 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH 4/5] build_config.h, sys_info.cc, args.cc: fix PowerPC
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ definitions
</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;'>+ src/gn/args.cc | 3 +++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ src/util/build_config.h | 13 +++++++++----
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ src/util/sys_info.cc | 4 +++-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 3 files changed, 15 insertions(+), 5 deletions(-)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git src/gn/args.cc src/gn/args.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 6b5d25f3..d5feaf24 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/gn/args.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/gn/args.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -344,6 +344,7 @@ void Args::SetSystemVarsLocked(Scope* dest) const {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static const char kMips[] = "mipsel";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static const char kMips64[] = "mips64el";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static const char kS390X[] = "s390x";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ static const char kPPC[] = "ppc";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static const char kPPC64[] = "ppc64";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static const char kRISCV32[] = "riscv32";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ static const char kRISCV64[] = "riscv64";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -368,6 +369,8 @@ void Args::SetSystemVarsLocked(Scope* dest) const {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ arch = kMips64;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ else if (os_arch == "s390x")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ arch = kS390X;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ else if (os_arch == "ppc")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ arch = kPPC;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ else if (os_arch == "ppc64" || os_arch == "ppc64le")
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // We handle the endianness inside //build/config/host_byteorder.gni.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // This allows us to use the same toolchain as ppc64 BE
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git src/util/build_config.h src/util/build_config.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 668518ba..baa667b7 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/util/build_config.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/util/build_config.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -120,16 +120,21 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define ARCH_CPU_S390 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define ARCH_CPU_31_BITS 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define ARCH_CPU_BIG_ENDIAN 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#elif (defined(__PPC64__) || defined(__PPC__)) && defined(__BIG_ENDIAN__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#elif defined(__ppc__) || defined(__PPC__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define ARCH_CPU_PPC_FAMILY 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define ARCH_CPU_PPC 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define ARCH_CPU_32_BITS 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define ARCH_CPU_BIG_ENDIAN 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#elif defined(__PPC64__) && defined(__LITTLE_ENDIAN__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define ARCH_CPU_PPC64_FAMILY 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define ARCH_CPU_PPC64 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define ARCH_CPU_64_BITS 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#define ARCH_CPU_BIG_ENDIAN 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#elif defined(__PPC64__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define ARCH_CPU_LITTLE_ENDIAN 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#elif (defined(__PPC64__) || defined(__ppc64__))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define ARCH_CPU_PPC64_FAMILY 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define ARCH_CPU_PPC64 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define ARCH_CPU_64_BITS 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#define ARCH_CPU_LITTLE_ENDIAN 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#define ARCH_CPU_BIG_ENDIAN 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #elif defined(__ARMEL__)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define ARCH_CPU_ARM_FAMILY 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define ARCH_CPU_ARMEL 1
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git src/util/sys_info.cc src/util/sys_info.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index c8dc590a..a1970d67 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/util/sys_info.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/util/sys_info.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -34,7 +34,9 @@ std::string OperatingSystemArchitecture() {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ arch = "x86_64";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } else if (arch == "amd64") {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ arch = "x86_64";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+- } else if (os == "AIX" || os == "OS400") {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ } else if (arch == "ppc" || arch == "powerpc" || arch == "Power Macintosh") {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ arch = "ppc";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++ } else if (os == "AIX" || os == "OS400" || arch == "ppc64" || arch == "powerpc64") {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ arch = "ppc64";
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ } else if (std::string(info.sysname) == "OS/390") {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ arch = "s390x";
</span><span style='display:block; white-space:pre;color:#808080;'>diff --git a/devel/gn/files/0005-semaphore-use-libdispatch-only-where-it-actually-exi.patch b/devel/gn/files/0005-semaphore-use-libdispatch-only-where-it-actually-exi.patch
</span>new file mode 100644
<span style='display:block; white-space:pre;color:#808080;'>index 00000000000..48bbabe676c
</span><span style='display:block; white-space:pre;background:#ffe0e0;'>--- /dev/null
</span><span style='display:block; white-space:pre;background:#e0e0ff;'>+++ b/devel/gn/files/0005-semaphore-use-libdispatch-only-where-it-actually-exi.patch
</span><span style='display:block; white-space:pre;background:#e0e0e0;'>@@ -0,0 +1,53 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From f54e4e1cbdb11821bb3f66b2b50c793399e0af84 Mon Sep 17 00:00:00 2001
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+From: barracuda156 <vital.had@gmail.com>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Date: Fri, 3 Nov 2023 13:40:25 +0800
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+Subject: [PATCH 5/5] semaphore: use libdispatch only where it actually exists
</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;'>+ src/util/semaphore.cc | 2 +-
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ src/util/semaphore.h | 8 ++++++--
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ 2 files changed, 7 insertions(+), 3 deletions(-)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git src/util/semaphore.cc src/util/semaphore.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index afed45e1..88107a36 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/util/semaphore.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/util/semaphore.cc
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -13,7 +13,7 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <windows.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if defined(OS_MACOSX)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if defined(OS_MACOSX) && (MAC_OS_X_VERSION_MIN_REQUIRED > 1050 && !defined(__ppc__))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ Semaphore::Semaphore(int count) {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ native_handle_ = dispatch_semaphore_create(count);
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+diff --git src/util/semaphore.h src/util/semaphore.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+index 13a09927..e40aae0f 100644
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+--- src/util/semaphore.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++++ src/util/semaphore.h
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -8,11 +8,15 @@
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #ifndef UTIL_SEMAPHORE_H_
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #define UTIL_SEMAPHORE_H_
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#ifdef __APPLE__
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#include <AvailabilityMacros.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#endif
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "util/build_config.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #if defined(OS_WIN)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <windows.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#elif defined(OS_MACOSX)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#elif defined(OS_MACOSX) && (MAC_OS_X_VERSION_MIN_REQUIRED > 1050 && !defined(__ppc__))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include <dispatch/dispatch.h>
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #elif defined(OS_ZOS)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #include "zos-semaphore.h"
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+@@ -34,7 +38,7 @@ class Semaphore {
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ // becomes positive and then decrements the counter.
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ void Wait();
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+-#if defined(OS_MACOSX)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>++#if defined(OS_MACOSX) && (MAC_OS_X_VERSION_MIN_REQUIRED > 1050 && !defined(__ppc__))
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ using NativeHandle = dispatch_semaphore_t;
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ #elif defined(OS_POSIX)
</span><span style='display:block; white-space:pre;background:#e0ffe0;'>+ using NativeHandle = sem_t;
</span></pre><pre style='margin:0'>
</pre>