Commit Graph

85 Commits

Author SHA1 Message Date
Ricky Stewart
933b3522b8 Bug 1633156 - Don't emit cached table files from ply r=glandium
`ply`, [by design](https://github.com/dabeaz/ply/issues/79), does not produce reproducible table files; hence bug 1633156. (Note that this was *always* true, but only became a problem once we switched to Python 3, which has more unpredictable dict iteration order than Python 2.7, at least prior to [3.7](https://docs.python.org/3/whatsnew/3.7.html#summary-release-highlights).)

In any other circumstance I would consider submitting a patch to `ply` to fix this, but as of the [in-progress version 4.0 of the library](https://github.com/dabeaz/ply/blob/master/CHANGES), it doesn't even emit this cached data any more, and indeed the [latest version of the code](1fac9fed64/ply) doesn't even call `open()` at all except to do logging or to read the text data to be parsed from `stdin`. So if we were going to pin our future on `ply` and upgrade to later versions of the library in the future, we would have to live in a world where `ply` doesn't generate cached table files for us anyway.

Emitting the cached table files so later build steps can consume them is an "optimization", but it's not clear exactly how much actual value that optimization provides overall. Quoth the `CHANGES` file from that repository:

```
PLY no longer writes cached table files.  Honestly, the use of
the cached files made more sense when I was developing PLY on
my 200Mhz PC in 2001. It's not as much as an issue now. For small
to medium sized grammars, PLY should be almost instantaneous.
```

In practice, I have found this to be true; namely, `./mach build pre-export export` takes just about as long on my machine after this patch as it did before, and in a try push I performed, there's no noticeable performance regression from applying this patch. In local testing I also found that generating the LALR tables in calls to `yacc()` takes about 0.01s on my machine generally, and we generate these tables a couple dozen times total over the course of the `export` tier now. This isn't *nothing*, but in my opinion it's also not nearly long enough where it would be a concern given how long `export` already takes.

That `CHANGES` file also stresses that if caching this data is important, we have the option of doing so via `pickle`. If and when we decide that re-enabling this optimization is valuable for us, we should take control of this process and perform the generation in such a way that we can guarantee reproducibility.

Differential Revision: https://phabricator.services.mozilla.com/D73484
2020-05-07 00:39:28 +00:00
Ricky Stewart
3749c34fb4 Bug 1632916 - Run JS/web-platform/ipdl build machinery in Python 3 r=jgraham,nika,glandium
Differential Revision: https://phabricator.services.mozilla.com/D72478
2020-05-05 20:32:12 +00:00
Bogdan Tara
f137fa0613 Backed out 6 changesets (bug 1632916, bug 1599658, bug 1633037, bug 1633039, bug 1633016, bug 1632920) for SA bustages CLOSED TREE
Backed out changeset 332ce0963b4e (bug 1633039)
Backed out changeset a9904cbc40d9 (bug 1633037)
Backed out changeset d06b0ec349f8 (bug 1599658)
Backed out changeset 8fd300cad80f (bug 1633016)
Backed out changeset f8820941c703 (bug 1632916)
Backed out changeset ac9c2c8746ed (bug 1632920)
2020-05-02 01:49:29 +03:00
Ricky Stewart
d990224458 Bug 1632916 - Run JS/web-platform/ipdl build machinery in Python 3 r=jgraham,nika,glandium
Differential Revision: https://phabricator.services.mozilla.com/D72478
2020-05-01 16:31:21 +00:00
Chris Manchester
26b3ffad58 Bug 1455892 - Use a tracking stub file rather than a phony target to speed up ipdl in incremental builds. r=froydnj
This commit removes some mtime checking logic in ipdl.py that is made redundant
with make's logic to re-invoke ipdl.py when dependencies have changed.


MozReview-Commit-ID: FJuYIZv5uym

--HG--
extra : rebase_source : 5e250cd2dd57b8591db700a3d79ec36c88fa4dd4
2018-05-03 12:54:21 -07:00
Bogdan Tara
474a05018a Backed out changeset 23400e395408 (bug 1455892) for linux build bustages on ContentBridgeParent.h CLOSED TREE 2018-05-03 23:34:54 +03:00
Chris Manchester
5b50d3c787 Bug 1455892 - Use a tracking stub file rather than a phony target to speed up ipdl in incremental builds. r=froydnj
This commit removes some mtime checking logic in ipdl.py that is made redundant
with make's logic to re-invoke ipdl.py when dependencies have changed.


MozReview-Commit-ID: FJuYIZv5uym

--HG--
extra : rebase_source : 9e11ead04bd69eb1f30160fdb15b8ac74b183f87
2018-05-03 12:54:21 -07:00
Henry Chang
6d648badcb Bug 1348591 - Support custom default segment buffer list size. r=billm
MozReview-Commit-ID: 2Nkj6RPx62f

--HG--
extra : rebase_source : 4e763563e3f9e9927314e804ba4e0fbd291fc9e8
2017-06-21 17:55:13 +08:00
Kan-Ru Chen
09858c1716 Bug 1336919 - Add a sync message whitelist and check it in IPDL compile phase. r=billm
MozReview-Commit-ID: ENFkBzpGo2j
2017-02-20 10:40:54 +08:00
Mike Hommey
aa465311ee Bug 1319350 - Add dedicated targets for some one-offs in the build. r=mshal
--HG--
extra : rebase_source : 5094663983fbdf4c3f95b685945c6be4cf3b179e
2016-11-22 16:55:58 +09:00
Gregory Szorc
86a9f976ba Bug 1239207 - Don't process IPDL when not compiling; r=glandium
IPDL processing takes ~9.4s on my i7-6700K and is the long pole in the
"export" tier for clobber --disable-compile-environment builds. IPDL
shouldn't be needed for these builds.

Disabling IPDL makes artifact builds ~4s faster on my machine.

--HG--
extra : rebase_source : 60aeec636e18380c3258f054e90d1b6c3a16fadf
2016-01-14 23:11:12 -08:00
Nathan Froyd
12c76f15f7 Bug 1042878 - part 2 - move MOZ_CAIRO_CFLAGS et al additions to C*FLAGS into moz.build; r=glandium 2014-07-24 11:55:33 -04:00
Ehsan Akhgari
9e38fc2acd Bug 973393 - Move the LOCAL_INCLUDES in ipc to moz.build; r=glandium 2014-02-18 02:12:54 -05:00
Mike Hommey
2eefafb740 Bug 930896 - Keep track of files generated by a build backend. r=gps 2013-10-29 08:00:30 +09:00
Brian O'Keefe
9c9d71fddb Bug 928709 - Convert chromium-config.mk to mozbuild, r=mshal 2013-10-02 13:17:55 -04:00
Ms2ger
f4153f40d4 Bug 900980 - Part a: Move unconditional assignments to EXPORT_LIBRARY to moz.build; rs=gps 2013-10-03 09:11:13 +02:00
Gregory Szorc
d03c8a0359 Bug 921070 - Remove precompile tier; r=glandium
It made sense at the time. We now have inverted tiers and will soon have
derecursified building. This doesn't make sense any more.
2013-09-26 16:05:10 -07:00
Mike Hommey
f8bc7fa754 Bug 912293 - Remove now redundant boilerplate from Makefile.in. r=gps 2013-09-05 09:01:46 +09:00
Brian O'Keefe
d118b95a0d Bug 875934 - Move LIBRARY_NAME to moz.build, batch 3; r=mshal 2013-08-15 09:02:09 -04:00
Ms2ger
1c4d224f0e Bug 883284 - Part d: Move LIBXUL_LIBRARY into moz.build (f-j); r=bsmedberg 2013-08-22 08:56:00 +02:00
Brian O'Keefe
61565e4086 Bug 896177 - Remove useless config.mk includes; r=gps 2013-07-17 16:06:53 -04:00
Gregory Szorc
1340edfe51 Bug 899792 - Establish precompile tier and move IPDL and WebIDL build rules; r=glandium
A new build tier is introduced: precompile. The intention is to replace
the export subtier with something better and nonrecursive. IPDL and
WebIDL code generation have been moved into this new tier and are
performed concurrently. This appears to reduce build times due to fewer
"single threaded" build actions.

The subtier tracking UI has been updated to reflect operations that can
occur in parallel. As subtiers are started, they turn yellow. They can
then complete in any order.

Nonrecursive targets have been added to preserve the IPDL and WebIDL
build targets such that developers can type |make| from leaf directories
like they have always done.
2013-07-30 17:00:24 -07:00
Brian O'Keefe
f4815f2203 Bug 883502 - Part 1: Move 'chromium_config.mk' includes after rules.mk. r=gps 2013-07-04 08:28:43 -04:00
Trevor Saunders
f33ade0d68 bug 887483 - remove a bunch of useless assignments to FORCE_STATIC_LIB implied by LIBXUL_LIBRARY=1 r=mshal 2013-07-11 11:06:34 -04:00
Mike Shal
d5df6bb361 Bug 868536 - Move ipdl.mk files to moz.build; r=gps
Author: Mike Shal <mshal@mozilla.com>
2013-07-01 09:56:28 -04:00
Mike Shal
5169c0a913 Bug 864774 - Part 2: Move CPPSRCS to moz.build as CPP_SOURCES; r=joey CLOSED TREE
From 9e0ba7f425143f545eb6c4b26a9a96b5ade4d8e9 Mon Sep 17 00:00:00 2001
2013-04-23 17:54:15 -04:00
Eitan Isaacson
4e35440ec8 Bug 525444 - (Part 3/3) Support OOP speech synth. r=smaug
--HG--
rename : content/media/webspeech/synth/moz.build => content/media/webspeech/synth/ipc/test/moz.build
2013-04-03 15:13:17 -07:00
Mike Shal
7ecea60097 Bug 844654 - Part 2: Move MODULE to moz.build; rs=gps 2013-03-19 11:47:00 -07:00
Gene Lian
3fd091d44a Bug 844429 - B2G SMS & MMS: move SMS codes into dom/mobilemessage to make it generic for MMS. r=vicamo
--HG--
rename : dom/sms/interfaces/nsIDOMMozSmsEvent.idl => dom/mobilemessage/interfaces/nsIDOMMozSmsEvent.idl
rename : dom/sms/interfaces/nsIDOMMozSmsMessage.idl => dom/mobilemessage/interfaces/nsIDOMMozSmsMessage.idl
rename : dom/sms/interfaces/nsIDOMNavigatorSms.idl => dom/mobilemessage/interfaces/nsIDOMNavigatorSms.idl
rename : dom/sms/interfaces/nsIDOMSmsCursor.idl => dom/mobilemessage/interfaces/nsIDOMSmsCursor.idl
rename : dom/sms/interfaces/nsIDOMSmsFilter.idl => dom/mobilemessage/interfaces/nsIDOMSmsFilter.idl
rename : dom/sms/interfaces/nsIDOMSmsManager.idl => dom/mobilemessage/interfaces/nsIDOMSmsManager.idl
rename : dom/sms/interfaces/nsIDOMSmsRequest.idl => dom/mobilemessage/interfaces/nsIDOMSmsRequest.idl
rename : dom/sms/interfaces/nsIDOMSmsSegmentInfo.idl => dom/mobilemessage/interfaces/nsIDOMSmsSegmentInfo.idl
rename : dom/sms/interfaces/nsISmsRequest.idl => dom/mobilemessage/interfaces/nsISmsRequest.idl
rename : dom/sms/interfaces/nsISmsService.idl => dom/mobilemessage/interfaces/nsISmsService.idl
rename : dom/sms/src/Constants.cpp => dom/mobilemessage/src/Constants.cpp
rename : dom/sms/src/Constants.h => dom/mobilemessage/src/Constants.h
rename : dom/sms/src/SmsCursor.cpp => dom/mobilemessage/src/SmsCursor.cpp
rename : dom/sms/src/SmsCursor.h => dom/mobilemessage/src/SmsCursor.h
rename : dom/sms/src/SmsFilter.cpp => dom/mobilemessage/src/SmsFilter.cpp
rename : dom/sms/src/SmsFilter.h => dom/mobilemessage/src/SmsFilter.h
rename : dom/sms/src/SmsManager.cpp => dom/mobilemessage/src/SmsManager.cpp
rename : dom/sms/src/SmsManager.h => dom/mobilemessage/src/SmsManager.h
rename : dom/sms/src/SmsMessage.cpp => dom/mobilemessage/src/SmsMessage.cpp
rename : dom/sms/src/SmsMessage.h => dom/mobilemessage/src/SmsMessage.h
rename : dom/sms/src/SmsRequest.cpp => dom/mobilemessage/src/SmsRequest.cpp
rename : dom/sms/src/SmsRequest.h => dom/mobilemessage/src/SmsRequest.h
rename : dom/sms/src/SmsSegmentInfo.cpp => dom/mobilemessage/src/SmsSegmentInfo.cpp
rename : dom/sms/src/SmsSegmentInfo.h => dom/mobilemessage/src/SmsSegmentInfo.h
rename : dom/sms/src/SmsServicesFactory.cpp => dom/mobilemessage/src/SmsServicesFactory.cpp
rename : dom/sms/src/SmsServicesFactory.h => dom/mobilemessage/src/SmsServicesFactory.h
rename : dom/sms/src/Types.h => dom/mobilemessage/src/Types.h
rename : dom/sms/src/android/SmsService.cpp => dom/mobilemessage/src/android/SmsService.cpp
rename : dom/sms/src/android/SmsService.h => dom/mobilemessage/src/android/SmsService.h
rename : dom/sms/src/fallback/SmsService.cpp => dom/mobilemessage/src/fallback/SmsService.cpp
rename : dom/sms/src/fallback/SmsService.h => dom/mobilemessage/src/fallback/SmsService.h
rename : dom/sms/src/ipc/PSms.ipdl => dom/mobilemessage/src/ipc/PSms.ipdl
rename : dom/sms/src/ipc/PSmsRequest.ipdl => dom/mobilemessage/src/ipc/PSmsRequest.ipdl
rename : dom/sms/src/ipc/SmsChild.cpp => dom/mobilemessage/src/ipc/SmsChild.cpp
rename : dom/sms/src/ipc/SmsChild.h => dom/mobilemessage/src/ipc/SmsChild.h
rename : dom/sms/src/ipc/SmsIPCService.cpp => dom/mobilemessage/src/ipc/SmsIPCService.cpp
rename : dom/sms/src/ipc/SmsIPCService.h => dom/mobilemessage/src/ipc/SmsIPCService.h
rename : dom/sms/src/ipc/SmsParent.cpp => dom/mobilemessage/src/ipc/SmsParent.cpp
rename : dom/sms/src/ipc/SmsParent.h => dom/mobilemessage/src/ipc/SmsParent.h
rename : dom/sms/src/ipc/SmsTypes.ipdlh => dom/mobilemessage/src/ipc/SmsTypes.ipdlh
rename : dom/sms/src/ipc/ipdl.mk => dom/mobilemessage/src/ipc/ipdl.mk
rename : dom/sms/src/ril/SmsService.cpp => dom/mobilemessage/src/ril/SmsService.cpp
rename : dom/sms/src/ril/SmsService.h => dom/mobilemessage/src/ril/SmsService.h
rename : dom/sms/tests/Makefile.in => dom/mobilemessage/tests/Makefile.in
rename : dom/sms/tests/marionette/manifest.ini => dom/mobilemessage/tests/marionette/manifest.ini
rename : dom/sms/tests/marionette/test_between_emulators.py => dom/mobilemessage/tests/marionette/test_between_emulators.py
rename : dom/sms/tests/marionette/test_bug814761.js => dom/mobilemessage/tests/marionette/test_bug814761.js
rename : dom/sms/tests/marionette/test_emulator_loopback.js => dom/mobilemessage/tests/marionette/test_emulator_loopback.js
rename : dom/sms/tests/marionette/test_filter_date.js => dom/mobilemessage/tests/marionette/test_filter_date.js
rename : dom/sms/tests/marionette/test_filter_date_notfound.js => dom/mobilemessage/tests/marionette/test_filter_date_notfound.js
rename : dom/sms/tests/marionette/test_filter_mixed.js => dom/mobilemessage/tests/marionette/test_filter_mixed.js
rename : dom/sms/tests/marionette/test_filter_number_multiple.js => dom/mobilemessage/tests/marionette/test_filter_number_multiple.js
rename : dom/sms/tests/marionette/test_filter_number_single.js => dom/mobilemessage/tests/marionette/test_filter_number_single.js
rename : dom/sms/tests/marionette/test_filter_read.js => dom/mobilemessage/tests/marionette/test_filter_read.js
rename : dom/sms/tests/marionette/test_filter_received.js => dom/mobilemessage/tests/marionette/test_filter_received.js
rename : dom/sms/tests/marionette/test_filter_sent.js => dom/mobilemessage/tests/marionette/test_filter_sent.js
rename : dom/sms/tests/marionette/test_filter_unread.js => dom/mobilemessage/tests/marionette/test_filter_unread.js
rename : dom/sms/tests/marionette/test_getmessage.js => dom/mobilemessage/tests/marionette/test_getmessage.js
rename : dom/sms/tests/marionette/test_getmessage_notfound.js => dom/mobilemessage/tests/marionette/test_getmessage_notfound.js
rename : dom/sms/tests/marionette/test_getmessages.js => dom/mobilemessage/tests/marionette/test_getmessages.js
rename : dom/sms/tests/marionette/test_incoming.js => dom/mobilemessage/tests/marionette/test_incoming.js
rename : dom/sms/tests/marionette/test_incoming_delete.js => dom/mobilemessage/tests/marionette/test_incoming_delete.js
rename : dom/sms/tests/marionette/test_incoming_max_segments.js => dom/mobilemessage/tests/marionette/test_incoming_max_segments.js
rename : dom/sms/tests/marionette/test_incoming_multipart.js => dom/mobilemessage/tests/marionette/test_incoming_multipart.js
rename : dom/sms/tests/marionette/test_mark_msg_read.js => dom/mobilemessage/tests/marionette/test_mark_msg_read.js
rename : dom/sms/tests/marionette/test_mark_msg_read_error.js => dom/mobilemessage/tests/marionette/test_mark_msg_read_error.js
rename : dom/sms/tests/marionette/test_message_classes.js => dom/mobilemessage/tests/marionette/test_message_classes.js
rename : dom/sms/tests/marionette/test_outgoing.js => dom/mobilemessage/tests/marionette/test_outgoing.js
rename : dom/sms/tests/marionette/test_outgoing_delete.js => dom/mobilemessage/tests/marionette/test_outgoing_delete.js
rename : dom/sms/tests/marionette/test_outgoing_max_segments.js => dom/mobilemessage/tests/marionette/test_outgoing_max_segments.js
rename : dom/sms/tests/marionette/test_segment_info.js => dom/mobilemessage/tests/marionette/test_segment_info.js
rename : dom/sms/tests/marionette/test_strict_7bit_encoding.js => dom/mobilemessage/tests/marionette/test_strict_7bit_encoding.js
rename : dom/sms/tests/moz.build => dom/mobilemessage/tests/moz.build
rename : dom/sms/tests/test_sms_basics.html => dom/mobilemessage/tests/test_sms_basics.html
rename : dom/sms/tests/test_smsdatabaseservice.xul => dom/mobilemessage/tests/test_smsdatabaseservice.xul
rename : dom/sms/tests/test_smsfilter.html => dom/mobilemessage/tests/test_smsfilter.html
rename : dom/sms/tests/test_smsservice_createsmsmessage.js => dom/mobilemessage/tests/test_smsservice_createsmsmessage.js
rename : dom/sms/tests/xpcshell.ini => dom/mobilemessage/tests/xpcshell.ini
2013-03-01 16:38:47 +08:00
Gregory Szorc
c7bf7887f9 Bug 784841 - Part 18r: Convert /ipc; r=ted f=Ms2ger 2013-02-25 12:47:22 -08:00
Josh Matthews
10314074af Bug 770778 - Make TCPSocket e10s-friendly. r=bent 2012-09-24 14:53:49 -04:00
Ben Turner
4b09919a18 Bug 781256 - 'Share FileDescriptors across processes in preparation for OS-level sandbox'. r=khuey+cjones.
--HG--
rename : netwerk/base/public/nsIIPCSerializable.idl => netwerk/base/public/nsIIPCSerializableObsolete.idl
extra : transplant_source : %EB%18%9D%E6%B1%C6%26%A2%16%F3%85g%1A%25%B1%8E%A1%E72e
2012-08-16 00:02:32 -04:00
Mike Hommey
70d7c821af Bug 774032 bonus - Use @DEPTH@ and @relativesrcdir@ in Makefile.in. r=ted 2012-08-04 20:26:44 +02:00
Kyle Machulis
f8c0d08e82 Bug 740744: Asynchronous dbus events for bluetooth, Start/StopDiscovery and device event firing; r=bent sr=mrbkap 2012-07-17 20:41:54 -07:00
Doug Turner
f2adcdd386 Bug 761930 - Multi-process support for Device Storage. r=sicking 2012-06-19 16:14:39 -07:00
Ryan VanderMeulen
6e7f656ffd Backout b3f14a850269, f9d877d78294, and c7335ca109a4 due to build bustage. 2012-07-14 00:01:52 -04:00
Doug Turner
2eff5553d0 Bug 761930 - Multi-process support for Device Storage. r=sicking 2012-06-19 16:14:39 -07:00
Ryan VanderMeulen
5f2a19ee6e Revert c39d36167b99 due to a horribly munged backout. 2012-06-10 19:44:50 -04:00
Ryan VanderMeulen
6d6c4efbab Backout the bug 754202 backout due to orange. 2012-06-10 19:37:47 -04:00
Chris Jones
327b10472e Bug 521898, part 9: Backend support for .ipdlh. r=bent 2012-06-08 17:25:36 -07:00
Ben Turner
3fdf917cd6 Bug 666693 - 'Remote IndexedDB for multiple IndexedDB-using processes'. r=cjones+sicking. 2012-06-01 10:21:12 -07:00
Gervase Markham
82ff7027aa Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
Kyle Huey
b6b17661cb Refix bug 741248 harder. r=me 2012-04-09 17:41:22 -07:00
Takanori MATSUURA
bd9ba0040a Bug 737006 - Use internal ply only if needed. r=khuey 2012-04-06 14:06:52 -04:00
Ms2ger
41881a88d1 Bug 711838 - Remove the jetpack service; r=bsmedberg
Change to toolkit-makefiles.sh r=edmorley
2011-12-24 09:25:52 +01:00
Kyle Huey
7788949687 Back out Bug 629668 because it breaks pymake builds. 2011-12-18 14:08:21 -05:00
Benoit Girard
1ac32258fc Bug 629668 - Don't rebuild IPDL files when not necessary; r=cjones 2011-12-15 15:10:35 +00:00
Mounir Lamouri
6c64cacfae Bug 674725 - Part G - Add PSms IPDL sub-protocol. r=smaug sr=cjones 2011-11-20 23:40:53 +01:00
Chris Jones
e427b8472f Bug 690670, parts 1 and 2: Add a hal/ directory in which we can add device-interaction code, and build goop thereto. r=khuey sr=roc
--HG--
extra : rebase_source : bf3dc09f49d010ac4422150fc5300a41080af858
2011-10-05 15:15:45 -07:00
Josh Matthews
f0668c3546 Bug 537787 - Remote websockets. r=jduell 2011-05-04 15:36:23 +02:00