diff --git a/.travis.yml b/.travis.yml index 8d22bd06a..53e3dcbf1 100644 --- a/.travis.yml +++ b/.travis.yml @@ -3,10 +3,7 @@ language: c # before_install: # - # Travis runs a detached head. We need to find the current branch - - git checkout `git branch --contains HEAD | grep -v '*'` - # - # Also tags for the root(s) of the minor version(s) + # Fetch the tag information for the current branch - git fetch origin --tags # # Publish the buildroot script folder @@ -50,6 +47,10 @@ before_script: # Change current working directory to the build dir - cd ${TRAVIS_BUILD_DIR} # + # Generate custom version include + - generate_version_header_for_marlin ${TRAVIS_BUILD_DIR}/Marlin + - cat ${TRAVIS_BUILD_DIR}/Marlin/_Version.h + # script: # # Backup Configuration.h, Configuration_adv.h, and pins_RAMPS_14.h diff --git a/buildroot/bin/generate_version_header_for_marlin b/buildroot/bin/generate_version_header_for_marlin index 5fa9fb633..431008461 100755 --- a/buildroot/bin/generate_version_header_for_marlin +++ b/buildroot/bin/generate_version_header_for_marlin @@ -1,8 +1,7 @@ #!/usr/bin/env bash # generate_version_header_for_marlin -DIR="$1" -OUTFILE="$2" +DIR="${1}" BUILDATE=$(date '+%s') DISTDATE=$(date '+%Y-%m-%d %H:%M') @@ -10,16 +9,17 @@ DISTDATE=$(date '+%Y-%m-%d %H:%M') BRANCH=$(git -C "${DIR}" symbolic-ref -q --short HEAD) VERSION=$(git -C "${DIR}" describe --tags --first-parent 2>/dev/null) -# Voodoo version tag generator +if [ -z "${BRANCH}" ]; then + BRANCH=$(echo "${TRAVIS_BRANCH}") +fi + if [ -z "${VERSION}" ]; then VERSION=$(git -C "${DIR}" describe --tags --first-parent --always 2>/dev/null) - SHORT_BUILD_VERSION=$(echo "${VERSION}" | sed "s/-.*/${BRANCH}/") - DETAILED_BUILD_VERSION=$(echo "${VERSION}" | sed "s/-/${BRANCH}-/") -else - SHORT_BUILD_VERSION=$(echo "${BRANCH}") - DETAILED_BUILD_VERSION=$(echo "${BRANCH}-${VERSION}") fi +SHORT_BUILD_VERSION=$(echo "${BRANCH}") +DETAILED_BUILD_VERSION=$(echo "${BRANCH}-${VERSION}") + # Gets some misc options from their defaults DEFAULT_MACHINE_UUID=$(awk -F'"' \ '/#define DEFAULT_MACHINE_UUID/{ print $2 }' < "${DIR}/Version.h") @@ -32,10 +32,13 @@ SOURCE_CODE_URL=$(awk -F'"' \ WEBSITE_URL=$(awk -F'"' \ '/#define WEBSITE_URL/{ print $2 }' < "${DIR}/Version.h") -cat > "$OUTFILE" < "${DIR}/_Version.h" <