diff --git a/hasher/hsh b/hasher/hsh index 2bda509..c707fdc 100755 --- a/hasher/hsh +++ b/hasher/hsh @@ -50,6 +50,7 @@ Options: --no-cache do not use initroot cache; --no-contents-indices do not use content indices; --no-repackage-source do not repackage source along with binaries; + --check-program=CHECK_PROGRAM run specific program as sisyphus_check; --no-sisyphus-check-in[=LIST] do not run sisyphus_check input tests [specified in comma-separated LIST]; --no-sisyphus-check[=LIST] do not run sisyphus_check tests @@ -97,6 +98,7 @@ eval set -- "$TEMP" cleanup_only= initroot_only= +check_program= while :; do case "$1" in --apt-config) @@ -135,6 +137,9 @@ while :; do ;; --no-repackage-source|--repackage-source) repackage_source="$1" ;; + --check-program) shift + [ -x "$1" ] && check_program="$1" + ;; --no-sisyphus-check) shift [ -n "$1" ] && no_sisyphus_check="$1" || no_sisyphus_check=all ;; @@ -370,6 +375,7 @@ handle_package() ${no_stuff:+--no-stuff} \ ${exclude_docs:+--excludedocs} \ ${save_fakeroot:+--save-fakeroot} \ + ${check_program:+--check-program="$check_program"} \ ${no_sisyphus_check:+--no-sisyphus-check="$no_sisyphus_check"} \ ${no_sisyphus_check_in:+--no-sisyphus-check-in="$no_sisyphus_check_in"} \ ${no_sisyphus_check_out:+--no-sisyphus-check-out="$no_sisyphus_check_out"} \ diff --git a/hasher/hsh-rebuild b/hasher/hsh-rebuild index c59940f..6ad8a64 100755 --- a/hasher/hsh-rebuild +++ b/hasher/hsh-rebuild @@ -38,6 +38,7 @@ Options: --install-only do not build, stop after installing build dependencies; --mountpoints=LIST comma-separated list of known mount points; --nodeps ignore package dependencies (dangerous); + --check-program=CHECK_PROGRAM run specific program as sisyphus_check; --no-sisyphus-check-in[=LIST] do not run sisyphus_check input tests [specified in LIST]; --no-sisyphus-check[=LIST] do not run sisyphus_check tests [specified in LIST]; --no-sisyphus-check-out[=LIST] do not run sisyphus_check output tests [specified in LIST]; @@ -74,6 +75,7 @@ eval set -- "$TEMP" nodeps= install_only= source_only= +check_program= while :; do case "$1" in --args) shift; rpmargs="$1" @@ -92,6 +94,9 @@ while :; do ;; --no-lock) no_lock=1 ;; + --check-program) shift + [ -x "$1" ] && check_program="$1" + ;; --no-sisyphus-check) shift [ -n "$1" ] && no_sisyphus_check="$1" || no_sisyphus_check=all ;; @@ -149,6 +154,10 @@ if [ -n "$prog_query_req" -a -n "$query_repackage" ]; then show_usage '--query-req-prog and --query-repackage are mutually exclusive options.' fi +if [ -z "$check_program" ]; then + check_program=${SISYPHUS_CHECK-sisyphus_check} +fi + if [ -z "$workdir" ]; then # Exactly two arguments. [ "$#" -ge 2 ] || show_usage 'Insufficient arguments.' diff --git a/hasher/hsh-sh-rebuild-functions b/hasher/hsh-sh-rebuild-functions index a317fe8..c357836 100644 --- a/hasher/hsh-sh-rebuild-functions +++ b/hasher/hsh-sh-rebuild-functions @@ -197,7 +197,7 @@ run_sisyphus_check() create_entry_header cat >>"$entry" <<__EOF__ -sisyphus_check --no-check="$(quote_shell "$no_check")" "$dir" +$check_program --no-check="$(quote_shell "$no_check")" "$dir" __EOF__ wlimit_time_elapsed=$wlimit_time_long wlimit_time_idle=$wlimit_time_long wlimit_bytes_written=$wlimit_bytes_out \