[arch-commits] Commit in gn/trunk (PKGBUILD repro.patch)
Evangelos Foutras
foutrelis at gemini.archlinux.org
Thu Jul 7 03:21:42 UTC 2022
Date: Thursday, July 7, 2022 @ 03:21:41
Author: foutrelis
Revision: 449960
upgpkg: gn 0.2042.2ecd43a1-2: fix repro maybe
Added:
gn/trunk/repro.patch
Modified:
gn/trunk/PKGBUILD
-------------+
PKGBUILD | 14 +++++++++++---
repro.patch | 29 +++++++++++++++++++++++++++++
2 files changed, 40 insertions(+), 3 deletions(-)
Modified: PKGBUILD
===================================================================
--- PKGBUILD 2022-07-06 23:50:30 UTC (rev 449959)
+++ PKGBUILD 2022-07-07 03:21:41 UTC (rev 449960)
@@ -3,7 +3,7 @@
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/"
@@ -10,8 +10,10 @@
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
@@ -18,6 +20,12 @@
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
./build/gen.py
Added: repro.patch
===================================================================
--- repro.patch (rev 0)
+++ repro.patch 2022-07-07 03:21:41 UTC (rev 449960)
@@ -0,0 +1,29 @@
+From 102a161c76f8d4c8157390b7087ae6e65ec9d7cf Mon Sep 17 00:00:00 2001
+From: Evangelos Foutras <evangelos at 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(
More information about the arch-commits
mailing list