[gentoo-commits] repo/gentoo:master commit in: dev-util/gn/files/, dev-util/gn/

2021-11-03 Thread Stephan Hartmann
commit: 8729baea03c1267feb19fcea810489c836460483
Author: Stephan Hartmann  gentoo  org>
AuthorDate: Wed Nov  3 16:48:38 2021 +
Commit: Stephan Hartmann  gentoo  org>
CommitDate: Wed Nov  3 16:48:58 2021 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=8729baea

dev-util/gn: bump to 0.1942

Bug: https://bugs.gentoo.org/821400
Package-Manager: Portage-3.0.20, Repoman-3.0.3
Signed-off-by: Stephan Hartmann  gentoo.org>

 dev-util/gn/Manifest  |  1 +
 dev-util/gn/files/gn-gen-r5.patch | 46 
 dev-util/gn/gn-0.1942.ebuild  | 64 +++
 3 files changed, 111 insertions(+)

diff --git a/dev-util/gn/Manifest b/dev-util/gn/Manifest
index bb91def32a7..2e41b70c5b6 100644
--- a/dev-util/gn/Manifest
+++ b/dev-util/gn/Manifest
@@ -1 +1,2 @@
 DIST gn-0.1807.tar.xz 682644 BLAKE2B 
5beb3c03b0ae467cb98eff2069ef6e4355cba56c57e2717139b698fa563efc404dd1cf0b3fd196f432ca3a13b0402e895b46407cb90bc16b63963710fd5be060
 SHA512 
82f468e389d08a46e582f816d056813af9bfc810ad0bd84f02731c17c0e2c6140a62e827b8a3c5f89eef467f9bcfc2e88dd7aed325a7955d8584e753fcd09103
+DIST gn-0.1942.tar.xz 706792 BLAKE2B 
2cc3439c1765af9d8068c73f31bbd5bbc947bcf061e59ca3876d2a99687d1d26d6bfcef7cd5b897afb639b48a8a3d8e445b18a71494291368b5a2c0985126602
 SHA512 
bb2480fb18ff32b502a0448c7a5bf895b9ed4a27a269bf02481fa74b3046bf1c898623007284fbdf89735d1aebcd58ab6f9cfcea85d3652de86435794e2492b0

diff --git a/dev-util/gn/files/gn-gen-r5.patch 
b/dev-util/gn/files/gn-gen-r5.patch
new file mode 100644
index 000..80966b3c7f5
--- /dev/null
+++ b/dev-util/gn/files/gn-gen-r5.patch
@@ -0,0 +1,46 @@
+From ef45f2e73264e62ad3fb24d064453a17099da8d7 Mon Sep 17 00:00:00 2001
+From: Mike Gilbert 
+Date: Sat, 14 Mar 2020 18:02:51 +
+Subject: [PATCH] Remove unwanted cflags/ldflags parameters
+
+---
+ build/gen.py | 9 -
+ 1 file changed, 9 deletions(-)
+
+diff --git a/build/gen.py b/build/gen.py
+index 265b1f5..06c6d8b 100755
+--- a/build/gen.py
 b/build/gen.py
+@@ -343,11 +343,6 @@ def WriteGNNinja(path, platform, host, options):
+ if options.debug:
+   cflags.extend(['-O0', '-g'])
+ else:
+-  cflags.append('-DNDEBUG')
+-  cflags.append('-O3')
+-  if options.no_strip:
+-cflags.append('-g')
+-  ldflags.append('-O3')
+   # Use -fdata-sections and -ffunction-sections to place each function
+   # or data item into its own section so --gc-sections can eliminate any
+   # unused functions and data items.
+@@ -383,7 +378,6 @@ def WriteGNNinja(path, platform, host, options):
+ '-D_FILE_OFFSET_BITS=64',
+ '-D__STDC_CONSTANT_MACROS', '-D__STDC_FORMAT_MACROS',
+ '-pthread',
+-'-pipe',
+ '-fno-exceptions',
+ '-fno-rtti',
+ '-fdiagnostics-color',
+@@ -411,9 +405,6 @@ def WriteGNNinja(path, platform, host, options):
+   '-Wno-cast-function-type', # Casting FARPROC to RegDeleteKeyExPtr
+   '-std=gnu++17',
+ ])
+-  else:
+-# This is needed by libc++.
+-libs.append('-ldl')
+ elif platform.is_darwin():
+   min_mac_version_flag = '-mmacosx-version-min=10.9'
+   cflags.append(min_mac_version_flag)
+-- 
+2.32.0
+

diff --git a/dev-util/gn/gn-0.1942.ebuild b/dev-util/gn/gn-0.1942.ebuild
new file mode 100644
index 000..0722a1480a0
--- /dev/null
+++ b/dev-util/gn/gn-0.1942.ebuild
@@ -0,0 +1,64 @@
+# Copyright 2018-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python3_{7,8,9} )
+
+inherit ninja-utils python-any-r1 toolchain-funcs
+
+DESCRIPTION="GN is a meta-build system that generates build files for Ninja"
+HOMEPAGE="https://gn.googlesource.com/;
+SRC_URI="https://dev.gentoo.org/~sultan/distfiles/dev-util/gn/${P}.tar.xz;
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm64 ~ppc64 ~x86"
+IUSE="vim-syntax"
+
+BDEPEND="
+   ${PYTHON_DEPS}
+   dev-util/ninja
+"
+
+PATCHES=(
+   "${FILESDIR}"/gn-gen-r5.patch
+)
+
+pkg_setup() {
+   :
+}
+
+src_configure() {
+   python_setup
+   tc-export AR CC CXX
+   unset CFLAGS
+   set -- ${EPYTHON} build/gen.py --no-last-commit-position --no-strip 
--no-static-libstdc++
+   echo "$@" >&2
+   "$@" || die
+   cat >out/last_commit_position.h <<-EOF || die
+   #ifndef OUT_LAST_COMMIT_POSITION_H_
+   #define OUT_LAST_COMMIT_POSITION_H_
+   #define LAST_COMMIT_POSITION_NUM ${PV##0.}
+   #define LAST_COMMIT_POSITION "${PV}"
+   #endif  // OUT_LAST_COMMIT_POSITION_H_
+   EOF
+}
+
+src_compile() {
+   eninja -C out gn
+}
+
+src_test() {
+   eninja -C out gn_unittests
+   out/gn_unittests || die
+}
+
+src_install() {
+   dobin out/gn
+   einstalldocs
+
+   if use vim-syntax; then
+   insinto /usr/share/vim/vimfiles
+   doins -r misc/vim/{autoload,ftdetect,ftplugin,syntax}
+   fi
+}



[gentoo-commits] repo/gentoo:master commit in: dev-util/gn/files/, dev-util/gn/

2020-07-18 Thread Mike Gilbert
commit: dc7d3a9edfb07f6dd1ce561e3fa223f71f65e141
Author: Mike Gilbert  gentoo  org>
AuthorDate: Sat Jul 18 13:35:35 2020 +
Commit: Mike Gilbert  gentoo  org>
CommitDate: Sat Jul 18 13:35:52 2020 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=dc7d3a9e

dev-util/gn: remove old

Signed-off-by: Mike Gilbert  gentoo.org>

 dev-util/gn/Manifest  |  1 -
 dev-util/gn/files/gn-gen-r1.patch | 57 ---
 dev-util/gn/gn-0.1463.ebuild  | 56 --
 3 files changed, 114 deletions(-)

diff --git a/dev-util/gn/Manifest b/dev-util/gn/Manifest
index c062fb74a31..6297d282005 100644
--- a/dev-util/gn/Manifest
+++ b/dev-util/gn/Manifest
@@ -1,3 +1,2 @@
-DIST gn-0.1463.tar.gz 905571 BLAKE2B 
e048e642704533d478fb751748a97f60283f63868ab1ab6fa5b8e7bc0322745cf21464eaa16194f684869b50f306668d3c7d3b4f72c3985b865d8492d1ff0901
 SHA512 
f32861a8fa44034b932e6aae4787fd7da6e4c6c19c5b6919de7b0d0f1ba20f415c1c55db95a08958a338b7b9de740ff49a29ab894a9c4e9049a89450d8c88281
 DIST gn-0.1726.tar.xz 663480 BLAKE2B 
26920a1594e9cc664293efaeaa8725568b78ecc1f2ac8c9a3cd27333e5fe89f1fa5bdee9e42c408f3c4a7cfb630e79220926c5694e31131d3e7627be49b5d6b2
 SHA512 
3e93ba02f251386c4aa320a45b8a045c2a1fa686a8f170455f3c06bb25b1a628c44530ae2e56bcbb2ff4b2a84dd065d54dde90955a55a325a8d219acce69ec2f
 DIST gn-0.1807.tar.xz 682644 BLAKE2B 
5beb3c03b0ae467cb98eff2069ef6e4355cba56c57e2717139b698fa563efc404dd1cf0b3fd196f432ca3a13b0402e895b46407cb90bc16b63963710fd5be060
 SHA512 
82f468e389d08a46e582f816d056813af9bfc810ad0bd84f02731c17c0e2c6140a62e827b8a3c5f89eef467f9bcfc2e88dd7aed325a7955d8584e753fcd09103

diff --git a/dev-util/gn/files/gn-gen-r1.patch 
b/dev-util/gn/files/gn-gen-r1.patch
deleted file mode 100644
index 77fdefcf222..000
--- a/dev-util/gn/files/gn-gen-r1.patch
+++ /dev/null
@@ -1,57 +0,0 @@
-diff --git a/build/gen.py b/build/gen.py
-index 76f88e84..5e088b2a 100755
 a/build/gen.py
-+++ b/build/gen.py
-@@ -326,9 +326,6 @@ def WriteGNNinja(path, platform, host, options, 
linux_sysroot):
- if options.debug:
-   cflags.extend(['-O0', '-g'])
- else:
--  cflags.append('-DNDEBUG')
--  cflags.append('-O3')
--  ldflags.append('-O3')
-   # Use -fdata-sections and -ffunction-sections to place each function
-   # or data item into its own section so --gc-sections can eliminate any
-   # unused functions and data items.
-@@ -340,14 +337,6 @@ def WriteGNNinja(path, platform, host, options, 
linux_sysroot):
- # Garbage collection is done by default on aix.
- ldflags.append('-Wl,--gc-sections')
- 
--  # Omit all symbol information from the output file.
--  if platform.is_darwin():
--ldflags.append('-Wl,-S')
--  elif platform.is_aix():
--ldflags.append('-Wl,-s')
--  else:
--ldflags.append('-Wl,-strip-all')
--
-   # Enable identical code-folding.
-   if options.use_icf:
- ldflags.append('-Wl,--icf=all')
-@@ -356,26 +345,17 @@ def WriteGNNinja(path, platform, host, options, 
linux_sysroot):
- '-D_FILE_OFFSET_BITS=64',
- '-D__STDC_CONSTANT_MACROS', '-D__STDC_FORMAT_MACROS',
- '-pthread',
--'-pipe',
- '-fno-exceptions',
- '-fno-rtti',
- ])
- cflags_cc.extend(['-std=c++14', '-Wno-c++11-narrowing'])
-+ldflags.append('-pthread')
- 
- if platform.is_linux():
-   if linux_sysroot:
- # Use the sid sysroot that UpdateLinuxSysroot() downloads.
- cflags.append('--sysroot=' + linux_sysroot)
- ldflags.append('--sysroot=' + linux_sysroot)
--  ldflags.extend([
--  '-static-libstdc++',
--  '-Wl,--as-needed',
--  ])
--  libs.extend([
--  # These are needed by libc++.
--  '-ldl',
--  '-lpthread',
--  ])
- elif platform.is_darwin():
-   min_mac_version_flag = '-mmacosx-version-min=10.9'
-   cflags.append(min_mac_version_flag)

diff --git a/dev-util/gn/gn-0.1463.ebuild b/dev-util/gn/gn-0.1463.ebuild
deleted file mode 100644
index 6ef882d7120..000
--- a/dev-util/gn/gn-0.1463.ebuild
+++ /dev/null
@@ -1,56 +0,0 @@
-# Copyright 1999-2018 Gentoo Foundation
-# Distributed under the terms of the GNU General Public License v2
-
-EAPI=7
-PYTHON_COMPAT=( python2_7 )
-
-inherit ninja-utils python-any-r1 toolchain-funcs
-
-DESCRIPTION="GN is a meta-build system that generates build files for Ninja"
-HOMEPAGE="https://gn.googlesource.com/;
-SRC_URI="https://dev.gentoo.org/~floppym/dist/${P}.tar.gz;
-
-LICENSE="BSD"
-SLOT="0"
-KEYWORDS="amd64 ~x86"
-
-BDEPEND="
-   ${PYTHON_DEPS}
-   dev-util/ninja
-"
-
-PATCHES=(
-   "${FILESDIR}"/gn-gen-r1.patch
-)
-
-pkg_setup() {
-   :
-}
-
-src_configure() {
-   python_setup
-   tc-export AR CC CXX
-   set -- ${EPYTHON} build/gen.py --no-sysroot --no-last-commit-position
-   echo "$@"
-   "$@" || die
-   cat >out/last_commit_position.h 

[gentoo-commits] repo/gentoo:master commit in: dev-util/gn/files/, dev-util/gn/

2019-03-23 Thread Mike Gilbert
commit: 7b860c9a0f8cc727a2314b1b5976f1de671b6063
Author: Mike Gilbert  gentoo  org>
AuthorDate: Sat Mar 23 16:54:16 2019 +
Commit: Mike Gilbert  gentoo  org>
CommitDate: Sat Mar 23 17:34:13 2019 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=7b860c9a

dev-util/gn: bump to 0.1544

Package-Manager: Portage-2.3.62_p4, Repoman-2.3.12_p87
Signed-off-by: Mike Gilbert  gentoo.org>

 dev-util/gn/Manifest  |  1 +
 dev-util/gn/files/gn-gen-r3.patch | 48 +
 dev-util/gn/gn-0.1544.ebuild  | 63 +++
 3 files changed, 112 insertions(+)

diff --git a/dev-util/gn/Manifest b/dev-util/gn/Manifest
index 7fc339c546c..f3ba0f953f9 100644
--- a/dev-util/gn/Manifest
+++ b/dev-util/gn/Manifest
@@ -1,3 +1,4 @@
 DIST gn-0.1445.tar.gz 958901 BLAKE2B 
f50dfa07c621e37d8a9face19ca91f28ca24e14717052218690e85911e25c91b109e6cede8d2be6c8493c0b7b8a305d530db4393123956c42da51cd4812d0300
 SHA512 
2ca21303aa8709fc4f23f15e01f2eaa8e77e394c27970a21361a22445d5cb29da150b1d05d77b471702ab2da2be04cea2a0d927eb0eb3a1baf3358c6eae15d06
 DIST gn-0.1463.tar.gz 905571 BLAKE2B 
e048e642704533d478fb751748a97f60283f63868ab1ab6fa5b8e7bc0322745cf21464eaa16194f684869b50f306668d3c7d3b4f72c3985b865d8492d1ff0901
 SHA512 
f32861a8fa44034b932e6aae4787fd7da6e4c6c19c5b6919de7b0d0f1ba20f415c1c55db95a08958a338b7b9de740ff49a29ab894a9c4e9049a89450d8c88281
 DIST gn-0.1479.tar.gz 909494 BLAKE2B 
5d7165371337be630b2d8dcfd8cd067358d56d8d82501288a56bc15955674f0528fde27056c13f32a2b908576a9e2f28529dec9cd1f259e964405874ce74e90f
 SHA512 
2be22c95952f9993d3f89e932abc0ed08eb2e99a3659322d90bf953b1f68591303b3490e0e55bf3988b1226fefef0a5b7f5d3039eb9ef76e4fe36a2e538ef94a
+DIST gn-0.1544.tar.gz 911124 BLAKE2B 
b8bac7783c373e8101cf727c254c2ee50af49c3e679a8df2cb337a0637e305f1f9094517e6af6a76a19300f533a41d9433624a7963ba0151a88a636bc7e6b4f8
 SHA512 
5cb3a25b66d44cd26063453ddf96563d62b24e8a961ca7fa29a48ee7bde4a423bd0dace36c432b46b677e042fcac9a4fb23afa5dc27e994fca54030b972dad29

diff --git a/dev-util/gn/files/gn-gen-r3.patch 
b/dev-util/gn/files/gn-gen-r3.patch
new file mode 100644
index 000..362a6854a26
--- /dev/null
+++ b/dev-util/gn/files/gn-gen-r3.patch
@@ -0,0 +1,48 @@
+From bedf2161dea8cf4813fd14891feee2e8e8d5bf28 Mon Sep 17 00:00:00 2001
+From: Mike Gilbert 
+Date: Sun, 14 Oct 2018 20:34:07 -0400
+Subject: [PATCH] Remove unwanted cflags/ldflags parameters
+
+---
+ build/gen.py | 9 -
+ 1 file changed, 9 deletions(-)
+
+diff --git a/build/gen.py b/build/gen.py
+index a7142fab..06d5e2b3 100755
+--- a/build/gen.py
 b/build/gen.py
+@@ -278,11 +278,6 @@ def WriteGNNinja(path, platform, host, options):
+ if options.debug:
+   cflags.extend(['-O0', '-g'])
+ else:
+-  cflags.append('-DNDEBUG')
+-  cflags.append('-O3')
+-  if options.no_strip:
+-cflags.append('-g')
+-  ldflags.append('-O3')
+   # Use -fdata-sections and -ffunction-sections to place each function
+   # or data item into its own section so --gc-sections can eliminate any
+   # unused functions and data items.
+@@ -311,7 +306,6 @@ def WriteGNNinja(path, platform, host, options):
+ '-D_FILE_OFFSET_BITS=64',
+ '-D__STDC_CONSTANT_MACROS', '-D__STDC_FORMAT_MACROS',
+ '-pthread',
+-'-pipe',
+ '-fno-exceptions',
+ '-fno-rtti',
+ '-fdiagnostics-color',
+@@ -320,11 +314,8 @@ def WriteGNNinja(path, platform, host, options):
+ 
+ if platform.is_linux():
+   ldflags.extend([
+-  '-static-libstdc++',
+   '-Wl,--as-needed',
+   ])
+-  # This is needed by libc++.
+-  libs.append('-ldl')
+ elif platform.is_darwin():
+   min_mac_version_flag = '-mmacosx-version-min=10.9'
+   cflags.append(min_mac_version_flag)
+-- 
+2.21.0
+

diff --git a/dev-util/gn/gn-0.1544.ebuild b/dev-util/gn/gn-0.1544.ebuild
new file mode 100644
index 000..92d8f91252f
--- /dev/null
+++ b/dev-util/gn/gn-0.1544.ebuild
@@ -0,0 +1,63 @@
+# Copyright 2018-2019 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python2_7 )
+
+inherit ninja-utils python-any-r1 toolchain-funcs
+
+DESCRIPTION="GN is a meta-build system that generates build files for Ninja"
+HOMEPAGE="https://gn.googlesource.com/;
+SRC_URI="https://dev.gentoo.org/~floppym/dist/${P}.tar.gz;
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~x86"
+IUSE="vim-syntax"
+
+BDEPEND="
+   ${PYTHON_DEPS}
+   dev-util/ninja
+"
+
+PATCHES=(
+   "${FILESDIR}"/gn-gen-r3.patch
+)
+
+pkg_setup() {
+   :
+}
+
+src_configure() {
+   python_setup
+   tc-export AR CC CXX
+   unset CFLAGS
+   set -- ${EPYTHON} build/gen.py --no-last-commit-position --no-strip
+   echo "$@" >&2
+   "$@" || die
+   cat >out/last_commit_position.h <<-EOF || die
+   #ifndef OUT_LAST_COMMIT_POSITION_H_
+   #define OUT_LAST_COMMIT_POSITION_H_
+   #define 

[gentoo-commits] repo/gentoo:master commit in: dev-util/gn/files/, dev-util/gn/

2018-12-10 Thread Mike Gilbert
commit: c007723d59cc377de003e291c4614d36c4e51a41
Author: Mike Gilbert  gentoo  org>
AuthorDate: Mon Dec 10 15:31:05 2018 +
Commit: Mike Gilbert  gentoo  org>
CommitDate: Mon Dec 10 15:31:05 2018 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c007723d

dev-util/gn: restore missing headers to fix ARM build

Bug: https://bugs.gentoo.org/672862
Package-Manager: Portage-2.3.52_p8, Repoman-2.3.12_p20
Signed-off-by: Mike Gilbert  gentoo.org>

 dev-util/gn/files/gn-numerics-arm.patch | 201 
 dev-util/gn/gn-0.1479.ebuild|   1 +
 2 files changed, 202 insertions(+)

diff --git a/dev-util/gn/files/gn-numerics-arm.patch 
b/dev-util/gn/files/gn-numerics-arm.patch
new file mode 100644
index 000..f822cdb4085
--- /dev/null
+++ b/dev-util/gn/files/gn-numerics-arm.patch
@@ -0,0 +1,201 @@
+From 8952cb06749d4bd390991878281bc7e72a6eef2c Mon Sep 17 00:00:00 2001
+From: Mike Gilbert 
+Date: Mon, 10 Dec 2018 10:27:20 -0500
+Subject: [PATCH] Add missing headers for ARM
+
+Bug: https://bugs.gentoo.org/672862
+---
+ base/numerics/safe_conversions_arm_impl.h |  51 +
+ base/numerics/safe_math_arm_impl.h| 122 ++
+ 2 files changed, 173 insertions(+)
+ create mode 100644 base/numerics/safe_conversions_arm_impl.h
+ create mode 100644 base/numerics/safe_math_arm_impl.h
+
+diff --git a/base/numerics/safe_conversions_arm_impl.h 
b/base/numerics/safe_conversions_arm_impl.h
+new file mode 100644
+index ..da5813f6
+--- /dev/null
 b/base/numerics/safe_conversions_arm_impl.h
+@@ -0,0 +1,51 @@
++// Copyright 2017 The Chromium Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style license that can be
++// found in the LICENSE file.
++
++#ifndef BASE_NUMERICS_SAFE_CONVERSIONS_ARM_IMPL_H_
++#define BASE_NUMERICS_SAFE_CONVERSIONS_ARM_IMPL_H_
++
++#include 
++#include 
++#include 
++
++#include "base/numerics/safe_conversions_impl.h"
++
++namespace base {
++namespace internal {
++
++// Fast saturation to a destination type.
++template 
++struct SaturateFastAsmOp {
++  static const bool is_supported =
++  std::is_signed::value && std::is_integral::value &&
++  std::is_integral::value &&
++  IntegerBitsPlusSign::value <= IntegerBitsPlusSign::value 
&&
++  IntegerBitsPlusSign::value <= IntegerBitsPlusSign::value 
&&
++  !IsTypeInRangeForNumericType::value;
++
++  __attribute__((always_inline)) static Dst Do(Src value) {
++int32_t src = value;
++typename std::conditional::value, int32_t,
++  uint32_t>::type result;
++if (std::is_signed::value) {
++  asm("ssat %[dst], %[shift], %[src]"
++  : [dst] "=r"(result)
++  : [src] "r"(src), [shift] "n"(IntegerBitsPlusSign::value <= 32
++? IntegerBitsPlusSign::value
++: 32));
++} else {
++  asm("usat %[dst], %[shift], %[src]"
++  : [dst] "=r"(result)
++  : [src] "r"(src), [shift] "n"(IntegerBitsPlusSign::value < 32
++? IntegerBitsPlusSign::value
++: 31));
++}
++return static_cast(result);
++  }
++};
++
++}  // namespace internal
++}  // namespace base
++
++#endif  // BASE_NUMERICS_SAFE_CONVERSIONS_ARM_IMPL_H_
+diff --git a/base/numerics/safe_math_arm_impl.h 
b/base/numerics/safe_math_arm_impl.h
+new file mode 100644
+index ..a7cda1bb
+--- /dev/null
 b/base/numerics/safe_math_arm_impl.h
+@@ -0,0 +1,122 @@
++// Copyright 2017 The Chromium Authors. All rights reserved.
++// Use of this source code is governed by a BSD-style license that can be
++// found in the LICENSE file.
++
++#ifndef BASE_NUMERICS_SAFE_MATH_ARM_IMPL_H_
++#define BASE_NUMERICS_SAFE_MATH_ARM_IMPL_H_
++
++#include 
++#include 
++#include 
++
++#include "base/numerics/safe_conversions.h"
++
++namespace base {
++namespace internal {
++
++template 
++struct CheckedMulFastAsmOp {
++  static const bool is_supported =
++  FastIntegerArithmeticPromotion::is_contained;
++
++  // The following is much more efficient than the Clang and GCC builtins for
++  // performing overflow-checked multiplication when a twice wider type is
++  // available. The below compiles down to 2-3 instructions, depending on the
++  // width of the types in use.
++  // As an example, an int32_t multiply compiles to:
++  //smull   r0, r1, r0, r1
++  //cmp r1, r1, asr #31
++  // And an int16_t multiply compiles to:
++  //smulbb  r1, r1, r0
++  //asr r2, r1, #16
++  //cmp r2, r1, asr #15
++  template 
++  __attribute__((always_inline)) static bool Do(T x, U y, V* result) {
++using Promotion = typename FastIntegerArithmeticPromotion::type;
++Promotion presult;
++
++presult = static_cast(x) * static_cast(y);
++*result = static_cast(presult);
++return 

[gentoo-commits] repo/gentoo:master commit in: dev-util/gn/files/, dev-util/gn/

2018-10-14 Thread Mike Gilbert
commit: 31b1852c8b72dbca9c03f9017c473b0f9add6dc0
Author: Mike Gilbert  gentoo  org>
AuthorDate: Mon Oct 15 01:04:50 2018 +
Commit: Mike Gilbert  gentoo  org>
CommitDate: Mon Oct 15 04:59:02 2018 +
URL:https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=31b1852c

dev-util/gn: bump to 0.1479

Package-Manager: Portage-2.3.50_p14, Repoman-2.3.11_p21
Signed-off-by: Mike Gilbert  gentoo.org>

 dev-util/gn/Manifest  |  1 +
 dev-util/gn/files/gn-gen-r2.patch | 70 +++
 dev-util/gn/gn-0.1479.ebuild  | 63 +++
 3 files changed, 134 insertions(+)

diff --git a/dev-util/gn/Manifest b/dev-util/gn/Manifest
index 0892e0a420b..7fc339c546c 100644
--- a/dev-util/gn/Manifest
+++ b/dev-util/gn/Manifest
@@ -1,2 +1,3 @@
 DIST gn-0.1445.tar.gz 958901 BLAKE2B 
f50dfa07c621e37d8a9face19ca91f28ca24e14717052218690e85911e25c91b109e6cede8d2be6c8493c0b7b8a305d530db4393123956c42da51cd4812d0300
 SHA512 
2ca21303aa8709fc4f23f15e01f2eaa8e77e394c27970a21361a22445d5cb29da150b1d05d77b471702ab2da2be04cea2a0d927eb0eb3a1baf3358c6eae15d06
 DIST gn-0.1463.tar.gz 905571 BLAKE2B 
e048e642704533d478fb751748a97f60283f63868ab1ab6fa5b8e7bc0322745cf21464eaa16194f684869b50f306668d3c7d3b4f72c3985b865d8492d1ff0901
 SHA512 
f32861a8fa44034b932e6aae4787fd7da6e4c6c19c5b6919de7b0d0f1ba20f415c1c55db95a08958a338b7b9de740ff49a29ab894a9c4e9049a89450d8c88281
+DIST gn-0.1479.tar.gz 909494 BLAKE2B 
5d7165371337be630b2d8dcfd8cd067358d56d8d82501288a56bc15955674f0528fde27056c13f32a2b908576a9e2f28529dec9cd1f259e964405874ce74e90f
 SHA512 
2be22c95952f9993d3f89e932abc0ed08eb2e99a3659322d90bf953b1f68591303b3490e0e55bf3988b1226fefef0a5b7f5d3039eb9ef76e4fe36a2e538ef94a

diff --git a/dev-util/gn/files/gn-gen-r2.patch 
b/dev-util/gn/files/gn-gen-r2.patch
new file mode 100644
index 000..701a317bf02
--- /dev/null
+++ b/dev-util/gn/files/gn-gen-r2.patch
@@ -0,0 +1,70 @@
+From 00e907811ea7fc56de73ad44903946a9179b1c4f Mon Sep 17 00:00:00 2001
+From: Mike Gilbert 
+Date: Sun, 14 Oct 2018 20:34:07 -0400
+Subject: [PATCH] Remove unwanted cflags/ldflags parameters
+
+---
+ build/gen.py | 19 +--
+ 1 file changed, 1 insertion(+), 18 deletions(-)
+
+diff --git a/build/gen.py b/build/gen.py
+index 11c92460..b186e3b0 100755
+--- a/build/gen.py
 b/build/gen.py
+@@ -326,9 +326,6 @@ def WriteGNNinja(path, platform, host, options, 
linux_sysroot):
+ if options.debug:
+   cflags.extend(['-O0', '-g'])
+ else:
+-  cflags.append('-DNDEBUG')
+-  cflags.append('-O3')
+-  ldflags.append('-O3')
+   # Use -fdata-sections and -ffunction-sections to place each function
+   # or data item into its own section so --gc-sections can eliminate any
+   # unused functions and data items.
+@@ -340,14 +337,6 @@ def WriteGNNinja(path, platform, host, options, 
linux_sysroot):
+ # Garbage collection is done by default on aix.
+ ldflags.append('-Wl,--gc-sections')
+ 
+-  # Omit all symbol information from the output file.
+-  if platform.is_darwin():
+-ldflags.append('-Wl,-S')
+-  elif platform.is_aix():
+-ldflags.append('-Wl,-s')
+-  else:
+-ldflags.append('-Wl,-strip-all')
+-
+   # Enable identical code-folding.
+   if options.use_icf:
+ ldflags.append('-Wl,--icf=all')
+@@ -356,12 +345,12 @@ def WriteGNNinja(path, platform, host, options, 
linux_sysroot):
+ '-D_FILE_OFFSET_BITS=64',
+ '-D__STDC_CONSTANT_MACROS', '-D__STDC_FORMAT_MACROS',
+ '-pthread',
+-'-pipe',
+ '-fno-exceptions',
+ '-fno-rtti',
+ '-fdiagnostics-color',
+ ])
+ cflags_cc.extend(['-std=c++14', '-Wno-c++11-narrowing'])
++ldflags.extend(['-pthread'])
+ 
+ if platform.is_linux():
+   if linux_sysroot:
+@@ -369,14 +358,8 @@ def WriteGNNinja(path, platform, host, options, 
linux_sysroot):
+ cflags.append('--sysroot=' + linux_sysroot)
+ ldflags.append('--sysroot=' + linux_sysroot)
+   ldflags.extend([
+-  '-static-libstdc++',
+   '-Wl,--as-needed',
+   ])
+-  libs.extend([
+-  # These are needed by libc++.
+-  '-ldl',
+-  '-lpthread',
+-  ])
+ elif platform.is_darwin():
+   min_mac_version_flag = '-mmacosx-version-min=10.9'
+   cflags.append(min_mac_version_flag)
+-- 
+2.19.1
+

diff --git a/dev-util/gn/gn-0.1479.ebuild b/dev-util/gn/gn-0.1479.ebuild
new file mode 100644
index 000..fc369d2c0db
--- /dev/null
+++ b/dev-util/gn/gn-0.1479.ebuild
@@ -0,0 +1,63 @@
+# Copyright 1999-2018 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+PYTHON_COMPAT=( python2_7 )
+
+inherit ninja-utils python-any-r1 toolchain-funcs
+
+DESCRIPTION="GN is a meta-build system that generates build files for Ninja"
+HOMEPAGE="https://gn.googlesource.com/;
+SRC_URI="https://dev.gentoo.org/~floppym/dist/${P}.tar.gz;
+
+LICENSE="BSD"