question for marcus about rust's compiler_builtins and macosx_deployment_target

mcalhoun at macports.org mcalhoun at macports.org
Wed May 29 05:16:50 UTC 2024


Greetings.

I am afraid it is very difficult to answer this question without having a much greater insight into Firefox builds.
I am not quite sure what libgkrust.a is, but if it is copying files from the Rust supplied libcompiler_builtins-xxx.rlib, then it would make sense that there would be a discrepancy.
Rust was built with MACOSX_DEPLOYMENT_TARGET=10.14 because that is the host system.
If that is indeed the case, the only way I can think to eliminate the warnings is to recompile rust from source with `macos_version=10.9` and perhaps `os.major=13`.
However, this is untested and unsupported.

-Marcus

> On May 27, 2024, at 11:55 AM, Gagan Sidhu via macports-dev <macports-dev at lists.macports.org> wrote:
> 
> hi marcus
> 
> i’m working on making a firefox that works all the way back to 10.9
> 
> right now i am using it on 10.14 without issue, and i think the only thing left is ensuring rust honours my macosx_deployment_target
> 
> it seems rustc from macports (1.77.1) honours this variable for the most part, but i noticed one unusual thing.
> 
> when i use the mozilla toolchain’s rust (1.78), which has an implicit minimum of 10.12, i would get this:
> 
>> 34:32.52 ld64.lld: warning: ../../../x86_64-apple-darwin/release/libgkrust.a(std-b3629cc59bb38ebe.std.991b467e8ac0a4ad-cgu.0.rcgu.o) has version 10.12.0, which is newer than target minimum of 10.9.0
>> 34:32.52 ld64.lld: warning: ../../../x86_64-apple-darwin/release/libgkrust.a(panic_abort-e0744c14fcbc8bcc.panic_abort.c40177b90b1e9efd-cgu.0.rcgu.o) has version 10.12.0, which is newer than target minimum of 10.9.0
>> 34:32.52 ld64.lld: warning: ../../../x86_64-apple-darwin/release/libgkrust.a(object-5c7ad728062c8a84.object.804ec97e1ad5a55c-cgu.0.rcgu.o) has version 10.12.0, which is newer than target minimum of 10.9.0
>> 34:32.53 ld64.lld: warning: ../../../x86_64-apple-darwin/release/libgkrust.a(memchr-90583dbfcd2cd9d8.memchr.5e40ebe02bc7fee7-cgu.0.rcgu.o) has version 10.12.0, which is newer than target minimum of 10.9.0
>> 34:32.53 ld64.lld: warning: ../../../x86_64-apple-darwin/release/libgkrust.a(addr2line-f8a104b41642d585.addr2line.738d67e118a72e5c-cgu.0.rcgu.o) has version 10.12.0, which is newer than target minimum of 10.9.0
>> 34:32.53 ld64.lld: warning: ../../../x86_64-apple-darwin/release/libgkrust.a(gimli-2dd3c1cbaa8c6ac2.gimli.25cd2fd39526eafa-cgu.0.rcgu.o) has version 10.12.0, which is newer than target minimum of 10.9.0
>> 34:32.53 ld64.lld: warning: ../../../x86_64-apple-darwin/release/libgkrust.a(rustc_demangle-4b94f82697827b68.rustc_demangle.f3e6ea9654b87c89-cgu.0.rcgu.o) has version 10.12.0, which is newer than target minimum of 10.9.0
>> 34:32.54 ld64.lld: warning: ../../../x86_64-apple-darwin/release/libgkrust.a(std_detect-526c5fbf4504f5c2.std_detect.cc21ff6764f76c21-cgu.0.rcgu.o) has version 10.12.0, which is newer than target minimum of 10.9.0
>> 34:32.54 ld64.lld: warning: ../../../x86_64-apple-darwin/release/libgkrust.a(hashbrown-8983e26402bf8df3.hashbrown.c235b46fdb144bda-cgu.0.rcgu.o) has version 10.12.0, which is newer than target minimum of 10.9.0
>> 34:32.55 ld64.lld: warning: ../../../x86_64-apple-darwin/release/libgkrust.a(alloc-81d461325d712857.alloc.803e2326cde23ec3-cgu.0.rcgu.o) has version 10.12.0, which is newer than target minimum of 10.9.0
>> 34:32.55 ld64.lld: warning: ../../../x86_64-apple-darwin/release/libgkrust.a(core-4015b3a6e383e0ad.core.b03ae248d863ca2a-cgu.0.rcgu.o) has version 10.12.0, which is newer than target minimum of 10.9.0
>> 34:32.55 ld64.lld: warning: ../../../x86_64-apple-darwin/release/libgkrust.a(compiler_builtins-d6175b4ffbd6f2cb.compiler_builtins.c536cea08157bc6d-cgu.021.rcgu.o) has version 10.12.0, which is newer than target minimum of 10.9.0
>> 34:32.55 ld64.lld: warning: ../../../x86_64-apple-darwin/release/libgkrust.a(compiler_builtins-d6175b4ffbd6f2cb.compiler_builtins.c536cea08157bc6d-cgu.027.rcgu.o) has version 10.12.0, which is newer than target minimum of 10.9.0
>> 34:32.56 ld64.lld: warning: ../../../x86_64-apple-darwin/release/libgkrust.a(compiler_builtins-d6175b4ffbd6f2cb.compiler_builtins.c536cea08157bc6d-cgu.034.rcgu.o) has version 10.12.0, which is newer than target minimum of 10.9.0
>> 34:32.56 ld64.lld: warning: ../../../x86_64-apple-darwin/release/libgkrust.a(compiler_builtins-d6175b4ffbd6f2cb.compiler_builtins.c536cea08157bc6d-cgu.035.rcgu.o) has version 10.12.0, which is newer than target minimum of 10.9.0
>> 34:32.56 ld64.lld: warning: ../../../x86_64-apple-darwin/release/libgkrust.a(compiler_builtins-d6175b4ffbd6f2cb.compiler_builtins.c536cea08157bc6d-cgu.061.rcgu.o) has version 10.12.0, which is newer than target minimum of 10.9.0
>> 34:32.56 ld64.lld: warning: ../../../x86_64-apple-darwin/release/libgkrust.a(compiler_builtins-d6175b4ffbd6f2cb.compiler_builtins.c536cea08157bc6d-cgu.080.rcgu.o) has version 10.12.0, which is newer than target minimum of 10.9.0
>> 34:32.57 ld64.lld: warning: ../../../x86_64-apple-darwin/release/libgkrust.a(compiler_builtins-d6175b4ffbd6f2cb.compiler_builtins.c536cea08157bc6d-cgu.084.rcgu.o) has version 10.12.0, which is newer than target minimum of 10.9.0
>> 34:32.57 ld64.lld: warning: ../../../x86_64-apple-darwin/release/libgkrust.a(compiler_builtins-d6175b4ffbd6f2cb.compiler_builtins.c536cea08157bc6d-cgu.097.rcgu.o) has version 10.12.0, which is newer than target minimum of 10.9.0
>> 34:32.57 ld64.lld: warning: ../../../x86_64-apple-darwin/release/libgkrust.a(compiler_builtins-d6175b4ffbd6f2cb.compiler_builtins.c536cea08157bc6d-cgu.008.rcgu.o) has version 10.12.0, which is newer than target minimum of 10.9.0
>> 34:32.57 ld64.lld: warning: ../../../x86_64-apple-darwin/release/libgkrust.a(compiler_builtins-d6175b4ffbd6f2cb.compiler_builtins.c536cea08157bc6d-cgu.101.rcgu.o) has version 10.12.0, which is newer than target minimum of 10.9.0
> 
> 
> but when i use the macports rust, i get this:
>> 1:37.62 ld64.lld: warning: ../../../x86_64-apple-darwin/release/libgkrust.a(compiler_builtins-5cf596999632f69b.compiler_builtins.5e29af35305e20ca-cgu.045.rcgu.o) has version 10.14.0, which is newer than target minimum of 10.9.0
>> 1:37.62 ld64.lld: warning: ../../../x86_64-apple-darwin/release/libgkrust.a(compiler_builtins-5cf596999632f69b.compiler_builtins.5e29af35305e20ca-cgu.053.rcgu.o) has version 10.14.0, which is newer than target minimum of 10.9.0
>> 1:37.63 ld64.lld: warning: ../../../x86_64-apple-darwin/release/libgkrust.a(compiler_builtins-5cf596999632f69b.compiler_builtins.5e29af35305e20ca-cgu.060.rcgu.o) has version 10.14.0, which is newer than target minimum of 10.9.0
>> 1:37.63 ld64.lld: warning: ../../../x86_64-apple-darwin/release/libgkrust.a(compiler_builtins-5cf596999632f69b.compiler_builtins.5e29af35305e20ca-cgu.068.rcgu.o) has version 10.14.0, which is newer than target minimum of 10.9.0
>> 
> obviously the macports version is much better, since it has reduced the number of warnings. but i found it unusual that it still left 4 compiler_builtins at a version higher than the mozilla rust.
> 
> is there any insight i could provide, or maybe you could share, that could help me remove these last 4 warnings?
> 
> Thanks,
> Gagan
> 



More information about the macports-dev mailing list