#!/bin/sh
# config.sub: a neutral implementation for modern (cross-)systems.
# any-target: all are assumed to be supported, no door-keeper failures.
# this file is covered by COPYING.BAUTOMAKE.
set -eu
mb_script="$0"
mb_status=1
mb_dstamp='2020-01-18'
mb_target="${1:-}"
mb_extarg="${2:-}"
export LC_ALL=C
config_usage()
{
printf 'usage:\n' >&2
printf '\t%s [OPTION]\n' "$mb_script" >&2
printf '\t%s (cross-)target-alias\n\n' "$mb_script" >&2
printf 'Options:\n' >&2
printf '\t%s\n' \
'-h, --help' \
'-t, --time-stamp' \
'-v, --version' \
>&2
printf '\nThis is a neutral config.sub implementation for modern (cross-)systems.' >&2
printf '\nAll (cross-)targets are assumed to be supported, and there are no door-keeper failures.\n\n' >&2
printf 'pkgsite: https://git.foss21.org/bautomake\n' >&2
printf 'pkgbugs: bugs.automake@foss21.org\n' >&2
exit ${mb_status}
}
for arg ; do
case "$arg" in
-h | --help)
mb_status=0
config_usage
;;
-t | --time-stamp)
printf '%s\n' "$mb_dstamp"
exit 0
;;
-v | --version)
printf 'foss21.org config.sub (%s)\n' "$mb_dstamp"
exit 0
;;
-*)
printf '%s: the argument `%s is not supported.\n\n' "$mb_script" "$arg'" >&2
exit 2
esac
done
# required target argument
if [ -z "$mb_target" ]; then
config_usage
fi
# no unused arguments
if [ -n "$mb_extarg" ]; then
mb_status=2
config_usage
fi
# validation
if [ "$mb_target" != ${mb_target%% *} ]; then
printf '%s: input error: target alias may not contain spaces.\n\n' "$mb_script" >&2
exit 2
fi
# compatible output
printf '%s\n' "$mb_target"
# all done
exit 0