This is partial revert of 8454daa7feef (makepkg: run pkgver() and
prepare() with --noextract).

Reasoning for the reversion (copied from FS#43498):

    Running prepare() when --noextract is used no longer allows running
    'makepkg -o && makepkg -e' with any PKGBUILD that applies patches in
    prepare(). [1]

    Sure there's --noprepare which restores the old behavior, but that's
    a lot of extra typing for what I believe is a much more common use
    of --noextract.

    For OP's use case of doing git bisects, you can specify the commit
    in the source array and thus skip --noextract since makepkg will
    checkout the correct commit each time.

    [1] I often extract the sources using 'makepkg -o', manually edit
    some source files, and then use 'makepkg -e' to package it (while
    possibly repeating the edit/package steps).
---
 doc/makepkg.8.txt     | 10 +++++-----
 scripts/makepkg.sh.in |  6 +++---
 2 files changed, 8 insertions(+), 8 deletions(-)

diff --git a/doc/makepkg.8.txt b/doc/makepkg.8.txt
index 6f3f6b0..2dff1b1 100644
--- a/doc/makepkg.8.txt
+++ b/doc/makepkg.8.txt
@@ -55,11 +55,11 @@ Options
        installed.
 
 *-e, \--noextract*::
-       Do not extract source files; use whatever source already exists in the
-       $srcdir/ directory. This is handy if you want to go into $srcdir/ and
-       manually patch or tweak code, then make a package out of the result.
-       Keep in mind that creating a patch may be a better solution to allow
-       others to use your PKGBUILD.
+       Do not extract source files or run the prepare() function (if present);
+       use whatever source already exists in the $srcdir/ directory. This is
+       handy if you want to go into $srcdir/ and manually patch or tweak code,
+       then make a package out of the result. Keep in mind that creating a
+       patch may be a better solution to allow others to use your PKGBUILD.
 
 *\--verifysource*::
        For each source file in the source array of PKGBUILD, download the file
diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in
index 80b95f4..2fa3058 100644
--- a/scripts/makepkg.sh.in
+++ b/scripts/makepkg.sh.in
@@ -2206,6 +2206,9 @@ if (( !REPKG )); then
                fi
 
                extract_sources
+               if (( PREPAREFUNC )); then
+                       run_prepare
+               fi
        fi
 
        if (( PKGVERFUNC )); then
@@ -2213,9 +2216,6 @@ if (( !REPKG )); then
                basever=$(get_full_version)
                check_build_status
        fi
-       if (( PREPAREFUNC )); then
-               run_prepare
-       fi
 fi
 
 if (( NOBUILD )); then
-- 
2.7.1

Reply via email to