muele-marlin/LinuxAddons/bin/generate_version_header_for_marlin
2015-06-02 08:13:43 -05:00

36 lines
1.1 KiB
Bash
Executable file

#!/usr/bin/env bash
# generate_version_header_for_marlin
DIR=$1 export DIR
OUTFILE=$2 export OUTFILE
echo "/* This file is automatically generated by an Arduino hook" >$OUTFILE
echo " * Do not manually edit it" >>$OUTFILE
echo " * It does not get committed to the repository" >>$OUTFILE
echo " */" >>$OUTFILE
echo "" >>$OUTFILE
echo "#define BUILD_UNIX_DATETIME" `date +%s` >>$OUTFILE
echo "#define STRING_DISTRIBUTION_DATE" `date '+"%Y-%m-%d %H:%M"'` >>$OUTFILE
( set +e
cd $DIR
BRANCH=`git symbolic-ref --short HEAD`
if [ "x$BRANCH" == "xHEAD" ] ; then
BRANCH=""
elif [ "x$BRANCH" == "xDevelopment" ] ; then
BRANCH=" dev"
else
BRANCH=" $BRANCH"
fi
VERSION=`git describe --tags --first-parent 2>/dev/null`
if [ "x$VERSION" != "x" ] ; then
echo "#define BUILD_VERSION \"$VERSION\"" | sed "s/-/$BRANCH-/" >>$OUTFILE
fi
URL=`git config --local --get remote.origin.url | sed "sx.*github.com:xhttps://github.com/x" | sed "sx\.gitx/x"`
if [ "x$URL" != "x" ] ; then
echo "#define SOURCE_CODE_URL \""$URL"\"" >>$OUTFILE
echo "// Deprecated URL definition" >>$OUTFILE
echo "#define FIRMWARE_URL \""$URL"\"" >>$OUTFILE
fi
)