summaryrefslogtreecommitdiff
path: root/libre/pacman/makepkg-pkgrel-5.patch
diff options
context:
space:
mode:
Diffstat (limited to 'libre/pacman/makepkg-pkgrel-5.patch')
-rw-r--r--libre/pacman/makepkg-pkgrel-5.patch81
1 files changed, 81 insertions, 0 deletions
diff --git a/libre/pacman/makepkg-pkgrel-5.patch b/libre/pacman/makepkg-pkgrel-5.patch
new file mode 100644
index 000000000..82da38d3f
--- /dev/null
+++ b/libre/pacman/makepkg-pkgrel-5.patch
@@ -0,0 +1,81 @@
+From 6357edfc61e293170a4c922fbdcfa260963d7268 Mon Sep 17 00:00:00 2001
+From: Luke Shumaker <lukeshu@sbcglobal.net>
+Date: Sun, 31 Aug 2014 17:10:32 -0400
+Subject: [PATCH] makepkg: treat pkgrel more similarly to pkgver
+
+This is perfectly fine with libalpm; it was only makepkg that was more
+strict with pkgrel than pkgver.
+
+Further, the former error message about invalid pkgrel formats claimed that
+pkgrel was a "decimal", which would mean that `1.1 == 1.10`. This was not
+the case; alpm parsed pkgrel as a version, not a decimal. In that light,
+enforcing /[0-9]+(\.([0-9]+)?/ on a version spec seems silly.
+---
+ doc/PKGBUILD.5.txt | 4 ++--
+ scripts/libmakepkg/lint_pkgbuild/pkgrel.sh.in | 4 ++--
+ test/util/vercmptest.sh | 18 ++++++++++++++++++
+ 3 files changed, 22 insertions(+), 4 deletions(-)
+
+diff -Nur pacman-5.0.0.orig/doc/PKGBUILD.5.txt pacman-5.0.0/doc/PKGBUILD.5.txt
+--- pacman-5.0.0.orig/doc/PKGBUILD.5.txt 2016-01-28 20:50:49.000000000 -0300
++++ pacman-5.0.0/doc/PKGBUILD.5.txt 2016-02-01 10:11:47.825919218 -0300
+@@ -48,7 +48,7 @@
+
+ *pkgver*::
+ The version of the software as released from the author (e.g., '2.7.1').
+- The variable is not allowed to contain colons or hyphens.
++ The variable is not allowed to contain colons, hyphens or whitespace.
+ +
+ The `pkgver` variable can be automatically updated by providing a `pkgver()`
+ function in the PKGBUILD that outputs the new package version.
+@@ -62,7 +62,7 @@
+ allows package maintainers to make updates to the package's configure
+ flags, for example. This is typically set to '1' for each new upstream
+ software release and incremented for intermediate PKGBUILD updates. The
+- variable is not allowed to contain hyphens.
++ variable is not allowed to contain colons, hyphens or whitespace.
+
+ *epoch*::
+ Used to force the package to be seen as newer than any previous versions
+diff -Nur pacman-5.0.0.orig/scripts/libmakepkg/lint_pkgbuild/pkgrel.sh.in pacman-5.0.0/scripts/libmakepkg/lint_pkgbuild/pkgrel.sh.in
+--- pacman-5.0.0.orig/scripts/libmakepkg/lint_pkgbuild/pkgrel.sh.in 2016-01-04 00:27:45.000000000 -0300
++++ pacman-5.0.0/scripts/libmakepkg/lint_pkgbuild/pkgrel.sh.in 2016-02-01 10:31:09.102801369 -0300
+@@ -35,8 +35,8 @@
+ return 1
+ fi
+
+- if [[ $pkgrel != +([0-9])?(.+([0-9])) ]]; then
+- error "$(gettext "%s must be a decimal, not %s.")" "pkgrel" "$pkgrel"
++ if [[ $pkgrel = *[[:space:]:-]* ]]; then
++ error "$(gettext "%s is not allowed to contain colons, hyphens or whitespace.")" "pkgrel" "$pkgrel"
+ return 1
+ fi
+ }
+diff -Nur pacman-5.0.0.orig/test/util/vercmptest.sh pacman-5.0.0/test/util/vercmptest.sh
+--- pacman-5.0.0.orig/test/util/vercmptest.sh 2016-01-04 00:27:45.000000000 -0300
++++ pacman-5.0.0/test/util/vercmptest.sh 2016-02-01 10:36:29.503809606 -0300
+@@ -113,6 +113,24 @@
+ tap_runtest 1:1.0 1.1 1
+ tap_runtest 1:1.1 1.1 1
+
++# complex pkgrel values
++tap_runtest 1-1.5.0 1-1.5.0 0
++tap_runtest 1-1.5.1 1-1.5.0 1
++tap_runtest 1-1.5.1 1-1.5 1
++tap_runtest 1-1.5b 1-1.5 -1
++tap_runtest 1-1.5b 1-1.5.1 -1
++tap_runtest 1-1.0a 1-1.0alpha -1
++tap_runtest 1-1.0alpha 1-1.0b -1
++tap_runtest 1-1.0b 1-1.0beta -1
++tap_runtest 1-1.0beta 1-1.0rc -1
++tap_runtest 1-1.0rc 1-1.0 -1
++tap_runtest 1-1.5.a 1-1.5 1
++tap_runtest 1-1.5.b 1-1.5.a 1
++tap_runtest 1-1.5.1 1-1.5.b 1
++tap_runtest 1-2 1-2.par1 1
++tap_runtest 1-2 1-2.par1 1
++tap_runtest 1-3 1-2.par1 -1
++
+ tap_finish
+
+ # vim: set noet: