From 3c70774629092f4a4945dc313e87735c6ab056d7 Mon Sep 17 00:00:00 2001 From: Idwer Vollering Date: Mon, 11 Jan 2021 14:02:29 +0100 Subject: util/board_status/board_status.sh: improve getopt detection and usage on non-linux OSes Signed-off-by: Idwer Vollering Change-Id: Iba50d8a8609eda974f12b0d9802e04d7371aed5b Reviewed-on: https://review.coreboot.org/c/coreboot/+/49307 Reviewed-by: David Hendricks Tested-by: build bot (Jenkins) --- util/board_status/board_status.sh | 18 ++++++++++++++++-- 1 file changed, 16 insertions(+), 2 deletions(-) diff --git a/util/board_status/board_status.sh b/util/board_status/board_status.sh index 0054421493..5235a289fc 100755 --- a/util/board_status/board_status.sh +++ b/util/board_status/board_status.sh @@ -212,7 +212,21 @@ Long options: " } -getopt -T +case $(uname) in + FreeBSD) + if [ ! -x /usr/local/bin/getopt ]; then + echo "Please install getopt, or build and install misc/getopt from ports." + exit $EXIT_FAILURE + else + GETOPT=/usr/local/bin/getopt + fi + ;; + *) + GETOPT=/usr/bin/getopt + ;; +esac + +$GETOPT -T if [ $? -ne 4 ]; then echo "GNU-compatible getopt(1) required." exit $EXIT_FAILURE @@ -222,7 +236,7 @@ LONGOPTS="cbmem:,clobber,help,image:,remote-host:,upload-results" LONGOPTS="${LONGOPTS},serial-device:,serial-speed:" LONGOPTS="${LONGOPTS},ssh-port:" -ARGS=$(getopt -o c:n:Chi:r:s:S:u -l "$LONGOPTS" -n "$0" -- "$@"); +ARGS=$($GETOPT -o c:n:Chi:r:s:S:u -l "$LONGOPTS" -n "$0" -- "$@"); if [ $? != 0 ] ; then echo "Terminating..." >&2 ; exit 1 ; fi eval set -- "$ARGS" while true ; do -- cgit v1.2.3