Bug 1235021 - Normalize paths from jar manifests before putting them in an install manifest in the FasterMake backend. r=gps
authorMike Hommey <mh+mozilla@glandium.org>
Thu, 24 Dec 2015 14:26:55 +0900
changeset 277915 cce5cfe52a3db8bbabf8539c5715f62793715c9f
parent 277914 40ae4d686d46eccff4710ec13f0103fe370be66d
child 277916 7880d2168cf7f4f4158c0ee34e0566ce10b29995
push id69650
push usermh@glandium.org
push dateWed, 30 Dec 2015 22:08:21 +0000
treeherdermozilla-inbound@70708efd7d3b [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersgps
bugs1235021
milestone46.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1235021 - Normalize paths from jar manifests before putting them in an install manifest in the FasterMake backend. r=gps This is not necessary in itself, but allows to confirm that further changes, which are going to normalize paths as a side effect, are idempotent.
python/mozbuild/mozbuild/backend/fastermake.py
--- a/python/mozbuild/mozbuild/backend/fastermake.py
+++ b/python/mozbuild/mozbuild/backend/fastermake.py
@@ -148,16 +148,17 @@ class FasterMakeBackend(CommonBackend):
                         path = mozpath.dirname(obj.path.full_path)
                     src = mozpath.join( path, 'en-US', e.source)
                 elif e.source.startswith('/'):
                     src = mozpath.join(self.environment.topsrcdir,
                                        e.source[1:])
                 else:
                     src = mozpath.join(mozpath.dirname(obj.path.full_path), e.source)
 
+                src = mozpath.normpath(src)
                 if '*' in e.source:
                     if e.preprocess:
                         raise Exception('%s: Wildcards are not supported with '
                                         'preprocessing' % obj.path)
                     def _prefix(s):
                         for p in s.split('/'):
                             if '*' not in p:
                                 yield p + '/'