056f4386aa
On Ubuntu, /bin/sh is a symlink to /bin/dash by default. While this is a rare use case, when /bin/sh is a symlink to /bin/bash, the annotation check fails due to a mismatch of CONFIG_UBUNTU_ODM_DRIVERS. debian/scripts/misc/arch-has-odm-enabled.sh always fails with bash. You can see it if you directly execute it. [with dash] $ dash debian/scripts/misc/arch-has-odm-enabled.sh amd64 cat: debian/scripts/misc/../../../debian.master/rules.d/hooks.mk: No such file or directory $ echo $? 0 [with bash] $ bash debian/scripts/misc/arch-has-odm-enabled.sh amd64 cat: debian/scripts/misc/../../../debian.master/rules.d/hooks.mk: No such file or directory debian/scripts/misc/arch-has-odm-enabled.sh: line 26: return: can only `return' from a function or sourced script $ echo $? 2 Bash provides stricter checks, hence the 'return' statement outside a function leads to an error. While it is trivial to fix, I wonder if we need this script in the first place. Its purpose is to make CONFIG_UBUNTU_ODM_DRIVERS a user-unconfigurable option. Given debian.*/config/annotations specifying the CONFIG set for each arch/flavour, why not handle CONFIG_UBUNTU_ODM_DRIVERS just like other normal CONFIG options? Users are still allow to toggle it from menuconfig etc., but I do not see a significant issue, as any trouble comes to users' responsibility when they change CONFIG options by themselves. Signed-off-by: Masahiro Yamada <masahiro.yamada@canonical.com> Signed-off-by: Andrea Righi <andrea.righi@canonical.com>