WebKit Bugzilla
New
Browse
Log In
×
Sign in with GitHub
or
Remember my login
Create Account
·
Forgot Password
Forgotten password account recovery
RESOLVED FIXED
104434
Make ninja the default build system for build-webkit --chromium on linux
https://bugs.webkit.org/show_bug.cgi?id=104434
Summary
Make ninja the default build system for build-webkit --chromium on linux
Eric Seidel (no email)
Reported
2012-12-08 00:19:43 PST
Make ninja the default build system for build-webkit --chromium
Attachments
Patch
(2.37 KB, patch)
2012-12-08 00:22 PST
,
Eric Seidel (no email)
no flags
Details
Formatted Diff
Diff
Patch
(3.18 KB, patch)
2012-12-10 19:10 PST
,
Eric Seidel (no email)
no flags
Details
Formatted Diff
Diff
Patch
(1.82 KB, patch)
2013-01-12 16:57 PST
,
Nico Weber
no flags
Details
Formatted Diff
Diff
Patch
(3.11 KB, patch)
2013-01-12 19:11 PST
,
Nico Weber
no flags
Details
Formatted Diff
Diff
Show Obsolete
(3)
View All
Add attachment
proposed patch, testcase, etc.
Eric Seidel (no email)
Comment 1
2012-12-08 00:22:45 PST
Created
attachment 178344
[details]
Patch
Eric Seidel (no email)
Comment 2
2012-12-08 00:34:07 PST
Comment on
attachment 178344
[details]
Patch I've emailed webkit-dev to give folks a chance to scream if they're Chromium contributors and anti-ninja for whatever reason. I'll land this on Tuesday, once I give folks at least one work-day to reply.
Daniel Bates
Comment 3
2012-12-08 01:14:14 PST
Comment on
attachment 178344
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=178344&action=review
The patch looks good to me. I noticed some very minor spelling nits. As you mentioned in
comment 2
, we should wait until next week to land this patch so as to give people an opportunity to digest the webkit-dev email and provide feedback.
> Tools/ChangeLog:3 > + Make ninja the default build system for build-webkit --chromium
Nit: ninja => Ninja The word "ninja" appears five more times as a proper noun in this patch.
> Tools/ChangeLog:9 > + as their default build system instead of the native Xcode/VisualStudio/Make.
Nit: VisualStudio => Visual Studio
> Tools/ChangeLog:10 > + This change makes ninja the default for developers as well as all chromium webkit bots.
Nit: chromium => Chromium
Peter Beverloo
Comment 4
2012-12-10 07:41:27 PST
For Chromium for Android, one additional change is required. In the following code in webkitdirs.pm (around line 2520): ====== $result = buildChromiumVisualStudioProject("Source/WebKit/chromium/All.sln", $clean); } elsif (isChromiumNinja() && !isChromiumAndroid()) { $result = buildChromiumNinja("all", $clean, @options); } elsif (isLinux() || isChromiumAndroid() || isChromiumMacMake()) { ====== The !isChromiumAndroid() check forces Ninja off for build-webkit. It should be fine to remove that :).
Eric Seidel (no email)
Comment 5
2012-12-10 19:10:27 PST
Created
attachment 178688
[details]
Patch
Eric Seidel (no email)
Comment 6
2012-12-10 19:13:59 PST
I'll press the cq+ button in the morning if I don't here any further complaints from non-PSTers before then. I'll send a note to webkit-dev when I do and will be around to work out any acidental build breakages.
Eric Seidel (no email)
Comment 7
2012-12-11 14:21:50 PST
Comment on
attachment 178688
[details]
Patch Bombs away!
Eric Seidel (no email)
Comment 8
2012-12-11 14:37:13 PST
CCing current Chromium/WebKit gardeners. I'm here to resolve any issues should they arrise.
Eric Seidel (no email)
Comment 9
2012-12-11 15:34:53 PST
Comment on
attachment 178688
[details]
Patch Clearing flags on attachment: 178688 Committed
r137371
: <
http://trac.webkit.org/changeset/137371
>
Eric Seidel (no email)
Comment 10
2012-12-11 15:34:57 PST
All reviewed patches have been landed. Closing bug.
WebKit Review Bot
Comment 11
2012-12-11 15:45:44 PST
Re-opened since this is blocked by
bug 104731
Eric Seidel (no email)
Comment 12
2012-12-11 15:46:24 PST
Reverted
r137371
for reason: Various scripts are not ready for out/ as the build directory, this can't work as written. Committed
r137375
: <
http://trac.webkit.org/changeset/137375
>
Dirk Pranke
Comment 13
2012-12-20 09:46:24 PST
Note that it doesn't look like ninja is currently working in a webkit checkout, so we don't want this to be the default on windows yet. Hopefully I'll find more time to debug this today.
Nico Weber
Comment 14
2012-12-20 09:54:06 PST
(In reply to
comment #13
)
> Note that it doesn't look like ninja is currently working in a webkit checkout, so we don't want this to be the default on windows yet. Hopefully I'll find more time to debug this today.
If ninja isn't working on windows, no DumpRenderTree.exe will be created on windows, and this change is harmless on windows.
Dirk Pranke
Comment 15
2012-12-20 10:04:02 PST
(In reply to
comment #14
)
> (In reply to
comment #13
) > > Note that it doesn't look like ninja is currently working in a webkit checkout, so we don't want this to be the default on windows yet. Hopefully I'll find more time to debug this today. > > If ninja isn't working on windows, no DumpRenderTree.exe will be created on windows, and this change is harmless on windows.
Huh? Right now build-webkit --chromium on windows will successfully compile using msvs; with this change we'll use ninja and the build will fail.
Nico Weber
Comment 16
2012-12-20 10:04:55 PST
(In reply to
comment #15
)
> (In reply to
comment #14
) > > (In reply to
comment #13
) > > > Note that it doesn't look like ninja is currently working in a webkit checkout, so we don't want this to be the default on windows yet. Hopefully I'll find more time to debug this today. > > > > If ninja isn't working on windows, no DumpRenderTree.exe will be created on windows, and this change is harmless on windows. > > Huh? Right now build-webkit --chromium on windows will successfully compile using msvs; with this change we'll use ninja and the build will fail.
Oh sorry, I thought this was the nrwt bug. Nevermind.
Nico Weber
Comment 17
2012-12-20 13:42:48 PST
With
bug 105498
fixed, I think this is ready for another try, at least on linux and mac.
Nico Weber
Comment 18
2013-01-12 16:57:03 PST
Created
attachment 182476
[details]
Patch
Nico Weber
Comment 19
2013-01-12 16:57:38 PST
Let's try this, on linux first where ninja and make have the same output directory.
Eric Seidel (no email)
Comment 20
2013-01-12 17:37:21 PST
Comment on
attachment 182476
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=182476&action=review
OK.
> Tools/Scripts/update-webkit:50 > +my $useNinja = $^O eq "linux";
Does this affect non-chromium?
Nico Weber
Comment 21
2013-01-12 17:41:49 PST
Comment on
attachment 182476
[details]
Patch View in context:
https://bugs.webkit.org/attachment.cgi?id=182476&action=review
Thanks!
>> Tools/Scripts/update-webkit:50 >> +my $useNinja = $^O eq "linux"; > > Does this affect non-chromium?
It will set the environment variable GYP_GENERATORS to "ninja" for all ports. I would think that this has no effect for the other ports.
WebKit Review Bot
Comment 22
2013-01-12 18:09:54 PST
Comment on
attachment 182476
[details]
Patch Clearing flags on attachment: 182476 Committed
r139557
: <
http://trac.webkit.org/changeset/139557
>
WebKit Review Bot
Comment 23
2013-01-12 18:09:59 PST
All reviewed patches have been landed. Closing bug.
Nico Weber
Comment 24
2013-01-12 18:21:27 PST
Turns out this didn't change anything on the bots, because Tools/BuildSlaveSupport/build.webkit.org-config/master.cfg says: class InstallChromiumDependencies(shell.ShellCommand): name = "gclient" description = ["updating chromium dependencies"] descriptionDone = ["updated chromium dependencies"] command = ["perl", "./Tools/Scripts/update-webkit-chromium", "--force"] So the bots always run update-webkit-chromium directly, while we changed update-webkit.
Nico Weber
Comment 25
2013-01-12 18:24:26 PST
(In reply to
comment #24
)
> Turns out this didn't change anything on the bots, because Tools/BuildSlaveSupport/build.webkit.org-config/master.cfg says: > > class InstallChromiumDependencies(shell.ShellCommand): > name = "gclient" > description = ["updating chromium dependencies"] > descriptionDone = ["updated chromium dependencies"] > command = ["perl", "./Tools/Scripts/update-webkit-chromium", "--force"] > > > So the bots always run update-webkit-chromium directly, while we changed update-webkit.
This was added in
bug 31442
by yaar@, who's no longer working on chromium. Mark Rowe pointed out that calling update-webkit --chromium might be a better idea on the review; not sure why that wasn't done.
Nico Weber
Comment 26
2013-01-12 19:11:28 PST
Created
attachment 182478
[details]
Patch
Eric Seidel (no email)
Comment 27
2013-01-12 19:40:49 PST
Comment on
attachment 182478
[details]
Patch OK.
WebKit Review Bot
Comment 28
2013-01-12 20:32:04 PST
Comment on
attachment 182478
[details]
Patch Clearing flags on attachment: 182478 Committed
r139559
: <
http://trac.webkit.org/changeset/139559
>
WebKit Review Bot
Comment 29
2013-01-12 20:32:09 PST
All reviewed patches have been landed. Closing bug.
Nico Weber
Comment 30
2013-01-12 23:51:22 PST
Let's make this bug about linux. I filed
bug 106737
for mac.
Dirk Pranke
Comment 31
2013-01-13 10:20:25 PST
(In reply to
comment #25
)
> (In reply to
comment #24
) > > Turns out this didn't change anything on the bots, because Tools/BuildSlaveSupport/build.webkit.org-config/master.cfg says: > > > > class InstallChromiumDependencies(shell.ShellCommand): > > name = "gclient" > > description = ["updating chromium dependencies"] > > descriptionDone = ["updated chromium dependencies"] > > command = ["perl", "./Tools/Scripts/update-webkit-chromium", "--force"] > > > > > > So the bots always run update-webkit-chromium directly, while we changed update-webkit. > > This was added in
bug 31442
by yaar@, who's no longer working on chromium. Mark Rowe pointed out that calling update-webkit --chromium might be a better idea on the review; not sure why that wasn't done.
I''ve seen cases where calling update-webkit --chromium doesn't work on windows (it fails to fork the subprocess); I can't recall at the moment if this is win32, msys, or cygwin, and I always figured it was something in my local setup but I haven't dug into it. Perhaps yaar was seeing something similar.
Note
You need to
log in
before you can comment on or make changes to this bug.
Top of Page
Format For Printing
XML
Clone This Bug