On 11/03/2019 11:32, Unai Martinez-Corral wrote:
> Signed-off-by: Unai Martinez-Corral <[email protected]>
> ---
>  scripts/qemu-binfmt-conf.sh | 21 +++++++++++++++------
>  1 file changed, 15 insertions(+), 6 deletions(-)
> 
> diff --git a/scripts/qemu-binfmt-conf.sh b/scripts/qemu-binfmt-conf.sh
> index a516181a3a..db85798e76 100755
> --- a/scripts/qemu-binfmt-conf.sh
> +++ b/scripts/qemu-binfmt-conf.sh
> @@ -196,8 +196,7 @@ Options and associated environment variables:
> 
>  Argument             Env-variable     Description
>  TARGETS              QEMU_TARGETS     A single arch name or a list of them 
> (see all names below);
> -                                      if empty, configure/clear all known 
> targets;
> -                                      if 'NONE', no interpreter is 
> configured.
> +                                      if empty, configure/clear all known 
> targets.
>  -h|--help                             display this usage
>  -Q|--path PATH:      QEMU_PATH        set path to qemu interpreter(s)
>  -F|--suffix SUFFIX:  QEMU_SUFFIX      add a suffix to the default 
> interpreter name
> @@ -209,6 +208,8 @@ TARGETS              QEMU_TARGETS     A single arch name 
> or a list of them (see
>                       SYSTEMDDIR
>  -c|--clear:          QEMU_CLEAR       (yes) remove registered interpreters 
> for target TARGETS;
>                                        then exit.
> +-t|--test|--dry-run: QEMU_TEST        (yes) test the setup with the provided 
> arguments, but do not
> +                                      configure any of the interpreters.
>  -s|--systemd:                         don't write into /proc, generate 
> file(s) for
>                                        systemd-binfmt.service; environment 
> variable HOST_ARCH
>                                        allows to override 'uname' to generate 
> configuration files
> @@ -222,6 +223,7 @@ QEMU_SUFFIX=$QEMU_SUFFIX
>  QEMU_PERSISTENT=$QEMU_PERSISTENT
>  QEMU_CREDENTIAL=$QEMU_CREDENTIAL
>  QEMU_CLEAR=$QEMU_CLEAR
> +QEMU_TEST=$QEMU_TEST
> 
>  To import templates with update-binfmts, use :
> 
> @@ -317,9 +319,6 @@ qemu_set_binfmts() {
> 
>      # reduce the list of target interpreters to those given in the CLI
>      [ $# -eq 0 ] && targets="${QEMU_TARGETS:-}" || targets="$@"
> -    if [ "x$targets" = "xNONE" ] ; then
> -      return
> -    fi
>      qemu_check_target_list $targets
> 
>      # register the interpreter for each target except for the native one
> @@ -376,12 +375,16 @@ QEMU_SUFFIX="${QEMU_SUFFIX:-}"
>  QEMU_PERSISTENT="${QEMU_PERSISTENT:-no}"
>  QEMU_CREDENTIAL="${QEMU_CREDENTIAL:-no}"
>  QEMU_CLEAR="${QEMU_CLEAR:-no}"
> +QEMU_TEST="${QEMU_TEST:-no}"
> 
> -options=$(getopt -o cdsQ:S:e:hcp -l 
> clear,debian,systemd,path:,suffix:,exportdir:,help,credential,persistent -- 
> "$@")
> +options=$(getopt -o tcdsQ:S:e:hcp -l 
> test,dry-runclear,debian,systemd,path:,suffix:,exportdir:,help,credential,persistent
>  -- "$@")

missing comma here.

>  eval set -- "$options"
> 
>  while true ; do
>      case "$1" in
> +    -t|--test|--dry-run)

We don't need multiple parameter for the same effect. You must choose
between --test and --dry-run.

> +      QEMU_TEST="yes"
> +    ;;
>      -c|--clear)
>          QEMU_CLEAR="yes"
>          ;;
> @@ -438,4 +441,10 @@ if [ "x$QEMU_CLEAR" = "xyes" ] ; then
>    exit
>  fi
> 
> +if [ "x$QEMU_TEST" = "xyes" ] ; then
> +    skip(){
> +    :;}
> +    BINFMT_SET=skip

Why do you need a function?
Can't you set directly BINFMT_SET to ':'?

Thanks,
Laurent

Reply via email to