Skip to content
GitLab
Explore
Sign in
Register
Primary navigation
Search or go to…
Project
M
marlin-anet-a8
Manage
Activity
Members
Labels
Plan
Issues
Issue boards
Milestones
Wiki
Code
Merge requests
Repository
Branches
Commits
Tags
Repository graph
Compare revisions
Snippets
Build
Pipelines
Jobs
Pipeline schedules
Artifacts
Deploy
Releases
Package registry
Container Registry
Model registry
Operate
Environments
Terraform modules
Monitor
Incidents
Service Desk
Analyze
Value stream analytics
Contributor analytics
CI/CD analytics
Repository analytics
Model experiments
Help
Help
Support
GitLab documentation
Compare GitLab plans
Community forum
Contribute to GitLab
Provide feedback
Keyboard shortcuts
?
Snippets
Groups
Projects
Show more breadcrumbs
Jonas Leder
marlin-anet-a8
Commits
8afd94ed
Commit
8afd94ed
authored
9 years ago
by
Richard Wackerbarth
Browse files
Options
Downloads
Patches
Plain Diff
Version Generator for PlatformIO Builds
parent
4c2948a8
No related branches found
No related tags found
No related merge requests found
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
PlatformIOAddons/generate_version_header_for_marlin
+57
-0
57 additions, 0 deletions
PlatformIOAddons/generate_version_header_for_marlin
PlatformIOAddons/platformio.ini
+8
-2
8 additions, 2 deletions
PlatformIOAddons/platformio.ini
with
65 additions
and
2 deletions
PlatformIOAddons/generate_version_header_for_marlin
0 → 100755
+
57
−
0
View file @
8afd94ed
#/usr/bin/env python -
from SCons.Script import DefaultEnvironment
env = DefaultEnvironment()
import os
import errno
def make_sure_path_exists(path):
try:
os.makedirs(path)
except OSError as exception:
if exception.errno != errno.EEXIST:
raise
import subprocess
make_sure_path_exists(env.subst('$BUILDSRC_DIR'))
from datetime import datetime
import time
import string
import re
p = subprocess.Popen(['git', 'symbolic-ref', '-q', '--short', 'HEAD'], stdout=subprocess.PIPE)
BRANCH = p.stdout.readline().rstrip()
p = subprocess.Popen(['git', 'describe', '--tags', '--first-parent'], stdout=subprocess.PIPE)
RAW_VERSION = p.stdout.readline().rstrip()
s = re.search('(.*)(-.*)(-.*)',RAW_VERSION)
SHORT_VERSION = s.group(1)+' '+BRANCH
DETAILED_VERSION = string.replace(RAW_VERSION,'-',' '+BRANCH+'-',1)
p = subprocess.Popen(['git', 'config', '--local', '--get', 'remote.origin.url'], stdout=subprocess.PIPE)
try:
s = re.search('(.*github.com:)(.*)', p.stdout.readline().rstrip())
URL = string.replace("https://github.com/"+s.group(2), ".git", "/")
url_text = """#define SOURCE_CODE_URL "%s"
// Deprecated URL definition
#define FIRMWARE_URL "%s"
""" % (URL, URL)
except Exception, e:
url_text = ""
version_header_text = """/* This file is automatically generated by a compile time hook
* Do not manually edit it
* It does not get committed to the repository
*/
#define BUILD_UNIX_DATETIME %s
#define STRING_DISTRIBUTION_DATE "%s"
#define SHORT_BUILD_VERSION "%s"
#define DETAILED_BUILD_VERSION "%s"
%s""" % (int(time.time()), datetime.now().strftime('%Y-%m-%d %H:%M'),SHORT_VERSION, DETAILED_VERSION, url_text)
open(env.subst('$BUILDSRC_DIR/_Version.h'), 'w').write(version_header_text)
This diff is collapsed.
Click to expand it.
PlatformIOAddons/platformio.ini
+
8
−
2
View file @
8afd94ed
...
...
@@ -18,19 +18,24 @@ src_dir = ../Marlin
platform
=
atmelavr
framework
=
arduino
board
=
megaatmega2560
extra_script
=
./generate_version_header_for_marlin
build_flags
=
-D USE_AUTOMATIC_VERSIONING -I $BUILDSRC_DIR
board_f_cpu
=
16000000L
[env:mega1280]
platform
=
atmelavr
framework
=
arduino
board
=
megaatmega1280
extra_script
=
./generate_version_header_for_marlin
build_flags
=
-D USE_AUTOMATIC_VERSIONING -I $BUILDSRC_DIR
board_f_cpu
=
16000000L
[env:printrboard]
platform
=
teensy
framework
=
arduino
board
=
teensy20pp
build_flags
=
-D MOTHERBOARD=BOARD_PRINTRBOARD
extra_script
=
./generate_version_header_for_marlin
build_flags
=
-D USE_AUTOMATIC_VERSIONING -I $BUILDSRC_DIR -D MOTHERBOARD=BOARD_PRINTRBOARD
# Bug in arduino framework does not allow boards running at 20Mhz
#board_f_cpu = 20000000L
...
...
@@ -38,4 +43,5 @@ build_flags = -D MOTHERBOARD=BOARD_PRINTRBOARD
platform
=
teensy
framework
=
arduino
board
=
teensy20pp
build_flags
=
-D MOTHERBOARD=BOARD_BRAINWAVE_PRO -D AT90USBxx_TEENSYPP_ASSIGNMENTS
extra_script
=
./generate_version_header_for_marlin
build_flags
=
-D USE_AUTOMATIC_VERSIONING -I $BUILDSRC_DIR -D MOTHERBOARD=BOARD_BRAINWAVE_PRO -D AT90USBxx_TEENSYPP_ASSIGNMENTS
This diff is collapsed.
Click to expand it.
Preview
0%
Loading
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Save comment
Cancel
Please
register
or
sign in
to comment