Hi Thomas!

A newer version of the library has been force-pushed to the branch `libgrust-v2/to-submit`.

On 11/20/23 15:55, Thomas Schwinge wrote:
Hi!

Arthur and Pierre-Emmanuel have prepared a GCC/Rust libgrust-v2/to-submit
branch: <https://github.com/Rust-GCC/gccrs/tree/libgrust-v2/to-submit>.
In that one, most of the issues raised have been addressed, and which
I've now successfully "tested" in my different GCC configurations,
requiring just one additional change (see end of this email).  I'm using
"tested" in quotes here, as libgrust currently is still missing its
eventual content, and still is without actual users, so we may still be
up for surprises later on.  ;-)

On 2023-10-27T22:41:52+0200, I wrote:
On 2023-09-27T00:25:16+0200, I wrote:
don't we also directly need to
incorporate here a few GCC/Rust master branch follow-on commits, like:

   - commit 171ea4e2b3e202067c50f9c206974fbe1da691c0 "fixup: Fix bootstrap 
build"
   - commit 61cbe201029658c32e5c360823b9a1a17d21b03c "fixup: Fix missing build 
dependency"

I've not yet run into the need for these two.  Let's please leave these
out of the upstream submission for now, until we understand what exactly
these are necessary for.

(Still the same.)

Do you mean that we should remove the content of these commits from the submission? If so, I believe it's now done.


However:

   - commit 6a8b207b9ef7f9038e0cae7766117428783825d8 "libgrust: Add dependency to 
libstdc++"

... this one definitely is necessary right now; see discussion in
<https://inbox.sourceware.org/8734xv24dd....@euler.schwinge.homeip.net>
"Disable target libgrust if we're not building target libstdc++".

This one still isn't in the GCC/Rust libgrust-v2/to-submit branch -- but
having now tested that branch, I'm now no longer seeing the respective
build failure.  Isn't that change "libgrust: Add dependency to libstdc++"
still necessary, conceptually?  (Maybe we're just lucky, currently?)
I'll be sure to re-test in my different GCC configurations once libgrust
gains actual content and use.  (..., which might then re-expose the
original problem?)

This commit was integrated into another one:

fb31093105e build: Add libgrust as compilation modules

(on libgrust-v2/to-submit as of 2 minutes ago)


And:

(Not sure if all of these are necessary and/or if that's the complete
list; haven't looked up the corresponding GCC/Rust GitHub PRs.)

--- a/gcc/rust/config-lang.in
+++ b/gcc/rust/config-lang.in

+target_libs="target-libffi target-libbacktrace target-libgrust"

Please don't add back 'target-libffi' and 'target-libbacktrace' here;
just 'target-libgrust'.  (As is present in GCC/Rust master branch, and
per commit 7411eca498beb13729cc2acec77e68250940aa81
"Rust: Don't depend on unused 'target-libffi', 'target-libbacktrace'".)

... that change is necessary, too.

That's still unchanged in the GCC/Rust libgrust-v2/to-submit branch;
please apply to 'gcc/rust/config-lang.in':

     -target_libs="target-libffi target-libbacktrace target-libgrust"
     +target_libs=target-libgrust

Then, still should re-order the commits so that (re)generation of
auto-generated files comes before use of libgrust (so that later
bisection doesn't break), and move the 'contrib/gcc_update' update into
the commit that adds the auto-generated files.

Do you mean that the regeneration should happen before the commit adding the proc_macro library? Or that when we keep going and adding more commits on top of this, we need to make sure the regeneration commit happens before any code starts using/depending on libgrust/?

And alright, we'll move the changes to contrib/gcc_update into the regeneration commit.

All the best, and thanks again for testing :)

Arthur



Grüße
  Thomas
-----------------
Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstraße 201, 80634 
München; Gesellschaft mit beschränkter Haftung; Geschäftsführer: Thomas 
Heurung, Frank Thürauf; Sitz der Gesellschaft: München; Registergericht 
München, HRB 106955

Reply via email to