summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWilliam Deegan <bill@baddogconsulting.com>2019-07-14 00:25:07 (GMT)
committerWilliam Deegan <bill@baddogconsulting.com>2019-07-14 00:25:07 (GMT)
commitd4877dbb4fd0612633535f6917fd94fa98214e1b (patch)
tree3c3474460ef6473f0db53b0f82e344f45fd019b5
parentb9133757d9bb1562cd6cc159ef6a435ad7f43eb0 (diff)
downloadSCons-d4877dbb4fd0612633535f6917fd94fa98214e1b.zip
SCons-d4877dbb4fd0612633535f6917fd94fa98214e1b.tar.gz
SCons-d4877dbb4fd0612633535f6917fd94fa98214e1b.tar.bz2
Doc updates for repo_node addition to Decider function args
-rw-r--r--doc/user/depends.xml2
-rwxr-xr-xsrc/CHANGES.txt8
-rwxr-xr-xsrc/RELEASE.txt8
-rw-r--r--src/engine/SCons/Environment.xml13
4 files changed, 29 insertions, 2 deletions
diff --git a/doc/user/depends.xml b/doc/user/depends.xml
index 297eaa2..c13828f 100644
--- a/doc/user/depends.xml
+++ b/doc/user/depends.xml
@@ -517,7 +517,7 @@ cc -o hello hello.o
<scons_example name="depends_function">
<file name="SConstruct" printme="1">
Program('hello.c')
-def decide_if_changed(dependency, target, prev_ni):
+def decide_if_changed(dependency, target, prev_ni, repo_node=None):
if dependency.get_timestamp() != prev_ni.timestamp:
dep = str(dependency)
tgt = str(target)
diff --git a/src/CHANGES.txt b/src/CHANGES.txt
index 6a8d626..9729ac4 100755
--- a/src/CHANGES.txt
+++ b/src/CHANGES.txt
@@ -41,6 +41,14 @@ RELEASE VERSION/DATE TO BE FILLED IN LATER
- Fix Issue #3350 - mslink failing when too many objects. This is resolved by adding TEMPFILEARGJOIN variable
which specifies what character to join all the argements output into the tempfile. The default remains a space
when mslink, msvc, or mslib tools are loaded they change the TEMPFILEARGJOIN to be a line separator (\r\n on win32)
+ - Fix performance degradation for MD5-timestamp decider. NOTE: This changes the Decider() function arguments.
+ From:
+ def my_decider(dependency, target, prev_ni):
+ To:
+ def my_decider(dependency, target, prev_ni, repo_node):
+ Where repo_node is the repository (or other) node to use to check if the node is out of date instead of dependency.
+
+
From Michael Hartmann:
- Fix handling of Visual Studio Compilers to properly reject any unknown HOST_PLATFORM or TARGET_PLATFORM
diff --git a/src/RELEASE.txt b/src/RELEASE.txt
index efa35eb..2857cbf 100755
--- a/src/RELEASE.txt
+++ b/src/RELEASE.txt
@@ -41,6 +41,14 @@
CHANGED/ENHANCED EXISTING FUNCTIONALITY
+ - Fix performance degradation for MD5-timestamp decider. NOTE: This changes the Decider() function arguments.
+ From:
+ def my_decider(dependency, target, prev_ni):
+ To:
+ def my_decider(dependency, target, prev_ni, repo_node):
+ Where repo_node is the repository (or other) node to use to check if the node is out of date instead of dependency.
+
+
- Enhanced --debug=explain output. Now the separate components of the dependency list are split up
as follows:
diff --git a/src/engine/SCons/Environment.xml b/src/engine/SCons/Environment.xml
index 0982c31..1b0a04c 100644
--- a/src/engine/SCons/Environment.xml
+++ b/src/engine/SCons/Environment.xml
@@ -1213,6 +1213,17 @@ size, or content signature.
</para>
</listitem>
</varlistentry>
+ <varlistentry>
+<term><parameter>repo_node</parameter></term>
+<listitem>
+<para>
+Use this node instead of the one specified by
+<varname>dependency</varname>
+ to determine if the dependency has changed.
+</para>
+</listitem>
+</varlistentry>
+
</variablelist>
</para>
@@ -1249,7 +1260,7 @@ Example:
</para>
<example_commands>
-def my_decider(dependency, target, prev_ni):
+def my_decider(dependency, target, prev_ni, repo_node=None):
return not os.path.exists(str(target))
env.Decider(my_decider)