xref: /dpdk/devtools/update-abi.sh (revision a8d0d473)
1b09afc2aSDavid Marchand#!/bin/sh -e
2b09afc2aSDavid Marchand# SPDX-License-Identifier: BSD-3-Clause
3b09afc2aSDavid Marchand# Copyright(c) 2019 Intel Corporation
4b09afc2aSDavid Marchand
5b09afc2aSDavid Marchandabi_version=$1
6b09afc2aSDavid Marchandabi_version_file="./ABI_VERSION"
7b09afc2aSDavid Marchandupdate_path="lib drivers"
8b09afc2aSDavid Marchand
9b09afc2aSDavid Marchand# check ABI version format string
10b09afc2aSDavid Marchandcheck_abi_version() {
11b09afc2aSDavid Marchand      echo $1 | grep -q -e "^[[:digit:]]\{1,2\}\.[[:digit:]]\{1,2\}$"
12b09afc2aSDavid Marchand}
13b09afc2aSDavid Marchand
14b09afc2aSDavid Marchandif [ -z "$1" ]; then
15b09afc2aSDavid Marchand      # output to stderr
16b09afc2aSDavid Marchand      >&2 echo "Please provide ABI version"
17b09afc2aSDavid Marchand      exit 1
18b09afc2aSDavid Marchandfi
19b09afc2aSDavid Marchand
20b09afc2aSDavid Marchand# check version string format
21b09afc2aSDavid Marchandif ! check_abi_version $abi_version ; then
22b09afc2aSDavid Marchand      # output to stderr
23b09afc2aSDavid Marchand      >&2 echo "ABI version must be formatted as MAJOR.MINOR version"
24b09afc2aSDavid Marchand      exit 1
25b09afc2aSDavid Marchandfi
26b09afc2aSDavid Marchand
27b09afc2aSDavid Marchandif [ -n "$2" ]; then
28b09afc2aSDavid Marchand      abi_version_file=$2
29b09afc2aSDavid Marchandfi
30b09afc2aSDavid Marchand
31b09afc2aSDavid Marchandif [ -n "$3" ]; then
32b09afc2aSDavid Marchand      # drop $1 and $2
33b09afc2aSDavid Marchand      shift 2
34b09afc2aSDavid Marchand      # assign all other arguments as update paths
35b09afc2aSDavid Marchand      update_path=$@
36b09afc2aSDavid Marchandfi
37b09afc2aSDavid Marchand
38b09afc2aSDavid Marchandecho "New ABI version:" $abi_version
39b09afc2aSDavid Marchandecho "ABI_VERSION path:" $abi_version_file
40b09afc2aSDavid Marchandecho "Path to update:" $update_path
41b09afc2aSDavid Marchand
42b09afc2aSDavid Marchandecho $abi_version > $abi_version_file
43b09afc2aSDavid Marchand
44*a8d0d473SBruce Richardsonfind $update_path -name version.map -exec \
45b09afc2aSDavid Marchand      devtools/update_version_map_abi.py {} \
46b09afc2aSDavid Marchand      $abi_version \; -print
47