extra/gn to 0.2042.2ecd43a1-2

This commit is contained in:
Kevin Mihelich 2022-07-07 03:46:38 +00:00
parent 6da804f402
commit 646c414ce2
2 changed files with 40 additions and 3 deletions

View file

@ -6,21 +6,29 @@
pkgname=gn
pkgver=0.2042.2ecd43a1
_commit=2ecd43a10266bd091c98e6dcde507c64f6a0dad3
pkgrel=1
pkgrel=2
pkgdesc="Meta-build system that generates build files for Ninja"
arch=('x86_64')
url="https://gn.googlesource.com/gn/"
license=('BSD')
depends=('gcc-libs')
makedepends=('clang' 'ninja' 'python' 'git')
source=(git+https://gn.googlesource.com/gn#commit=$_commit)
sha256sums=('SKIP')
source=(git+https://gn.googlesource.com/gn#commit=$_commit
repro.patch)
sha256sums=('SKIP'
'4f87532d0785ded35a9452bb762635c36c8e2c8e5181c4b991dab258f895e27e')
pkgver() {
cd $pkgname
echo 0.$(git rev-list --count initial-commit..).$(git rev-parse --short=8 HEAD)
}
prepare() {
cd $pkgname
# https://gn-review.googlesource.com/c/gn/+/14260
patch -Np1 -i ../repro.patch
}
build() {
cd $pkgname
# clang-13: error: argument unused during compilation: '-fstack-clash-protection' [-Werror,-Wunused-command-line-argument]

29
extra/gn/repro.patch Normal file
View file

@ -0,0 +1,29 @@
From 102a161c76f8d4c8157390b7087ae6e65ec9d7cf Mon Sep 17 00:00:00 2001
From: Evangelos Foutras <evangelos@foutrelis.com>
Date: Thu, 7 Jul 2022 06:18:12 +0300
Subject: [PATCH] build/gen.py: Make LAST_COMMIT_POSITION reproducible
Abbreviated hashes can vary in length depending on the number of objects
in the Git repository. This frequently breaks reproducibility for distro
packages. Address this by adding --abbrev=12 to the 'git describe' call.
Change-Id: I2fff11ff5a8e54e437a2186ea1f7c0ec17924437
---
build/gen.py | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/build/gen.py b/build/gen.py
index fe56186b..f877cc24 100755
--- a/build/gen.py
+++ b/build/gen.py
@@ -218,8 +218,8 @@ def main(argv):
def GenerateLastCommitPosition(host, header):
ROOT_TAG = 'initial-commit'
describe_output = subprocess.check_output(
- ['git', 'describe', 'HEAD', '--match', ROOT_TAG], shell=host.is_windows(),
- cwd=REPO_ROOT)
+ ['git', 'describe', 'HEAD', '--abbrev=12', '--match', ROOT_TAG],
+ shell=host.is_windows(), cwd=REPO_ROOT)
mo = re.match(ROOT_TAG + '-(\d+)-g([0-9a-f]+)', describe_output.decode())
if not mo:
raise ValueError(