summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorEli Schwartz <eschwartz@archlinux.org>2019-11-15 15:32:12 +0100
committerAllan McRae <allan@archlinux.org>2019-11-26 02:49:24 +0100
commit0428f6213bcb5586d4ec9feb18af9a883c463793 (patch)
tree1d4603e7dfa17c99e15ff5072840e45201e64996
parent1e23b4585146b5c2bced10293c0f3486e53d51ed (diff)
downloadpacman-0428f6213bcb5586d4ec9feb18af9a883c463793.tar.gz
pacman-0428f6213bcb5586d4ec9feb18af9a883c463793.tar.xz
makepkg: add the $startdir to package .BUILDINFO
This value is needed for reproducible builds. The reason is because $BUILDDIR changes its behavior depending on whether it is the same as $startdir, and the result is that we cannot know whether $srcdir (the path that is potentially embedded into the final package) is actually "$BUILDDIR/src" or "$BUILDDIR/$pkgbase/src". Signed-off-by: Eli Schwartz <eschwartz@archlinux.org> Signed-off-by: Allan McRae <allan@archlinux.org>
-rw-r--r--doc/BUILDINFO.5.asciidoc3
-rw-r--r--scripts/makepkg.sh.in3
2 files changed, 5 insertions, 1 deletions
diff --git a/doc/BUILDINFO.5.asciidoc b/doc/BUILDINFO.5.asciidoc
index 3db1e12f..bb300e18 100644
--- a/doc/BUILDINFO.5.asciidoc
+++ b/doc/BUILDINFO.5.asciidoc
@@ -53,6 +53,9 @@ BUILDINFO file format.
*builddir*::
The directory where the package was built.
+*startdir*::
+ The directory from which makepkg was executed.
+
*buildenv (array)*::
The build environment specified in makepkg.conf.
diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in
index 2deb61da..ca3e7459 100644
--- a/scripts/makepkg.sh.in
+++ b/scripts/makepkg.sh.in
@@ -626,7 +626,7 @@ write_pkginfo() {
}
write_buildinfo() {
- write_kv_pair "format" "1"
+ write_kv_pair "format" "2"
write_kv_pair "pkgname" "$pkgname"
write_kv_pair "pkgbase" "$pkgbase"
@@ -643,6 +643,7 @@ write_buildinfo() {
write_kv_pair "packager" "${PACKAGER}"
write_kv_pair "builddate" "${SOURCE_DATE_EPOCH}"
write_kv_pair "builddir" "${BUILDDIR}"
+ write_kv_pair "startdir" "${startdir}"
write_kv_pair "buildenv" "${BUILDENV[@]}"
write_kv_pair "options" "${OPTIONS[@]}"