You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
45 lines
1.7 KiB
45 lines
1.7 KiB
#!/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 PROTOCOL_VERSION \"1.0\"" >>"$OUTFILE"
|
|
echo "#define DEFAULT_SOURCE_URL \"https://github.com/MarlinFirmware/Marlin\"" >>"$OUTFILE"
|
|
echo "#define DEFAULT_MACHINE_NAME \"Travis 3D Printer\"" >>"$OUTFILE"
|
|
echo "#define DEFAULT_MACHINE_UUID \"3442baa1-08ee-435b-8a10-99d185bd43b8\"" >>"$OUTFILE"
|
|
echo "" >>"$OUTFILE"
|
|
|
|
echo "#define BUILD_UNIX_DATETIME" `date +%s` >>"$OUTFILE"
|
|
echo "#define STRING_DISTRIBUTION_DATE" `date '+"%Y-%m-%d %H:%M"'` >>"$OUTFILE"
|
|
echo "" >>"$OUTFILE"
|
|
|
|
( set +e
|
|
cd "$DIR"
|
|
BRANCH=`git symbolic-ref -q --short HEAD`
|
|
if [ "x$BRANCH" == "x" ] ; 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 SHORT_BUILD_VERSION \"$VERSION\"" | sed "s/-.*/$BRANCH\"/" >>"$OUTFILE"
|
|
echo "#define DETAILED_BUILD_VERSION \"$VERSION\"" | sed "s/-/$BRANCH-/" >>"$OUTFILE"
|
|
else
|
|
VERSION=`git describe --tags --first-parent --always 2>/dev/null`
|
|
echo "#define SHORT_BUILD_VERSION \"$BRANCH\"" >>"$OUTFILE"
|
|
echo "#define DETAILED_BUILD_VERSION \"${BRANCH}-$VERSION\"" >>"$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"
|
|
fi
|
|
)
|
|
|