summaryrefslogtreecommitdiffstats
path: root/config/rebuild_check.py
diff options
context:
space:
mode:
authorMatt A. Tobin <mattatobin@localhost.localdomain>2018-02-02 04:16:08 -0500
committerMatt A. Tobin <mattatobin@localhost.localdomain>2018-02-02 04:16:08 -0500
commit5f8de423f190bbb79a62f804151bc24824fa32d8 (patch)
tree10027f336435511475e392454359edea8e25895d /config/rebuild_check.py
parent49ee0794b5d912db1f95dce6eb52d781dc210db5 (diff)
downloadUXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.gz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.lz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.xz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.zip
Add m-esr52 at 52.6.0
Diffstat (limited to 'config/rebuild_check.py')
-rw-r--r--config/rebuild_check.py44
1 files changed, 44 insertions, 0 deletions
diff --git a/config/rebuild_check.py b/config/rebuild_check.py
new file mode 100644
index 000000000..a6c3dc87a
--- /dev/null
+++ b/config/rebuild_check.py
@@ -0,0 +1,44 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+import os
+import errno
+
+def mtime(path):
+ try:
+ return os.stat(path).st_mtime
+ except OSError as e:
+ if e.errno == errno.ENOENT:
+ return -1
+ raise
+
+def rebuild_check(args):
+ target = args[0]
+ deps = args[1:]
+ t = mtime(target)
+ if t < 0:
+ print target
+ return
+
+ newer = []
+ removed = []
+ for dep in deps:
+ deptime = mtime(dep)
+ if deptime < 0:
+ removed.append(dep)
+ elif mtime(dep) > t:
+ newer.append(dep)
+
+ if newer and removed:
+ print 'Rebuilding %s because %s changed and %s was removed' % (target, ', '.join(newer), ', '.join(removed))
+ elif newer:
+ print 'Rebuilding %s because %s changed' % (target, ', '.join(newer))
+ elif removed:
+ print 'Rebuilding %s because %s was removed' % (target, ', '.join(removed))
+ else:
+ print 'Rebuilding %s for an unknown reason' % target
+
+if __name__ == '__main__':
+ import sys
+ rebuild_check(sys.argv[1:])