123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657 |
- #/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)
|