[pacman-dev] [PATCH] makepkg: fix --verifysource (FS#35057)
This should fix both the `use -f to override` and the dependency checking. Signed-off-by: William Giokas <1007380@gmail.com> --- scripts/makepkg.sh.in | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in index edfca3c..9159b2c 100644 --- a/scripts/makepkg.sh.in +++ b/scripts/makepkg.sh.in @@ -2836,7 +2836,7 @@ if { [[ -z $SIGNPKG ]] && check_buildenv "sign" "y"; } || [[ $SIGNPKG == 'y' ]]; fi fi -if (( ! PKGVERFUNC )); then +if (( ! PKGVERFUNC && ! VERIFYSOURCE )); then check_build_status fi @@ -2915,7 +2915,7 @@ if (( SOURCEONLY )); then exit 0 fi -if (( NODEPS || (NOBUILD && !DEP_BIN ) )); then +if (( VERIFYSOURCE || NODEPS || (NOBUILD && !DEP_BIN ) )); then # no warning message needed for nobuild if (( NODEPS )); then warning "$(gettext "Skipping dependency checks.")" -- 1.8.3.rc0.33.gde0977d
On 02/05/13 13:44, William Giokas wrote:
This should fix both the `use -f to override` and the dependency checking.
Signed-off-by: William Giokas <1007380@gmail.com> --- scripts/makepkg.sh.in | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in index edfca3c..9159b2c 100644 --- a/scripts/makepkg.sh.in +++ b/scripts/makepkg.sh.in @@ -2836,7 +2836,7 @@ if { [[ -z $SIGNPKG ]] && check_buildenv "sign" "y"; } || [[ $SIGNPKG == 'y' ]]; fi fi
-if (( ! PKGVERFUNC )); then +if (( ! PKGVERFUNC && ! VERIFYSOURCE )); then check_build_status fi
Fine.
@@ -2915,7 +2915,7 @@ if (( SOURCEONLY )); then exit 0 fi
-if (( NODEPS || (NOBUILD && !DEP_BIN ) )); then +if (( VERIFYSOURCE || NODEPS || (NOBUILD && !DEP_BIN ) )); then # no warning message needed for nobuild if (( NODEPS )); then warning "$(gettext "Skipping dependency checks.")"
I have been thinking about this... Your VCS tool will be in makedepends and needed to download those sources. Allan
On Thu, May 2, 2013 at 5:56 AM, Allan McRae <allan@archlinux.org> wrote:
On 02/05/13 13:44, William Giokas wrote:
-if (( ! PKGVERFUNC )); then +if (( ! PKGVERFUNC && ! VERIFYSOURCE )); then check_build_status fi
Fine.
I think this should probably be done in the check_build_status function just to mirror NOBUILD.
-if (( NODEPS || (NOBUILD && !DEP_BIN ) )); then +if (( VERIFYSOURCE || NODEPS || (NOBUILD && !DEP_BIN ) )); then # no warning message needed for nobuild if (( NODEPS )); then warning "$(gettext "Skipping dependency checks.")"
I have been thinking about this... Your VCS tool will be in makedepends and needed to download those sources.
Wouldn't it be cleaner if makepkg would handle the "sourcedeps" itself? I wouldn't want to install loads of unneeded makedepends on my chrootbuild host just to get git.
On Thu, May 02, 2013 at 06:28:51AM +0200, Jan Alexander Steffens wrote:
On Thu, May 2, 2013 at 5:56 AM, Allan McRae <allan@archlinux.org> wrote:
On 02/05/13 13:44, William Giokas wrote:
-if (( ! PKGVERFUNC )); then +if (( ! PKGVERFUNC && ! VERIFYSOURCE )); then check_build_status fi
Fine.
I think this should probably be done in the check_build_status function just to mirror NOBUILD.
I honestly don't mind. Either way works. Allan, which one do you prefer?
-if (( NODEPS || (NOBUILD && !DEP_BIN ) )); then +if (( VERIFYSOURCE || NODEPS || (NOBUILD && !DEP_BIN ) )); then # no warning message needed for nobuild if (( NODEPS )); then warning "$(gettext "Skipping dependency checks.")"
I have been thinking about this... Your VCS tool will be in makedepends and needed to download those sources.
Wouldn't it be cleaner if makepkg would handle the "sourcedeps" itself? I wouldn't want to install loads of unneeded makedepends on my chrootbuild host just to get git.
I've fixed this, when there's a decision where the first bit should go, then I'll submit this again. Thanks, -- William Giokas | KaiSforza GnuPG Key: 0x73CD09CF Fingerprint: F73F 50EF BBE2 9846 8306 E6B8 6902 06D8 73CD 09CF
On 02/05/13 14:28, Jan Alexander Steffens wrote:
-if (( NODEPS || (NOBUILD && !DEP_BIN ) )); then +if (( VERIFYSOURCE || NODEPS || (NOBUILD && !DEP_BIN ) )); then # no warning message needed for nobuild if (( NODEPS )); then warning "$(gettext "Skipping dependency checks.")"
I have been thinking about this... Your VCS tool will be in makedepends and needed to download those sources.
Wouldn't it be cleaner if makepkg would handle the "sourcedeps" itself?
Please clarify what you are suggesting here?
I wouldn't want to install loads of unneeded makedepends on my chrootbuild host just to get git.
On Thu, May 02, 2013 at 01:56:18PM +1000, Allan McRae wrote:
On 02/05/13 13:44, William Giokas wrote:
This should fix both the `use -f to override` and the dependency checking.
Signed-off-by: William Giokas <1007380@gmail.com> --- scripts/makepkg.sh.in | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in index edfca3c..9159b2c 100644 --- a/scripts/makepkg.sh.in +++ b/scripts/makepkg.sh.in @@ -2836,7 +2836,7 @@ if { [[ -z $SIGNPKG ]] && check_buildenv "sign" "y"; } || [[ $SIGNPKG == 'y' ]]; fi fi
-if (( ! PKGVERFUNC )); then +if (( ! PKGVERFUNC && ! VERIFYSOURCE )); then check_build_status fi
Fine.
@@ -2915,7 +2915,7 @@ if (( SOURCEONLY )); then exit 0 fi
-if (( NODEPS || (NOBUILD && !DEP_BIN ) )); then +if (( VERIFYSOURCE || NODEPS || (NOBUILD && !DEP_BIN ) )); then # no warning message needed for nobuild if (( NODEPS )); then warning "$(gettext "Skipping dependency checks.")"
I have been thinking about this... Your VCS tool will be in makedepends and needed to download those sources.
This is another issue. When --verifysource is run, download_sources should take the `fast` option to skip vcs sources. I'll work on that now, actually. Thanks, -- William Giokas | KaiSforza GnuPG Key: 0x73CD09CF Fingerprint: F73F 50EF BBE2 9846 8306 E6B8 6902 06D8 73CD 09CF
On 02/05/13 15:29, William Giokas wrote:
On Thu, May 02, 2013 at 01:56:18PM +1000, Allan McRae wrote:
On 02/05/13 13:44, William Giokas wrote:
This should fix both the `use -f to override` and the dependency checking.
Signed-off-by: William Giokas <1007380@gmail.com> --- scripts/makepkg.sh.in | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/scripts/makepkg.sh.in b/scripts/makepkg.sh.in index edfca3c..9159b2c 100644 --- a/scripts/makepkg.sh.in +++ b/scripts/makepkg.sh.in @@ -2836,7 +2836,7 @@ if { [[ -z $SIGNPKG ]] && check_buildenv "sign" "y"; } || [[ $SIGNPKG == 'y' ]]; fi fi
-if (( ! PKGVERFUNC )); then +if (( ! PKGVERFUNC && ! VERIFYSOURCE )); then check_build_status fi
Fine.
@@ -2915,7 +2915,7 @@ if (( SOURCEONLY )); then exit 0 fi
-if (( NODEPS || (NOBUILD && !DEP_BIN ) )); then +if (( VERIFYSOURCE || NODEPS || (NOBUILD && !DEP_BIN ) )); then # no warning message needed for nobuild if (( NODEPS )); then warning "$(gettext "Skipping dependency checks.")"
I have been thinking about this... Your VCS tool will be in makedepends and needed to download those sources.
This is another issue. When --verifysource is run, download_sources should take the `fast` option to skip vcs sources. I'll work on that now, actually.
If that is the case, then VERFIYSOURCE should just occur at the same place as GENINTEG and they can share the download. But look back a the discussion when we added this. I seem to recall we discussed that...
On Thu, May 2, 2013 at 7:29 AM, William Giokas <1007380@gmail.com> wrote:
This is another issue. When --verifysource is run, download_sources should take the `fast` option to skip vcs sources. I'll work on that now, actually.
Egads. If you do that, please give me a way to ensure all sources are downloaded and accounted for. Including VCS sources. I need such a mechanism for a makechrootpkg rewrite.
participants (3)
-
Allan McRae
-
Jan Alexander Steffens
-
William Giokas