summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWilliam Deegan <bill@baddogconsulting.com>2017-10-03 00:09:10 (GMT)
committerWilliam Deegan <bill@baddogconsulting.com>2017-10-03 00:09:10 (GMT)
commit56080b1c09eb9659419c5ada7c0a888fc048822c (patch)
tree68151b0cf58a8bebfcf7832f83e6976b95c0159a
parent85d22ffb1ee6501a5bc3c446897b555b78631ff6 (diff)
downloadSCons-56080b1c09eb9659419c5ada7c0a888fc048822c.zip
SCons-56080b1c09eb9659419c5ada7c0a888fc048822c.tar.gz
SCons-56080b1c09eb9659419c5ada7c0a888fc048822c.tar.bz2
Migrate some logic from SConstruct into site_scons to simplify top level SConstruct
-rw-r--r--SConstruct40
-rw-r--r--site_scons/SConsRevision.py40
-rw-r--r--site_scons/site_init.py1
3 files changed, 41 insertions, 40 deletions
diff --git a/SConstruct b/SConstruct
index 065ba2d..f26cafe 100644
--- a/SConstruct
+++ b/SConstruct
@@ -362,46 +362,6 @@ except ImportError:
unzipit = "$UNZIP $UNZIPFLAGS $SOURCES"
-def SCons_revision(target, source, env):
- """Interpolate specific values from the environment into a file.
-
- This is used to copy files into a tree that gets packaged up
- into the source file package.
- """
- t = str(target[0])
- s = source[0].rstr()
-
- try:
- with open(s, 'r') as fp:
- contents = fp.read()
-
-
- # Note: We construct the __*__ substitution strings here
- # so that they don't get replaced when this file gets
- # copied into the tree for packaging.
- contents = contents.replace('__BUILD' + '__', env['BUILD'])
- contents = contents.replace('__BUILDSYS' + '__', env['BUILDSYS'])
- contents = contents.replace('__COPYRIGHT' + '__', env['COPYRIGHT'])
- contents = contents.replace('__DATE' + '__', env['DATE'])
- contents = contents.replace('__DEB_DATE' + '__', env['DEB_DATE'])
-
- contents = contents.replace('__DEVELOPER' + '__', env['DEVELOPER'])
- contents = contents.replace('__FILE' + '__', str(source[0]).replace('\\', '/'))
- contents = contents.replace('__MONTH_YEAR'+ '__', env['MONTH_YEAR'])
- contents = contents.replace('__REVISION' + '__', env['REVISION'])
- contents = contents.replace('__VERSION' + '__', env['VERSION'])
- contents = contents.replace('__NULL' + '__', '')
- open(t, 'w').write(contents)
- except UnicodeDecodeError as e:
- print("Error decoding file:%s just copying no revision edit")
- with open(s, 'rb') as fp:
- contents = fp.read()
- open(t, 'wb').write(contents)
-
-
- os.chmod(t, os.stat(s)[0])
-
-
revaction = SCons_revision
revbuilder = Builder(action = Action(SCons_revision,
varlist=['COPYRIGHT', 'VERSION']))
diff --git a/site_scons/SConsRevision.py b/site_scons/SConsRevision.py
new file mode 100644
index 0000000..11de670
--- /dev/null
+++ b/site_scons/SConsRevision.py
@@ -0,0 +1,40 @@
+import os
+
+def SCons_revision(target, source, env):
+ """Interpolate specific values from the environment into a file.
+
+ This is used to copy files into a tree that gets packaged up
+ into the source file package.
+ """
+ t = str(target[0])
+ s = source[0].rstr()
+
+ try:
+ with open(s, 'r') as fp:
+ contents = fp.read()
+
+
+ # Note: We construct the __*__ substitution strings here
+ # so that they don't get replaced when this file gets
+ # copied into the tree for packaging.
+ contents = contents.replace('__BUILD' + '__', env['BUILD'])
+ contents = contents.replace('__BUILDSYS' + '__', env['BUILDSYS'])
+ contents = contents.replace('__COPYRIGHT' + '__', env['COPYRIGHT'])
+ contents = contents.replace('__DATE' + '__', env['DATE'])
+ contents = contents.replace('__DEB_DATE' + '__', env['DEB_DATE'])
+
+ contents = contents.replace('__DEVELOPER' + '__', env['DEVELOPER'])
+ contents = contents.replace('__FILE' + '__', str(source[0]).replace('\\', '/'))
+ contents = contents.replace('__MONTH_YEAR'+ '__', env['MONTH_YEAR'])
+ contents = contents.replace('__REVISION' + '__', env['REVISION'])
+ contents = contents.replace('__VERSION' + '__', env['VERSION'])
+ contents = contents.replace('__NULL' + '__', '')
+ open(t, 'w').write(contents)
+ except UnicodeDecodeError as e:
+ print("Error decoding file:%s just copying no revision edit")
+ with open(s, 'rb') as fp:
+ contents = fp.read()
+ open(t, 'wb').write(contents)
+
+
+ os.chmod(t, os.stat(s)[0]) \ No newline at end of file
diff --git a/site_scons/site_init.py b/site_scons/site_init.py
new file mode 100644
index 0000000..8e07907
--- /dev/null
+++ b/site_scons/site_init.py
@@ -0,0 +1 @@
+from SConsRevision import SCons_revision \ No newline at end of file