mirror of
https://git.rtems.org/rtems-docs/
synced 2025-10-16 21:03:40 +08:00
Replace build date with Git hash and commit date
The usage of a build date prevents reproducible builds.
This commit is contained in:
39
wscript
39
wscript
@@ -9,8 +9,6 @@ path.append(abspath('common'))
|
||||
import waflib
|
||||
import waf as docs_waf
|
||||
|
||||
version = '5.0.0 (master)'
|
||||
|
||||
build_all = ['user',
|
||||
'rsb',
|
||||
'c-user',
|
||||
@@ -31,7 +29,6 @@ def options(opt):
|
||||
docs_waf.cmd_options(opt)
|
||||
|
||||
def configure(conf):
|
||||
conf.env.VERSION = version
|
||||
for b in building:
|
||||
conf.recurse(b)
|
||||
conf.env['BUILD_FROM_TOP'] = 'yes'
|
||||
@@ -53,7 +50,43 @@ def coverpage_js(ctx):
|
||||
with open(ctx.outputs[0].abspath(), 'w') as o:
|
||||
o.write(js.replace('@CATALOGUE', xml))
|
||||
|
||||
def pretty_day(day):
|
||||
if day == 3:
|
||||
s = 'rd'
|
||||
elif day == 11:
|
||||
s = 'th'
|
||||
elif day == 12:
|
||||
s = 'th'
|
||||
elif day == 13:
|
||||
s = 'th'
|
||||
elif day % 10 == 1:
|
||||
s = 'st'
|
||||
elif day % 10 == 2:
|
||||
s = 'nd'
|
||||
else:
|
||||
s = 'th'
|
||||
return str(day) + s
|
||||
|
||||
def build(ctx):
|
||||
#
|
||||
# Get date and version from Git
|
||||
#
|
||||
version = '5.0.0'
|
||||
if ctx.exec_command(['git', 'diff-index', '--quiet', 'HEAD']) == 0:
|
||||
modified = ''
|
||||
else:
|
||||
modified = '-modified'
|
||||
try:
|
||||
out = ctx.cmd_and_log(['git', 'log', '-1', '--format=%H,%cd', '--date=format:%e,%B,%Y'])
|
||||
f = out.strip('\n').split(',')
|
||||
version = version + '.' + f[0] + modified
|
||||
date = pretty_day(int(f[1])) + ' ' + f[2] + ' ' + f[3]
|
||||
except waflib.Build.Errors.WafError:
|
||||
date = 'unknown date'
|
||||
ctx.env.DATE = date
|
||||
ctx.env.RELEASE = version + ' (' + date + ')'
|
||||
ctx.env.VERSION = version
|
||||
|
||||
#
|
||||
# Generate any PlantUML images if enabled.
|
||||
#
|
||||
|
Reference in New Issue
Block a user