xref: /aosp_15_r20/external/nanopb-c/tools/set_version.sh (revision c8d645cafcee3f91213d30caa0fe303887010b9b)
1*c8d645caSAndroid Build Coastguard Worker#!/bin/bash
2*c8d645caSAndroid Build Coastguard Worker
3*c8d645caSAndroid Build Coastguard Worker# Run this from the top directory of nanopb tree.
4*c8d645caSAndroid Build Coastguard Worker# e.g. user@localhost:~/nanopb$ tools/set_version.sh nanopb-0.1.9-dev
5*c8d645caSAndroid Build Coastguard Worker# It sets the version number in pb.h and generator/nanopb_generator.py.
6*c8d645caSAndroid Build Coastguard Worker
7*c8d645caSAndroid Build Coastguard Workersed -i -e 's/nanopb_version\s*=\s*"[^"]*"/nanopb_version = "'$1'"/' generator/nanopb_generator.py
8*c8d645caSAndroid Build Coastguard Workersed -i -e 's/#define\s*NANOPB_VERSION\s*.*/#define NANOPB_VERSION '$1'/' pb.h
9*c8d645caSAndroid Build Coastguard Workersed -i -e 's/set(\s*nanopb_VERSION_STRING\s*[^)]*)/set(nanopb_VERSION_STRING '$1')/' CMakeLists.txt
10*c8d645caSAndroid Build Coastguard Worker
11*c8d645caSAndroid Build Coastguard WorkerVERSION_ONLY=$(echo $1 | sed 's/nanopb-//')
12*c8d645caSAndroid Build Coastguard Workerif [[ $1 != *dev ]]
13*c8d645caSAndroid Build Coastguard Workerthen sed -i -e 's/"version":\s*"[^"]*"/"version": "'$VERSION_ONLY'"/' library.json
14*c8d645caSAndroid Build Coastguard Workerfi
15*c8d645caSAndroid Build Coastguard Worker
16*c8d645caSAndroid Build Coastguard Workersed -i -e 's/version =.*/version = "'$VERSION_ONLY'"/' extra/poetry/pyproject.toml
17