Local C-C TB compilation Issues after |make tb-rust vendor|

53 views
Skip to first unread message

ISHIKAWA,chiaki

unread,
Jun 19, 2024, 10:07:16 PM (13 days ago) Jun 19
to dev-platform, Thunderbird Developers
Hi,

I have been compiling C-C TB locally under linux.
I use HG MQ extension very much although I am moving some patches to use
HG  EVOLVE extension lately.

Now, I don't do local compilation using the source files in a repository
mangaed by HG EVOLVE extension.

However, I do local build using the source files in a repository managed
by HG MQ extension. and that is where the build issue has arisen lately.

(I am trying to move the patches to HG EVOLVE completely in the long
run, but when I have 50+ patches, the transition is not that easy.)

The local compilation has  lately failed due to

   Rust dependencies are out of sync. Run `mach tb-rust vendor`.
   toolkit/library/rust/shared/Cargo.toml

OK, I thought.

So I ran |mach tb-rust vendor|, but then I find strange local repository
change and
I cannot push my local patches any more.

I tried to capture the change as a local MQ patch and tried to ignore it.
It worked about a week ago. (It probably was due to |make rust vendor|?)

But now, it no longer works that way.
The local C-C TB build fails claiming that the rust depenndencies are
out of sync.
So I thought, "Aha, maybe the change needs to be COMMITED to the
local repo."
Wrong move.
Now the local repository is in  a very strange state and I cannot
manipulate local repo any more.

$ hg qpush
abort: local changes found, qrefresh first

Even after I did hg qrefr, I get the same error.

I was initially inclined to think the problem is due to the use of HG MQ
and maybe the files under HG EVOLVE
is OK, but come to think of it, I have not tried to locally build using
the files in the directory managed by HG EVOLVE.
I only pushed the change to try-comm-central to build/test there from
the directory under HG EVOLVE.

I suspect that if I try to build locally under that directory, I will
see the same problem. For fear of breaking the repository, I have not
tried the local compilation there.


I have re-created the local comm tree from scratch and tried build
again,  but still the problem persists.
It is as if the changes caused by |mach tb-rust vendor| may not be
playing very nicely with local build.

Has anyone experienced this problem?

It would be great if the file bundle obtained by

   |hg clone https://hg.mozilla.org/comm-central comm/|

already contains whatever changes necessary to shut up the
"Rust dependencies are out of sync. Run `mach tb-rust vendor`." which
fails the local build.
It seems it does not, and once a user locally runs |mach tb-rust
vendor||, something goes wrong in the local HG configuration.

Chiaki

Reply all
Reply to author
Forward
0 new messages