dev-util/ninja: upgrade to 1.10.0

Upgraded dev-util/ninja to version 1.10.0 on amd64, arm

BUG=chromium:1132813
TEST=./update_chroot && emerge-betty mosys && sudo emerge mosys

Change-Id: I5354b894d7adaebe1e51de486f9f81803ad91c05
Reviewed-on: https://chromium-review.googlesource.com/c/chromiumos/overlays/portage-stable/+/2435305
Auto-Submit: Michael Pishchagin <mblsha@google.com>
Reviewed-by: Alex Klein <saklein@chromium.org>
Commit-Queue: Michael Pishchagin <mblsha@google.com>
Tested-by: Michael Pishchagin <mblsha@google.com>
diff --git a/dev-util/ninja/Manifest b/dev-util/ninja/Manifest
index b882b2f..3393312 100644
--- a/dev-util/ninja/Manifest
+++ b/dev-util/ninja/Manifest
@@ -1 +1 @@
-DIST ninja-1.8.2.tar.gz 185226 SHA256 86b8700c3d0880c2b44c2ff67ce42774aaf8c28cbf57725cb881569288c1c6f4 SHA512 1650bf9e3eddeb0b0fbb415c2b8e0a7c094421e991fa8139fd77fae0f6ee7ee980b7cf5e98d883c3a884f99abcb06fa26e3980af3a3a5bb6dd655124755782c2 WHIRLPOOL 7afc5a6ba34f5c5b464ed47af8e0b5e50bc02a81beb4e5719e19348d60057e6cd3f156ef20f77646fe883b8becc1298d7998d85f1d8bc07ee6b0bd415a58aa2f
+DIST ninja-1.10.0.tar.gz 210313 BLAKE2B 0a3db145deaea8a990958ad2e812bc18ed014aaba94911a2905b082745a0d08f10ce1113badabaa362f3834540b7bd3858f07e2a5fce268c66d3d6c73e974e76 SHA512 5ed47ef1ff18a03eb73296629679a8617a08ee443e10e28ae9cb24e4506f84fe1eb142888adea9a62364b626b35817def8c55ba956c9b3cbc7b82d3e62293044
diff --git a/dev-util/ninja/files/ninja-1.10.0-readme.patch b/dev-util/ninja/files/ninja-1.10.0-readme.patch
new file mode 100644
index 0000000..1d84f12
--- /dev/null
+++ b/dev-util/ninja/files/ninja-1.10.0-readme.patch
@@ -0,0 +1,38 @@
+From b748d085618bf5e802de6a13b07d632d20ab04bf Mon Sep 17 00:00:00 2001
+From: Mike Gilbert <floppym@gentoo.org>
+Date: Fri, 20 Mar 2020 19:36:01 -0400
+Subject: [PATCH] Replace references to README with README.md
+
+The README file was renamed to README.md in commit
+a37da20ae74c81703b1c811182fc154d95ed46fe.
+---
+ configure.py              | 2 +-
+ misc/packaging/ninja.spec | 2 +-
+ 2 files changed, 2 insertions(+), 2 deletions(-)
+
+diff --git a/configure.py b/configure.py
+index 7d8ce9045..8eef7e6eb 100755
+--- a/configure.py
++++ b/configure.py
+@@ -649,7 +649,7 @@ def has_re2c():
+        command='$doxygen_mainpage_generator $in > $out',
+        description='DOXYGEN_MAINPAGE $out')
+ mainpage = n.build(built('doxygen_mainpage'), 'doxygen_mainpage',
+-                   ['README', 'COPYING'],
++                   ['README.md', 'COPYING'],
+                    implicit=['$doxygen_mainpage_generator'])
+ n.build('doxygen', 'doxygen', doc('doxygen.config'),
+         implicit=mainpage)
+diff --git a/misc/packaging/ninja.spec b/misc/packaging/ninja.spec
+index 05f5a079a..36e518186 100644
+--- a/misc/packaging/ninja.spec
++++ b/misc/packaging/ninja.spec
+@@ -32,7 +32,7 @@ cp -p ninja %{buildroot}%{_bindir}/
+ 
+ %files
+ %defattr(-, root, root)
+-%doc COPYING README doc/manual.html
++%doc COPYING README.md doc/manual.html
+ %{_bindir}/*
+ 
+ %clean
diff --git a/dev-util/ninja/files/ninja-cflags.patch b/dev-util/ninja/files/ninja-cflags.patch
new file mode 100644
index 0000000..0c4ef28
--- /dev/null
+++ b/dev-util/ninja/files/ninja-cflags.patch
@@ -0,0 +1,25 @@
+From e4530769ef6a497f8f5f06159f6be049dc20e2ea Mon Sep 17 00:00:00 2001
+From: Mike Gilbert <floppym@gentoo.org>
+Date: Thu, 19 Mar 2020 11:21:29 -0400
+Subject: [PATCH] Avoid adding -O2 -DNDEBUG to cflags
+
+---
+ configure.py | 2 --
+ 1 file changed, 2 deletions(-)
+
+diff --git a/configure.py b/configure.py
+index 7d8ce90..7566147 100755
+--- a/configure.py
++++ b/configure.py
+@@ -344,8 +344,6 @@ else:
+     if options.debug:
+         cflags += ['-D_GLIBCXX_DEBUG', '-D_GLIBCXX_DEBUG_PEDANTIC']
+         cflags.remove('-fno-rtti')  # Needed for above pedanticness.
+-    else:
+-        cflags += ['-O2', '-DNDEBUG']
+     try:
+         proc = subprocess.Popen(
+             [CXX, '-fdiagnostics-color', '-c', '-x', 'c++', '/dev/null',
+-- 
+2.25.1
+
diff --git a/dev-util/ninja/files/ninja-uclibc.patch b/dev-util/ninja/files/ninja-uclibc.patch
deleted file mode 100644
index e87eea8..0000000
--- a/dev-util/ninja/files/ninja-uclibc.patch
+++ /dev/null
@@ -1,18 +0,0 @@
-diff --git a/src/util.cc b/src/util.cc
-index e31fd1f..1caa1ce 100644
---- a/src/util.cc
-+++ b/src/util.cc
-@@ -585,6 +585,13 @@ double GetLoadAverage() {
-   // Calculation taken from comment in libperfstats.h
-   return double(cpu_stats.loadavg[0]) / double(1 << SBITS);
- }
-+#elif defined(__UCLIBC__)
-+double GetLoadAverage() {
-+  struct sysinfo si;
-+  if (sysinfo(&si) != 0)
-+    return -0.0f;
-+  return 1.0 / (1 << SI_LOAD_SHIFT) * si.loads[0];
-+}
- #else
- double GetLoadAverage() {
-   double loadavg[3] = { 0.0f, 0.0f, 0.0f };
diff --git a/dev-util/ninja/ninja-1.10.0.ebuild b/dev-util/ninja/ninja-1.10.0.ebuild
new file mode 100644
index 0000000..dcfb796
--- /dev/null
+++ b/dev-util/ninja/ninja-1.10.0.ebuild
@@ -0,0 +1,133 @@
+# Copyright 2012-2020 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+PYTHON_COMPAT=( python3_{6,7,8} )
+
+inherit bash-completion-r1 elisp-common python-any-r1 toolchain-funcs
+
+if [[ ${PV} == 9999 ]]; then
+	inherit git-r3
+	EGIT_REPO_URI="https://github.com/ninja-build/ninja.git"
+else
+	SRC_URI="https://github.com/ninja-build/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
+	KEYWORDS="~alpha amd64 arm arm64 hppa ~ia64 ~m68k ~mips ppc ppc64 ~riscv s390 sparc x86 ~x64-cygwin ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
+fi
+
+DESCRIPTION="A small build system similar to make"
+HOMEPAGE="https://ninja-build.org/"
+
+LICENSE="Apache-2.0"
+SLOT="0"
+
+IUSE="doc emacs test vim-syntax"
+RESTRICT="!test? ( test )"
+
+BDEPEND="
+	${PYTHON_DEPS}
+	dev-util/re2c
+	doc? (
+		app-text/asciidoc
+		app-doc/doxygen
+		dev-libs/libxslt
+	)
+	test? ( dev-cpp/gtest )
+"
+RDEPEND="
+	emacs? ( >=app-editors/emacs-23.1:* )
+	vim-syntax? (
+		|| (
+			app-editors/vim
+			app-editors/gvim
+		)
+	)
+"
+
+PATCHES=(
+	"${FILESDIR}"/ninja-cflags.patch
+	"${FILESDIR}"/ninja-1.10.0-readme.patch
+)
+
+run_for_build() {
+	if tc-is-cross-compiler; then
+		local -x AR=$(tc-getBUILD_AR)
+		local -x CXX=$(tc-getBUILD_CXX)
+		local -x CFLAGS=
+		local -x CXXFLAGS=${BUILD_CXXFLAGS}
+		local -x LDFLAGS=${BUILD_LDFLAGS}
+	fi
+	echo "$@" >&2
+	"$@"
+}
+
+src_compile() {
+	tc-export AR CXX
+
+	# configure.py appends CFLAGS to CXXFLAGS
+	unset CFLAGS
+
+	run_for_build ${EPYTHON} configure.py --bootstrap --verbose || die
+
+	if tc-is-cross-compiler; then
+		mv ninja ninja-build || die
+		${EPYTHON} configure.py || die
+		./ninja-build -v ninja || die
+	else
+		ln ninja ninja-build || die
+	fi
+
+	if use doc; then
+		./ninja-build -v doxygen manual || die
+	fi
+
+	if use emacs; then
+		elisp-compile misc/ninja-mode.el || die
+	fi
+}
+
+src_test() {
+	if ! tc-is-cross-compiler; then
+		# Bug 485772
+		ulimit -n 2048
+		./ninja -v ninja_test || die
+		./ninja_test || die
+	fi
+}
+
+src_install() {
+	dodoc README.md CONTRIBUTING.md
+	if use doc; then
+		docinto html
+		dodoc -r doc/doxygen/html/.
+		dodoc doc/manual.html
+	fi
+	dobin ninja
+
+	newbashcomp misc/bash-completion "${PN}"
+
+	if use vim-syntax; then
+		insinto /usr/share/vim/vimfiles/syntax/
+		doins misc/ninja.vim
+
+		echo 'au BufNewFile,BufRead *.ninja set ft=ninja' > "${T}/ninja.vim"
+		insinto /usr/share/vim/vimfiles/ftdetect
+		doins "${T}/ninja.vim"
+	fi
+
+	insinto /usr/share/zsh/site-functions
+	newins misc/zsh-completion _ninja
+
+	if use emacs; then
+		cd misc || die
+		elisp-install ninja ninja-mode.el* || die
+	fi
+}
+
+pkg_postinst() {
+	use emacs && elisp-site-regen
+}
+
+pkg_postrm() {
+	use emacs && elisp-site-regen
+}
diff --git a/dev-util/ninja/ninja-1.8.2.ebuild b/dev-util/ninja/ninja-1.8.2.ebuild
deleted file mode 100644
index 7ada897..0000000
--- a/dev-util/ninja/ninja-1.8.2.ebuild
+++ /dev/null
@@ -1,127 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=6
-
-PYTHON_COMPAT=( python{2_7,3_4,3_5,3_6} )
-
-inherit bash-completion-r1 elisp-common python-any-r1 toolchain-funcs
-
-if [[ ${PV} == 9999 ]]; then
-	inherit git-r3
-	EGIT_REPO_URI="https://github.com/ninja-build/ninja.git"
-else
-	SRC_URI="https://github.com/ninja-build/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz"
-	KEYWORDS="*"
-fi
-
-DESCRIPTION="A small build system similar to make"
-HOMEPAGE="https://ninja-build.org/"
-
-LICENSE="Apache-2.0"
-SLOT="0"
-
-IUSE="doc emacs test vim-syntax zsh-completion"
-
-DEPEND="
-	${PYTHON_DEPS}
-	dev-util/re2c
-	doc? (
-		app-text/asciidoc
-		app-doc/doxygen
-		dev-libs/libxslt
-	)
-	test? ( dev-cpp/gtest )
-"
-RDEPEND="
-	emacs? ( virtual/emacs )
-	vim-syntax? (
-		|| (
-			app-editors/vim
-			app-editors/gvim
-		)
-	)
-	zsh-completion? ( app-shells/zsh )
-	!<net-irc/ninja-1.5.9_pre14-r1" #436804
-
-run_for_build() {
-	if tc-is-cross-compiler; then
-		local -x AR=$(tc-getBUILD_AR)
-		local -x CXX=$(tc-getBUILD_CXX)
-		local -x CFLAGS=${BUILD_CXXFLAGS}
-		local -x LDFLAGS=${BUILD_LDFLAGS}
-	fi
-	"$@"
-}
-
-src_compile() {
-	tc-export AR CXX
-
-	# configure.py uses CFLAGS instead of CXXFLAGS
-	export CFLAGS=${CXXFLAGS}
-
-	run_for_build "${PYTHON}" configure.py --bootstrap --verbose || die
-
-	if tc-is-cross-compiler; then
-		mv ninja ninja-build || die
-		"${PYTHON}" configure.py || die
-		./ninja-build -v ninja || die
-	else
-		ln ninja ninja-build || die
-	fi
-
-	if use doc; then
-		./ninja-build -v doxygen manual || die
-	fi
-
-	if use emacs; then
-		elisp-compile misc/ninja-mode.el || die
-	fi
-}
-
-src_test() {
-	if ! tc-is-cross-compiler; then
-		# Bug 485772
-		ulimit -n 2048
-		./ninja-build -v ninja_test || die
-		./ninja_test || die
-	fi
-}
-
-src_install() {
-	dodoc README HACKING.md
-	if use doc; then
-		dohtml -r doc/doxygen/html/*
-		dohtml doc/manual.html
-	fi
-	dobin ninja
-
-	newbashcomp misc/bash-completion "${PN}"
-
-	if use vim-syntax; then
-		insinto /usr/share/vim/vimfiles/syntax/
-		doins misc/"${PN}".vim
-
-		echo 'au BufNewFile,BufRead *.ninja set ft=ninja' > "${T}/${PN}.vim"
-		insinto /usr/share/vim/vimfiles/ftdetect
-		doins "${T}/${PN}.vim"
-	fi
-
-	if use zsh-completion; then
-		insinto /usr/share/zsh/site-functions
-		newins misc/zsh-completion _ninja
-	fi
-
-	if use emacs; then
-		cd misc || die
-		elisp-install ${PN} ninja-mode.el* || die
-	fi
-}
-
-pkg_postinst() {
-	use emacs && elisp-site-regen
-}
-
-pkg_postrm() {
-	use emacs && elisp-site-regen
-}