run: use getopt

This commit is contained in:
Ciro Santilli
2018-08-20 09:18:15 +01:00
parent 0f6917410c
commit 036225b268
15 changed files with 268 additions and 171 deletions

82
build
View File

@@ -18,75 +18,101 @@ kernel_config_fragments=
post_script_args=
qemu_sdl='--enable-sdl --with-sdlabi=2.0'
v=0
while getopts "B:b:C:c:fGj:hIiK:klp:qSs:v${common_getopts_flags}" OPT; do
case "$OPT" in
B)
echo "$OPTARG" >> "$br2_cli_file"
parsed=$(getopt \
-o "B:b:C:c:fGj:hIiK:klp:qSs:v${common_getopt_flags}" \
-l "\
br-config,\
br-config-fragment,\
help,\
kernel-config,\
kernel-config-fragment,\
${common_getopt_flags_long}\
" \
-- "$@")
eval set -- "$parsed"
while true; do
case "$1" in
-B|--br-config)
echo "$2" >> "$br2_cli_file"
shift 2
;;
b)
config_fragments="${config_fragments} $(common_abspath "${OPTARG}")"
-b|--br-config-fragment)
config_fragments="${config_fragments} $(common_abspath "$2")"
shift 2
;;
C)
echo "$OPTARG" >> "$kernel_config_fragment_cli_file_tmp"
-C|--kernel-config)
echo "$2" >> "$kernel_config_fragment_cli_file_tmp"
shift 2
;;
c)
kernel_config_fragments="${kernel_config_fragments} $(common_abspath "${OPTARG}")"
-c|--kernel-config-fragment)
kernel_config_fragments="${kernel_config_fragments} $(common_abspath "$2")"
shift 2
;;
f)
-f)
configure=false
shift
;;
h)
-h)
echo "https://github.com/cirosantilli/linux-kernel-module-cheat#build" 2>&1
exit
;;
I)
-I)
echo "
BR2_TARGET_ROOTFS_CPIO=n
BR2_TARGET_ROOTFS_EXT2=n
BR2_TARGET_ROOTFS_INITRAMFS=y
" >> "$br2_cli_file"
shift
;;
i)
-i)
echo "
BR2_TARGET_ROOTFS_CPIO=y
BR2_TARGET_ROOTFS_EXT2=n
BR2_TARGET_ROOTFS_INITRAMFS=n
" >> "$br2_cli_file"
shift
;;
j)
j="$OPTARG"
-j)
j="$2"
shift 2
;;
K)
linux_kernel_custom_config_file="$(common_abspath "${OPTARG}")"
-K)
linux_kernel_custom_config_file="$(common_abspath "$2")"
shift 2
;;
k)
-k)
extra_make_args="${extra_make_args} kernel_module-reconfigure \\
"
shift
;;
l)
-l)
linux_reconfigure=true
extra_make_args="${extra_make_args} linux-reconfigure \\
"
shift
;;
p)
post_script_args="$OPTARG"
-p)
post_script_args="$2"
shift 2
;;
q)
-q)
extra_make_args="${extra_make_args} host-qemu-reconfigure \\
"
shift
;;
S)
-S)
qemu_sdl=
shift
;;
v)
-v)
v=1
shift
;;
?)
common_getopts_case "$OPT"
*)
common_getopt_case "$@"
;;
esac
done
shift $(($OPTIND - 1))
if "$common_gem5"; then
extra_make_args="${extra_make_args} gem5-reconfigure \\
"