Add a wrapper at build/pymake/make.py that pulls in mozilla-central if necessary

RESOLVED FIXED in Thunderbird 18.0

Status

MailNews Core
Build Config
RESOLVED FIXED
5 years ago
5 years ago

People

(Reporter: sid0, Assigned: sid0)

Tracking

unspecified
Thunderbird 18.0
Dependency tree / graph

Thunderbird Tracking Flags

(thunderbird17 fixed)

Details

Attachments

(1 attachment, 2 obsolete attachments)

Created attachment 657885 [details] [diff] [review]
patch v1

I've tested this on a Windows builder and it seems to work fine. I'm going to push this to try next.
Attachment #657885 - Flags: review?(mbanner)
(Assignee)

Comment 1

5 years ago
https://tbpl.mozilla.org/?tree=Thunderbird-Try&rev=2472163b71e1
(Assignee)

Comment 2

5 years ago
So one problem with this patch is that since mozilla-central loads up the same .mozconfig, $topsrcdir/build/client.py-args isn't found there. Since mozilla-central doesn't actually use that variable, I don't think this is a big problem. An error does show up in the log, though.
(Assignee)

Comment 3

5 years ago
Ugh, looks like I'll need to exclude the files from check-sync-dirs.py too.
(Assignee)

Comment 4

5 years ago
Created attachment 657894 [details] [diff] [review]
patch v2, exclude files from check-sync-dirs

This should be better.
Attachment #657885 - Attachment is obsolete: true
Attachment #657885 - Flags: review?(mbanner)
Attachment #657894 - Flags: review?(mbanner)
(Assignee)

Updated

5 years ago
Depends on: 788607
(Assignee)

Comment 5

5 years ago
Created attachment 658556 [details] [diff] [review]
patch v3, make it dependent on bug 788607

We're going to check this in after enabling pymake on the releng side, so that we have a chance to test Pymake on try.
Attachment #657894 - Attachment is obsolete: true
Attachment #657894 - Flags: review?(mbanner)
Attachment #658556 - Flags: review?(mbanner)
Comment on attachment 658556 [details] [diff] [review]
patch v3, make it dependent on bug 788607

Review of attachment 658556 [details] [diff] [review]:
-----------------------------------------------------------------

::: build/client.py-args
@@ +1,1 @@
> +--hg-options='--time' --hgtool=../tools/buildfarm/utils/hgtool.py --skip-chatzilla --skip-comm --skip-inspector --skip-venkman --tinderbox-print

I'm not sure this default would work for SeaMonkey when they get to use, as they require pulling the extensions.

However, I think they could still override these args in their mozconfigs, which would then take affect when client.mk calls client.py. Have I got that right?

::: build/pymake/make.py
@@ -1,1 @@
> -#!/usr/bin/env python

Why get rid of this line?
(Assignee)

Comment 7

5 years ago
(In reply to Mark Banner (:standard8) from comment #6)
> However, I think they could still override these args in their mozconfigs,
> which would then take affect when client.mk calls client.py. Have I got that
> right?

Hmm. Yes, if what is pulled in through these args is a subset of what is pulled in by SM, then it's safe.

> 
> ::: build/pymake/make.py
> @@ -1,1 @@
> > -#!/usr/bin/env python
> 
> Why get rid of this line?

Yeah no reason to. Reinstated locally.
Comment on attachment 658556 [details] [diff] [review]
patch v3, make it dependent on bug 788607

Ok, lets do this.
Attachment #658556 - Flags: review?(mbanner) → review+
I just pushed this to try server (compensating for the current bustage on trunk) now that pymake has been enabled for the builders:

https://hg.mozilla.org/try-comm-central/rev/e8e5abab63d0
(In reply to Mark Banner (:standard8) from comment #9)
> I just pushed this to try server (compensating for the current bustage on
> trunk) now that pymake has been enabled for the builders:
> 
> https://hg.mozilla.org/try-comm-central/rev/e8e5abab63d0

Err actually, pymake hasn't been enabled :-( I've re-opened bug 786516.
Re-pushed to try (pymake should be on now): https://tbpl.mozilla.org/?tree=Thunderbird-Try&rev=64b8cc05f208
Ok, we have some results, though I don't understand the error:

https://tbpl.mozilla.org/php/getParsedLog.php?id=15821727&tree=Thunderbird-Try
https://tbpl.mozilla.org/php/getParsedLog.php?id=15821676&tree=Thunderbird-Try
https://tbpl.mozilla.org/php/getParsedLog.php?id=15821796&tree=Thunderbird-Try

<msgbase_s.lib.desc>: Found error
<libs>: Found error
e:\builds\moz2_slave\tb-try-c-cen-w32\build\config\rules.mk:998:0$ rm -f msgbsutl_s.lib 
e:\builds\moz2_slave\tb-try-c-cen-w32\build\config\rules.mk:999:0$ c:/mozilla-build/python/python2.6.exe e:/builds/moz2_slave/tb-try-c-cen-w32/build/mozilla/config/pythonpath.py -I../../../mozilla/config e:/builds/moz2_slave/tb-try-c-cen-w32/build/mozilla/config/expandlibs_gen.py --depend .deps/msgbsutl_s.lib.pp -o msgbsutl_s.lib.desc nsMsgLineBuffer.obj nsMsgDBFolder.obj nsMsgKeyArray.obj nsMsgKeySet.obj nsMsgIdentity.obj nsMsgIncomingServer.obj nsMsgUtils.obj nsMsgProtocol.obj nsMsgMailNewsUrl.obj nsMsgTxn.obj nsMsgI18N.obj nsImapMoveCoalescer.obj nsMsgFileStream.obj nsMsgCompressIStream.obj nsMsgCompressOStream.obj nsMsgReadStateTxn.obj nsStopwatch.obj  
e:\builds\moz2_slave\tb-try-c-cen-w32\build\config\rules.mk:745:0: command 'C:/mozilla-build/buildbotve/scripts/python.exe e:/builds/moz2_slave/tb-try-c-cen-w32/build/mozilla/build/pymake/pymake/../make.py -C src libs' failed, return code 2
<libs>: Found error
Found the error, rebuilding currently:

https://tbpl.mozilla.org/?tree=Thunderbird-Try&rev=17a0c2af1f2e
Checked in:

https://hg.mozilla.org/comm-central/rev/5a49ea8a7052
Status: ASSIGNED → RESOLVED
Last Resolved: 5 years ago
Resolution: --- → FIXED
Target Milestone: --- → Thunderbird 18.0
Comment on attachment 658556 [details] [diff] [review]
patch v3, make it dependent on bug 788607

[Triage Comment]
We want this on 17 for pymake goodness.
Attachment #658556 - Flags: approval-comm-aurora+
https://hg.mozilla.org/releases/comm-aurora/rev/1bdaadcf21fe
status-thunderbird17: --- → fixed
Comment on attachment 658556 [details] [diff] [review]
patch v3, make it dependent on bug 788607

Review of attachment 658556 [details] [diff] [review]:
-----------------------------------------------------------------

::: build/client.py-args
@@ +1,1 @@
> +--hg-options='--time' --hgtool=../tools/buildfarm/utils/hgtool.py --skip-chatzilla --skip-comm --skip-inspector --skip-venkman --tinderbox-print

This patch is making us pull the wrong things for releases because we don't have --comm-rev or --mozilla-rev passed to client.py anymore.
Blocks: 796975, 796966
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Turns out I'm wrong - I got totally confused when reading the revision history. This bug doesn't affect the --comm-rev and --mozilla-rev flags at all. We got rid of those in bug 763769 in favour of having client.py look directly at the environment variables instead. There is no problem here after all, yay!
Status: REOPENED → RESOLVED
Last Resolved: 5 years ago5 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.