40 lines
		
	
	
		
			1.5 KiB
		
	
	
	
		
			Bash
		
	
	
		
			Executable File
		
	
	
	
	
			
		
		
	
	
			40 lines
		
	
	
		
			1.5 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 -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"
 | |
|     echo "// Deprecated URL definition" >>"$OUTFILE"
 | |
|     echo "#define FIRMWARE_URL  \""$URL"\"" >>"$OUTFILE"
 | |
|   fi
 | |
| )
 |