5b8cbab9374f065bf4cac694d5ad251f2134bb37: Bug 1417234 - Use SRWLock as Mutex for mozjemalloc on Windows. r=njn
Mike Hommey <mh+mozilla@glandium.org> - Tue, 14 Nov 2017 12:58:33 +0900 - rev 391876
Push 97352 by nerli@mozilla.com at Wed, 15 Nov 2017 10:16:19 +0000
Bug 1417234 - Use SRWLock as Mutex for mozjemalloc on Windows. r=njn SRWLock is more lightweight than CriticalSection, but is only available on Windows Vista and more. So until we actually dropped support Windows XP, we had to use CriticalSection. Now that all supported Windows versions do have SRWLock, this is a switch we can make, and not only because SRWLock is more lightweight, but because it can be statically initialized like on other platforms, allowing to use the same initialization code as on other platforms, and removing the requirement for a DllMain, which in turn can allow to statically link mozjemalloc in some cases, instead of requiring a shared library (DllMain only works on shared libraries), or manually call the initialization function soon enough. There is a downside, though: SRWLock, as opposed to CriticalSection, is not fair, meaning it can have thread scheduling implications, and can theoretically increase latency on some threads. However, it is the default used by Rust Mutex, meaning it's at least good enough there. Let's see how things go with this.
efbe44c7fa03bccafe5b14518a1635a0a5bf2554: Bug 1414077 - Don't try to scroll image if the image document is not visible; r=bz
Edgar Chen <echen@mozilla.com> - Tue, 07 Nov 2017 17:51:13 +0800 - rev 391875
Push 97352 by nerli@mozilla.com at Wed, 15 Nov 2017 10:16:19 +0000
Bug 1414077 - Don't try to scroll image if the image document is not visible; r=bz MozReview-Commit-ID: J7Roez2btL
2a20002981356e4d710549b05943b22fe43d5973: Bug 1416490 - Backed out changeset 6a412222f22e (bug 1320738) in favor of fixing the underlying issue. r=glandium
Chris Manchester <cmanchester@mozilla.com> - Mon, 13 Nov 2017 23:34:20 -0800 - rev 391874
Push 97352 by nerli@mozilla.com at Wed, 15 Nov 2017 10:16:19 +0000
Bug 1416490 - Backed out changeset 6a412222f22e (bug 1320738) in favor of fixing the underlying issue. r=glandium MozReview-Commit-ID: 5JaoquWq5Jj
0545f114fb5be72f45e8678f0cd258824761bda5: Bug 1416490 - Ensure environment variables that are configure options are passed from configure to old-configure. r=glandium
Chris Manchester <cmanchester@mozilla.com> - Mon, 13 Nov 2017 23:33:35 -0800 - rev 391873
Push 97352 by nerli@mozilla.com at Wed, 15 Nov 2017 10:16:19 +0000
Bug 1416490 - Ensure environment variables that are configure options are passed from configure to old-configure. r=glandium MozReview-Commit-ID: GFP8bahu1bb
89af2bd84c001d94d22cf070b7acee7f13e4453d: Bug 1416490 - Check for a value passed to RUSTC_OPT_LEVEL rather than whether its value was a default. r=glandium
Chris Manchester <cmanchester@mozilla.com> - Mon, 13 Nov 2017 22:07:46 -0800 - rev 391872
Push 97352 by nerli@mozilla.com at Wed, 15 Nov 2017 10:16:19 +0000
Bug 1416490 - Check for a value passed to RUSTC_OPT_LEVEL rather than whether its value was a default. r=glandium The current code will fail if "RUSTC_OPT_LEVEL=" is passed. This can happen if the value isn't present and that fact is injected into js' configure. We only want to respect RUSTC_OPT_LEVEL if a value is passed, so we simply check for the presence of a value rather than its origin. MozReview-Commit-ID: 6GhLfprJEEn
26b0f3f9fca10fc215d2c597050e20ed21cad510: Bug 1416618 - Cannot show short date format (yy/MM/dd'('ddd')') correctly. r=jfkthame
Makoto Kato <m_kato@ga2.so-net.ne.jp> - Tue, 14 Nov 2017 10:53:51 +0900 - rev 391871
Push 97352 by nerli@mozilla.com at Wed, 15 Nov 2017 10:16:19 +0000
Bug 1416618 - Cannot show short date format (yy/MM/dd'('ddd')') correctly. r=jfkthame On Windows 7, there is yy/mm/dd'('ddd')' as short date format of Japanese. When selecting this, ddd isn't converted to day of the week correctly. FindInReadable will update start position iterator even if not found. So when using FindInReadable again, we have to reset start position iterator. MozReview-Commit-ID: AoS1Txq3Twc
9ccc25047469c3ccfaaa3a13c5e08595b3f31065: Bug 1417279 - Remove an odd second case from nsArray::IndexOf. r=froydnj
Blake Kaplan <mrbkap@gmail.com> - Tue, 14 Nov 2017 16:34:42 -0800 - rev 391870
Push 97352 by nerli@mozilla.com at Wed, 15 Nov 2017 10:16:19 +0000
Bug 1417279 - Remove an odd second case from nsArray::IndexOf. r=froydnj Now that nsArray uses nsCOMArray under the hood, we don't have to do weird ForwardEnumeration hacks to start IndexOf at a non-zero index. MozReview-Commit-ID: 3ReDV0BT0hn
b19b455ae87a23f8e9a84b9541f01dfbe20ed8e8: Bug 1416052 - Fixup for test_clobber.py; r=me
Gregory Szorc <gps@mozilla.com> - Tue, 14 Nov 2017 16:08:35 -0800 - rev 391869
Push 97352 by nerli@mozilla.com at Wed, 15 Nov 2017 10:16:19 +0000
Bug 1416052 - Fixup for test_clobber.py; r=me Forgot to push the updated patch to review. Test-only change. So self-reviewing. CLOSED TREE
d7c5faf9f301505325b4a88b6831c72db2b1adbb: Bug 1416052 - Remove OBJDIR_TARGETS; r=nalexander
Gregory Szorc <gps@mozilla.com> - Thu, 09 Nov 2017 23:31:36 -0800 - rev 391868
Push 97352 by nerli@mozilla.com at Wed, 15 Nov 2017 10:16:19 +0000
Bug 1416052 - Remove OBJDIR_TARGETS; r=nalexander Now that we require mach to run client.mk and mach only invokes client.mk for full builds (the "build" target) and configure (the "configure" target), we should no longer have anyone using client.mk as a proxy to make targets in the build backend. So remove that feature. MozReview-Commit-ID: BbaMdZHnRXy
2a90d49c5573711b4c1f56558147eef124ca9131: Bug 1416052 - Remove build_and_deploy target; r=nalexander
Gregory Szorc <gps@mozilla.com> - Thu, 09 Nov 2017 23:15:03 -0800 - rev 391867
Push 97352 by nerli@mozilla.com at Wed, 15 Nov 2017 10:16:19 +0000
Bug 1416052 - Remove build_and_deploy target; r=nalexander This was added before mach AFAICT. If people need this functionality, we can add a mach command. MozReview-Commit-ID: HL52nJE2SMQ
b6adf66f34c68b759ebdf468963464d4b2edb853: Bug 1416052 - Check clobber state from Python; r=nalexander
Gregory Szorc <gps@mozilla.com> - Thu, 09 Nov 2017 23:13:59 -0800 - rev 391866
Push 97352 by nerli@mozilla.com at Wed, 15 Nov 2017 10:16:19 +0000
Bug 1416052 - Check clobber state from Python; r=nalexander The clobber logic is already written in Python. Now that we always use mach in front of client.mk, we can check the clobber state before we execute client.mk. Since we always check the clobber state, we can remove the CLOBBER files from various dependencies in client.mk. The clobberer code should ensure everything is in a good state. The refactor of the clobber Python code required some changes to its testing. We drop some support for verifying output strings. But testing this correctly would require a bit of effort. I don't think it is worth it. MozReview-Commit-ID: 69CoImCgtNm
51d998c76d9afd42c1bda46373bb4a076f0fb0b7: Bug 1416052 - Remove reference to undefined BUILD_PROJECT_ARG; r=nalexander
Gregory Szorc <gps@mozilla.com> - Thu, 09 Nov 2017 22:42:54 -0800 - rev 391865
Push 97352 by nerli@mozilla.com at Wed, 15 Nov 2017 10:16:19 +0000
Bug 1416052 - Remove reference to undefined BUILD_PROJECT_ARG; r=nalexander I'm pretty sure this was related to the now removed feature for building multiple projects. MozReview-Commit-ID: 4AG7lsk6BLS
d05549af9bf7a29140032474fcb1bea293b834cb: Bug 1416052 - Remove mkdir of objdir from client.mk; r=nalexander
Gregory Szorc <gps@mozilla.com> - Thu, 09 Nov 2017 22:41:17 -0800 - rev 391864
Push 97352 by nerli@mozilla.com at Wed, 15 Nov 2017 10:16:19 +0000
Bug 1416052 - Remove mkdir of objdir from client.mk; r=nalexander Now that mach is being used to invoke client.mk, we can perform objdir directory creation there. Removing the use of mkdir_deps meant that we could remove some included make files which AFAICT were only used to provide $(mkdir_deps). MozReview-Commit-ID: 4ZRToz8xqZy
1cd169ff8a0dbb2ea7d50b4275472ca9298765b3: Bug 1416052 - Remove comment filtering; r=nalexander
Gregory Szorc <gps@mozilla.com> - Thu, 09 Nov 2017 22:26:26 -0800 - rev 391863
Push 97352 by nerli@mozilla.com at Wed, 15 Nov 2017 10:16:19 +0000
Bug 1416052 - Remove comment filtering; r=nalexander The auto-generated make file that we include (and the `mach environment` output that we included before that) should not contain comment lines. I think it is safe to remove the code that filters them out. It is possible a multi-line value in mozconfigs could contain lines looking like comments and this may cause problems. I'm inclined to believe that this scenario doesn't exist. If someone complains and we need to bring back support, we could certainly do that. MozReview-Commit-ID: 8kKw91HH4ms
45d15eccf5504583d23b680c1ebbc4965ea6f314: Bug 1416052 - Move export of FOUND_MOZCONFIG to Python; r=nalexander
Gregory Szorc <gps@mozilla.com> - Thu, 09 Nov 2017 22:23:14 -0800 - rev 391862
Push 97352 by nerli@mozilla.com at Wed, 15 Nov 2017 10:16:19 +0000
Bug 1416052 - Move export of FOUND_MOZCONFIG to Python; r=nalexander This should have the same net result. TBH, I'm not 100% convinced we need this export. It is only needed to send variables to sub-makes. And the only make file reading FOUND_MOZCONFIG is client.mk. Since the code that evals the auto-generated make file is always executed in client.mk, we shouldn't need this export. All this code is going away soon anyway. So I'm inclined to cargo cult this just in case. MozReview-Commit-ID: DqF1BU702A
67c03dc70bfd5d2d3df5986d64240494f4624d55: Bug 1416052 - Generate a make file to include in client.mk; r=nalexander
Gregory Szorc <gps@mozilla.com> - Thu, 09 Nov 2017 22:27:16 -0800 - rev 391861
Push 97352 by nerli@mozilla.com at Wed, 15 Nov 2017 10:16:19 +0000
Bug 1416052 - Generate a make file to include in client.mk; r=nalexander Currently, client.mk calls `mach environment` to obtain a make file to be evaluated in the context of client.mk. The reason it is implemented this way is because client.mk could be an entrypoint to the build system. With recent changes that require the use of mach to use client.mk, we are now guaranteed to have Python code running before client.mk is invoked. This means we don't need to invoke `mach` from client.mk. This commit ports the code for generating a client.mk suitable make file from `mach environment` to the build dispatcher. We now write out a new .mozconfig-client-mk file in the objdir. client.mk is changed to cat this file and to include it as a native make file. The OBJDIR environment variable is also set so client.mk knows where to read the auto-generated file from. This commit should be backwards compatible. Hopefully it is obvious, but this new make file is only temporary. As soon as the remaining mozconfig logic is moved out of client.mk, we should be able to simplify down to a single "include" in client.mk. MozReview-Commit-ID: BEfWo76Z1qA
4a26fbabb7d8d8080c1280f46e6eb7793fa134e3: Bug 1416052 - Remove references to MOZ_CURRENT_PROJECT; r=nalexander
Gregory Szorc <gps@mozilla.com> - Thu, 09 Nov 2017 21:47:43 -0800 - rev 391860
Push 97352 by nerli@mozilla.com at Wed, 15 Nov 2017 10:16:19 +0000
Bug 1416052 - Remove references to MOZ_CURRENT_PROJECT; r=nalexander Actual uses of this variable were removed by 5fb427c50ca3 (bug 1412431). This is dead code. MozReview-Commit-ID: GsDqpXZol2L
ee45241c58eb84dbc37c6a2ecb37187876e922d7: Bug 1416052 - Move config.guess logic to Python; r=nalexander
Gregory Szorc <gps@mozilla.com> - Thu, 09 Nov 2017 16:17:35 -0800 - rev 391859
Push 97352 by nerli@mozilla.com at Wed, 15 Nov 2017 10:16:19 +0000
Bug 1416052 - Move config.guess logic to Python; r=nalexander Instead of evaluating config.guess in client.mk, we evaluate it in Python. The Python code also looks for CONFIG_GUESS in the mozconfig. This still happens in client.mk courtesy of evaling the mozconfig's relevant parts. MozReview-Commit-ID: 87NmQiB2ccX
a88781c8655a63e602b46db80d0ff141f8cab9b4: Bug 1416052 - Remove make validation from client.mk; r=nalexander
Gregory Szorc <gps@mozilla.com> - Mon, 13 Nov 2017 14:38:40 -0800 - rev 391858
Push 97352 by nerli@mozilla.com at Wed, 15 Nov 2017 10:16:19 +0000
Bug 1416052 - Remove make validation from client.mk; r=nalexander MozbuildObject._run_make() also invokes baseconfig.mk as part of validating the make binary that will be executed. Since mach calls this Python code and mach is now required to invoke client.mk, the validation in client.mk is redundant and can be removed. autoconf.mk includes baseconfig.mk. So even once we eliminate client.mk, the make backend itself will still validate make. We should probably move this validation to moz.configure (if it isn't already there). But that can be done another time. MozReview-Commit-ID: DPCBdz253S6
7ffce7d50018208119d937c48f99c108b501b397: Bug 1416052 - Pass TOPSRCDIR into client.mk; r=nalexander
Gregory Szorc <gps@mozilla.com> - Thu, 09 Nov 2017 15:50:32 -0800 - rev 391857
Push 97352 by nerli@mozilla.com at Wed, 15 Nov 2017 10:16:19 +0000
Bug 1416052 - Pass TOPSRCDIR into client.mk; r=nalexander MozReview-Commit-ID: B5TfneZRan7
(0) -300000 -100000 -30000 -10000 -3000 -1000 -300 -100 -50 -20 +20 +50 +100 +300 +1000 +3000 +10000 +30000 +100000 tip