xref: /f-stack/dpdk/devtools/update-abi.sh (revision 2d9fd380)
14418919fSjohnjiang#!/bin/sh -e
24418919fSjohnjiang# SPDX-License-Identifier: BSD-3-Clause
34418919fSjohnjiang# Copyright(c) 2019 Intel Corporation
44418919fSjohnjiang
54418919fSjohnjiangabi_version=$1
64418919fSjohnjiangabi_version_file="./ABI_VERSION"
74418919fSjohnjiangupdate_path="lib drivers"
84418919fSjohnjiang
94418919fSjohnjiang# check ABI version format string
104418919fSjohnjiangcheck_abi_version() {
114418919fSjohnjiang      echo $1 | grep -q -e "^[[:digit:]]\{1,2\}\.[[:digit:]]\{1,2\}$"
124418919fSjohnjiang}
134418919fSjohnjiang
144418919fSjohnjiangif [ -z "$1" ]; then
154418919fSjohnjiang      # output to stderr
164418919fSjohnjiang      >&2 echo "Please provide ABI version"
174418919fSjohnjiang      exit 1
184418919fSjohnjiangfi
194418919fSjohnjiang
204418919fSjohnjiang# check version string format
214418919fSjohnjiangif ! check_abi_version $abi_version ; then
224418919fSjohnjiang      # output to stderr
234418919fSjohnjiang      >&2 echo "ABI version must be formatted as MAJOR.MINOR version"
244418919fSjohnjiang      exit 1
254418919fSjohnjiangfi
264418919fSjohnjiang
274418919fSjohnjiangif [ -n "$2" ]; then
284418919fSjohnjiang      abi_version_file=$2
294418919fSjohnjiangfi
304418919fSjohnjiang
314418919fSjohnjiangif [ -n "$3" ]; then
324418919fSjohnjiang      # drop $1 and $2
334418919fSjohnjiang      shift 2
344418919fSjohnjiang      # assign all other arguments as update paths
354418919fSjohnjiang      update_path=$@
364418919fSjohnjiangfi
374418919fSjohnjiang
384418919fSjohnjiangecho "New ABI version:" $abi_version
394418919fSjohnjiangecho "ABI_VERSION path:" $abi_version_file
404418919fSjohnjiangecho "Path to update:" $update_path
414418919fSjohnjiang
424418919fSjohnjiangecho $abi_version > $abi_version_file
434418919fSjohnjiang
44*2d9fd380Sjfb8856606find $update_path -name version.map -exec \
454418919fSjohnjiang      devtools/update_version_map_abi.py {} \
464418919fSjohnjiang      $abi_version \; -print
47