1#!/bin/bash 2 3# Run this from the top directory of nanopb tree. 4# e.g. user@localhost:~/nanopb$ tools/set_version.sh nanopb-0.1.9-dev 5# It sets the version number in pb.h and generator/nanopb_generator.py. 6 7VERSION_NUMBER_ONLY=$(echo $1 | cut -d '-' -f 2) 8sed -i -e 's/nanopb_version\s*=\s*"[^"]*"/nanopb_version = "'$1'"/' generator/nanopb_generator.py 9sed -i -e 's/#define\s*NANOPB_VERSION\s*.*/#define NANOPB_VERSION "'$1'"/' pb.h 10sed -i -e 's/project(\s*nanopb\s*VERSION\s*[^)]*\s*LANGUAGES\s*C\s*)/project(nanopb VERSION '$VERSION_NUMBER_ONLY' LANGUAGES C)/' CMakeLists.txt 11 12VERSION_ONLY=$(echo $1 | sed 's/nanopb-//') 13if [[ $1 != *dev ]] 14then sed -i -e 's/"version":\s*"[^"]*"/"version": "'$VERSION_ONLY'"/' library.json 15fi 16 17sed -i -e 's/version =.*/version = "'$VERSION_ONLY'"/' conanfile.py 18sed -i -e 's/^version =.*/version = "'$VERSION_ONLY'"/' extra/poetry/pyproject.toml 19