[pacman-dev] [PATCH] makepkg: run pkgver() and prepare() with --noextract
Modifications made to the source before running with --noextract may alter the version string returned by pkgver(). Always run this function if present and check build status before proceeding. Fixes FS#46800. Also run prepare() when --noextract is used (unless --noprepare is specified). Signed-off-by: Allan McRae <allan@archlinux.org> --- scripts/makepkg.sh.in | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in index d5853ce..53163a2 100644 --- a/scripts/makepkg.sh.in +++ b/scripts/makepkg.sh.in @@ -2205,14 +2205,15 @@ elif (( !REPKG )); then fi extract_sources - if (( PKGVERFUNC )); then - update_pkgver - basever=$(get_full_version) - check_build_status - fi - if (( PREPAREFUNC )); then - run_prepare - fi +fi + +if (( PKGVERFUNC )); then + update_pkgver + basever=$(get_full_version) + check_build_status +fi +if (( PREPAREFUNC )); then + run_prepare fi if (( NOBUILD )); then -- 2.6.4
You would also need to update the man page in doc/makepkg.8.txt, which still says that -e/--noextract makes the prepare() function not run. ( This patch caught my attention because we recently fixed the MSYS2 version of pacman to behave as specified in the man page: https://github.com/Alexpux/MSYS2-pacman/issues/15 .) --David On Mon, Dec 14, 2015 at 5:56 AM, Allan McRae <allan@archlinux.org> wrote:
Modifications made to the source before running with --noextract may alter the version string returned by pkgver(). Always run this function if present and check build status before proceeding. Fixes FS#46800.
Also run prepare() when --noextract is used (unless --noprepare is specified).
Signed-off-by: Allan McRae <allan@archlinux.org> --- scripts/makepkg.sh.in | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-)
diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in index d5853ce..53163a2 100644 --- a/scripts/makepkg.sh.in +++ b/scripts/makepkg.sh.in @@ -2205,14 +2205,15 @@ elif (( !REPKG )); then fi
extract_sources - if (( PKGVERFUNC )); then - update_pkgver - basever=$(get_full_version) - check_build_status - fi - if (( PREPAREFUNC )); then - run_prepare - fi +fi + +if (( PKGVERFUNC )); then + update_pkgver + basever=$(get_full_version) + check_build_status +fi +if (( PREPAREFUNC )); then + run_prepare fi
if (( NOBUILD )); then -- 2.6.4
participants (2)
-
Allan McRae
-
David Grayson