chore(build): factor out functions to modify PKGBUILDs
Component: pkgctl build Signed-off-by: Christian Heusel <christian@heusel.eu>
This commit is contained in:
parent
343a2b5d4c
commit
db8c157eea
|
@ -18,6 +18,8 @@ source "${_DEVTOOLS_LIBRARY_DIR}"/lib/util/git.sh
|
|||
source "${_DEVTOOLS_LIBRARY_DIR}"/lib/util/srcinfo.sh
|
||||
# shellcheck source=src/lib/util/pacman.sh
|
||||
source "${_DEVTOOLS_LIBRARY_DIR}"/lib/util/pacman.sh
|
||||
# shellcheck source=src/lib/util/pkgbuild.sh
|
||||
source "${_DEVTOOLS_LIBRARY_DIR}"/lib/util/pkgbuild.sh
|
||||
# shellcheck source=src/lib/valid-repos.sh
|
||||
source "${_DEVTOOLS_LIBRARY_DIR}"/lib/valid-repos.sh
|
||||
# shellcheck source=src/lib/valid-tags.sh
|
||||
|
@ -374,20 +376,14 @@ pkgctl_build() {
|
|||
|
||||
# update pkgver
|
||||
if [[ -n ${PKGVER} ]]; then
|
||||
if [[ $(type -t pkgver) == function ]]; then
|
||||
# TODO: check if die or warn, if we provide _commit _gitcommit setter maybe?
|
||||
warning 'setting pkgver variable has no effect if the PKGBUILD has a pkgver() function'
|
||||
fi
|
||||
msg "Bumping pkgver to ${PKGVER}"
|
||||
grep --extended-regexp --quiet --max-count=1 "^pkgver=${pkgver}$" PKGBUILD || die "Non-standard pkgver declaration"
|
||||
sed --regexp-extended "s|^(pkgver=)${pkgver}$|\1${PKGVER}|g" -i PKGBUILD
|
||||
pkgbuild_set_pkgver "${PKGVER}"
|
||||
fi
|
||||
|
||||
# update pkgrel
|
||||
if [[ -n ${PKGREL} ]]; then
|
||||
msg "Bumping pkgrel to ${PKGREL}"
|
||||
grep --extended-regexp --quiet --max-count=1 "^pkgrel=${pkgrel}$" PKGBUILD || die "Non-standard pkgrel declaration"
|
||||
sed --regexp-extended "s|^(pkgrel=)${pkgrel}$|\1${PKGREL}|g" -i PKGBUILD
|
||||
pkgbuild_set_pkgrel "${PKGREL}"
|
||||
fi
|
||||
|
||||
# edit PKGBUILD
|
||||
|
|
|
@ -0,0 +1,43 @@
|
|||
#!/hint/bash
|
||||
#
|
||||
# SPDX-License-Identifier: GPL-3.0-or-later
|
||||
|
||||
[[ -z ${DEVTOOLS_INCLUDE_UTIL_PKGBUILD_SH:-} ]] || return 0
|
||||
DEVTOOLS_INCLUDE_UTIL_PKGBUILD_SH=1
|
||||
|
||||
_DEVTOOLS_LIBRARY_DIR=${_DEVTOOLS_LIBRARY_DIR:-@pkgdatadir@}
|
||||
|
||||
source /usr/share/makepkg/util/message.sh
|
||||
|
||||
set -e
|
||||
|
||||
|
||||
# set the pkgver variable in a PKGBUILD
|
||||
# assumes that the pkgbuild is sourced to detect the presence of a pkgver function
|
||||
pkgbuild_set_pkgver() {
|
||||
local new_pkgver=$1
|
||||
local pkgver=${pkgver}
|
||||
|
||||
if [[ $(type -t pkgver) == function ]]; then
|
||||
# TODO: check if die or warn, if we provide _commit _gitcommit setter maybe?
|
||||
warning 'setting pkgver variable has no effect if the PKGBUILD has a pkgver() function'
|
||||
fi
|
||||
|
||||
if ! grep --extended-regexp --quiet --max-count=1 "^pkgver=${pkgver}$" PKGBUILD; then
|
||||
die "Non-standard pkgver declaration"
|
||||
fi
|
||||
sed --regexp-extended "s|^(pkgver=)${pkgver}$|\1${new_pkgver}|g" --in-place PKGBUILD
|
||||
}
|
||||
|
||||
# set the pkgrel variable in a PKGBUILD
|
||||
# assumes that the pkgbuild is sourced so pkgrel is present
|
||||
pkgbuild_set_pkgrel() {
|
||||
local new_pkgrel=$1
|
||||
local pkgrel=${pkgrel}
|
||||
|
||||
if ! grep --extended-regexp --quiet --max-count=1 "^pkgrel=${pkgrel}$" PKGBUILD; then
|
||||
die "Non-standard pkgrel declaration"
|
||||
fi
|
||||
sed --regexp-extended "s|^(pkgrel=)${pkgrel}$|\1${new_pkgrel}|g" --in-place PKGBUILD
|
||||
}
|
||||
|
Loading…
Reference in New Issue