26 lines
1021 B
Bash
Executable File
26 lines
1021 B
Bash
Executable File
#!/bin/bash
|
|
|
|
# See https://reproducible-builds.org/specs/source-date-epoch/
|
|
# get SOURCE_DATE_EPOCH with UNIX time_t
|
|
if [ -d ".git" ];
|
|
then
|
|
SOURCE_DATE_EPOCH=$(git log -1 --pretty=%ct)
|
|
else
|
|
echo "Error: intended for use from within a git repository"
|
|
exit 1
|
|
fi
|
|
GTSAM_SNAPSHOT_VERSION=$(date -d @$SOURCE_DATE_EPOCH +%Y%m%d-%H%M)
|
|
|
|
GTSAM_SNAPSHOT_VERSION+="-git-"
|
|
GTSAM_SNAPSHOT_VERSION+=`git rev-parse --short=8 HEAD`
|
|
GTSAM_SNAPSHOT_VERSION+="-"
|
|
|
|
# x.y.z version components:
|
|
GTSAM_VERSION_MAJOR=$(grep "(GTSAM_VERSION_MAJOR" CMakeLists.txt | sed -r 's/^.*GTSAM_VERSION_MAJOR\s*([0-9])*.*$/\1/g')
|
|
GTSAM_VERSION_MINOR=$(grep "(GTSAM_VERSION_MINOR" CMakeLists.txt | sed -r 's/^.*GTSAM_VERSION_MINOR\s*([0-9])*.*$/\1/g')
|
|
GTSAM_VERSION_PATCH=$(grep "(GTSAM_VERSION_PATCH" CMakeLists.txt | sed -r 's/^.*GTSAM_VERSION_PATCH\s*([0-9])*.*$/\1/g')
|
|
|
|
GTSAM_VER_MM="${GTSAM_VERSION_MAJOR}.${GTSAM_VERSION_MINOR}"
|
|
GTSAM_VER_MMP="${GTSAM_VERSION_MAJOR}.${GTSAM_VERSION_MINOR}.${GTSAM_VERSION_PATCH}"
|
|
GTSAM_VERSION_STR=$GTSAM_VER_MMP
|