Skip to content
Snippets Groups Projects
Unverified Commit 170f7e8a authored by João Brázio's avatar João Brázio
Browse files

Rework Marlin's versioning system

parent c86d092e
No related branches found
No related tags found
No related merge requests found
......@@ -9,8 +9,16 @@ 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`
......@@ -33,7 +41,5 @@ echo "#define STRING_DISTRIBUTION_DATE" `date '+"%Y-%m-%d %H:%M"'` >>"$OUTFILE"
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
)
......@@ -76,7 +76,7 @@
#if ENABLED(USE_AUTOMATIC_VERSIONING)
#include "_Version.h"
#else
#include "Default_Version.h"
#include "Version.h"
#endif
// User-specified version info of this build to display in [Pronterface, etc] terminal window during
......
......@@ -38,6 +38,41 @@
#error Versions of Arduino IDE prior to 1.6.0 are no longer supported, please update your toolkit.
#endif
/**
* Marlin release, version and default string
*/
#ifndef SHORT_BUILD_VERSION
#error SHORT_BUILD_VERSION Information must be specified
#endif
#ifndef DETAILED_BUILD_VERSION
#error BUILD_VERSION Information must be specified
#endif
#ifndef STRING_DISTRIBUTION_DATE
#error STRING_DISTRIBUTION_DATE Information must be specified
#endif
#ifndef PROTOCOL_VERSION
#error PROTOCOL_VERSION Information must be specified
#endif
#ifndef MACHINE_NAME
#error MACHINE_NAME Information must be specified
#endif
#ifndef SOURCE_CODE_URL
#error SOURCE_CODE_URL Information must be specified
#endif
#ifndef DEFAULT_MACHINE_UUID
#error DEFAULT_MACHINE_UUID Information must be specified
#endif
#ifndef WEBSITE_URL
#error WEBSITE_URL Information must be specified
#endif
/**
* Dual Stepper Drivers
*/
......
......@@ -21,16 +21,54 @@
*/
/**
* This file is a placeholder for a file which could be distributed in an archive
* It takes the place of an automatically created "_Version.h" which is generated during the build process
* This file is the standard Marlin version identifier file, all fields can be
* overriden by the ones defined on _Version.h by using the Configuration.h
* directive USE_AUTOMATIC_VERSIONING.
*/
// #error "You must specify the following parameters related to your distribution"
#if true
/**
* Marlin release version identifier
*/
#define SHORT_BUILD_VERSION "1.1.0-RCBugFix"
#define DETAILED_BUILD_VERSION "1.1.0-RCBugFix From Archive"
/**
* Verbose version identifier which should contain a reference to the location
* from where the binary was downloaded or the source code was compiled.
*/
#define DETAILED_BUILD_VERSION SHORT_BUILD_VERSION " (Github)"
/**
* The STRING_DISTRIBUTION_DATE represents when the binary file was built,
* here we define this default string as the date where the latest release
* version was tagged.
*/
#define STRING_DISTRIBUTION_DATE "2016-04-16 12:00"
// It might also be appropriate to define a location where additional information can be found
// #define SOURCE_CODE_URL "http:// ..."
#endif
/**
* @todo: Missing documentation block
*/
#define PROTOCOL_VERSION "1.0"
/**
* Defines a generic printer name to be output to the LCD after booting Marlin.
*/
#define MACHINE_NAME "3D Printer"
/**
* The SOURCE_CODE_URL is the location where users will find the Marlin Source
* Code which is installed on the device. In most cases —unless the manufacturer
* has a distinct Github fork— the Source Code URL should just be the main
* Marlin repository.
*/
#define SOURCE_CODE_URL "https://github.com/MarlinFirmware/Marlin"
/**
* Default generic printer UUID.
*/
#define DEFAULT_MACHINE_UUID "cede2a2f-41a2-4748-9b12-c55c62f367ff"
/**
* The WEBSITE_URL is the location where users can get more information such as
* documentation about a specific Marlin release.
*/
#define WEBSITE_URL "http://marlinfw.org"
......@@ -66,43 +66,32 @@
#if ENABLED(USE_AUTOMATIC_VERSIONING)
#include "_Version.h"
#else
#include "Default_Version.h"
#include "Version.h"
#endif
#define PROTOCOL_VERSION "1.0"
#ifndef DEFAULT_MACHINE_NAME
#define DEFAULT_MACHINE_NAME "3D Printer"
#ifdef DEFAULT_SOURCE_CODE_URL
#undef SOURCE_CODE_URL
#define SOURCE_CODE_URL DEFAULT_SOURCE_CODE_URL
#endif
#ifdef CUSTOM_MACHINE_NAME
#undef MACHINE_NAME
#define MACHINE_NAME CUSTOM_MACHINE_NAME
#else
#define MACHINE_NAME DEFAULT_MACHINE_NAME
#endif
#ifndef DEFAULT_SOURCE_URL
/**
* The SOURCE_CODE_URL is the location where users will find the Marlin Source
* Code which is installed on the device. In most cases —unless the manufacturer
* has a distinct Github fork— the Source Code URL should just be the main
* Marlin repository.
*/
#define DEFAULT_SOURCE_URL "https://github.com/MarlinFirmware/Marlin"
#endif
#ifndef SOURCE_CODE_URL
#define SOURCE_CODE_URL DEFAULT_SOURCE_URL
#endif
#ifndef DETAILED_BUILD_VERSION
#error BUILD_VERSION Information must be specified
#ifdef DEFAULT_MACHINE_NAME
#undef MACHINE_NAME
#define MACHINE_NAME DEFAULT_MACHINE_NAME
#endif
#endif
#ifndef MACHINE_UUID
#define MACHINE_UUID "00000000-0000-0000-0000-000000000000"
#define MACHINE_UUID DEFAULT_MACHINE_UUID
#endif
#ifdef DEFAULT_WEBSITE_URL
#undef WEBSITE_URL
#define WEBSITE_URL DEFAULT_WEBSITE_URL
#endif
// Common LCD messages
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment