xref: /nrf52832-nimble/rt-thread/tools/kconfig-frontends/scripts/version.sh (revision 104654410c56c573564690304ae786df310c91fc)
1#!/bin/sh
2
3plain=0
4internal=0
5case "${1}" in
6    "")         ;;
7    --plain)    plain=1;;
8    --internal) internal=1;;
9    *)          printf "${0##*/}: unknow option '%s'\n" "${1}" >&2; exit 1;;
10esac
11if [ ${plain} -ne 0 -a ${internal} -ne 0 ]; then
12    printf "Can't print both plain and internal" >&2
13    printf " versions at the same time\n" >&2
14    exit 1
15fi
16
17ver_file="${0%/*}/../.version"
18k_ver="$(  head -n 1 "${ver_file}" |cut -d ' ' -f 1  )"
19k_cset="$( head -n 1 "${ver_file}" |cut -d ' ' -f 2  )"
20k_name="$( head -n 1 "${ver_file}" |cut -d ' ' -f 3- )"
21kf_ver="$( tail -n 1 "${ver_file}"                   )"
22
23if [ ${internal} -ne 0 ]; then
24    printf "%s\n" "${kf_ver}"
25    exit 0
26fi
27
28k_ver_plain="$( printf "%s" "${k_ver}"  \
29                |sed -e 's/-rc.*//;' )"
30
31case "${kf_ver}" in
32    git) kf_ver="-$( git rev-parse --short HEAD )"
33         k_ver_extra="$( printf "_%-7.7s" "${k_cset}" )"
34         ;;
35    *)   k_ver_extra="";;
36esac
37
38if [ "${plain}" -eq 1 ]; then
39    echo "${k_ver_plain}"
40else
41    echo "${k_ver}${k_ver_extra}.${kf_ver}"
42fi
43
44