| 3 Dec 2024 |
kuruczgy | I think clang supports emitting just LLVM IR (.bc files), and only emitting the actual host platform machine code after linking the final binary (this is how LTO works AFAIK). So if the libs could just be compiled to .bc, you would not have to recompile it to each different fpu/mcu combo. (Of course this only works if the libs don't make assumptions about the host, e.g. they don't require you to already specify the exact mcu at compile time.) | 11:47:52 |
Randy Eckenrode | From what I understand, LLVM bitcode is not portable. It’s possible that may work, but it also may not work. This was a frequent source of speculation on Apple platforms before Apple Silicon was announced. If Apple were requiring bitcode submissions to the App Store, does that mean Apple could recompile everyone’s apps for ARM64? According to Chris Lattner, no. | 12:37:16 |
Randy Eckenrode | However, the pain seems to be with having to build a toolchain for every combination. There are some changes in staging that should allow one LLVM toolchain to be used to target different platforms | 12:38:08 |
Randy Eckenrode | * | 12:38:12 |
| @rsdy:rustch.at changed their display name from rsdy to rsdy (old). | 18:05:48 |
| @rsdy:rustch.at left the room. | 18:56:54 |
| 4 Dec 2024 |
alexfmpe | nix-build -A pkgsCross.aarch64-android.llvmPackages.compiler-rt fails with
/build/compiler-rt-src-18.1.8/compiler-rt/lib/builtins/os_version_check.c:287:10: fatal error: 'pthread.h' file not found
287 | #include <pthread.h>
| ^~~~~~~~~~~
1 error generated.
| 00:36:41 |
alexfmpe | any clue where I can get it from? I found this pthreadstubs thing but trying to add it to inputs gives me an infinite recursion | 00:37:05 |
alexfmpe | I might be holding it wrong | 00:37:08 |
alexfmpe | ah the recursion happens when adding it to buildInputs no such thing on nativeBuildInputs but doesn't fix it either | 01:10:52 |
alexfmpe | hmm what I was actually trying to build is nix-build -A pkgsCross.aarch64-android.hello and now I notice that somehow tries to build compiler-rt and stdenv twice?
these 11 derivations will be built:
/nix/store/jhn29m1681gxzps1sxfx8k2cn095ii63-compiler-rt-aarch64-unknown-linux-android-18.1.8.drv
/nix/store/6xzb5f6kgdlvy8g6wff8qjfaapr2qb11-aarch64-unknown-linux-android-clang-wrapper-18.1.8.drv
/nix/store/ckkly8cmq42d0hhd336jnr7qnvxcp154-stdenv-linux.drv
/nix/store/g9mrv1h7wssdnbs94xqj3whn3nvly2wf-libunwind-aarch64-unknown-linux-android-18.1.8.drv
/nix/store/bd8yrwvqxrkx8x13xgpf0wczv6rf2i9d-libcxx-aarch64-unknown-linux-android-18.1.8.drv
/nix/store/jpk1xkn2zb72n6h8yk8wv4vi8abk704g-aarch64-unknown-linux-android-clang-wrapper-18.1.8.drv
/nix/store/cxlyqni5w767a1wydi46jscj7841258i-stdenv-linux.drv
/nix/store/86iixshw0gv2lpm948pdhrmq8dwmw8ww-compiler-rt-libc-aarch64-unknown-linux-android-18.1.8.drv
/nix/store/9hz1mqp97knc52v7w070gzi2nqdlsnrp-aarch64-unknown-linux-android-clang-wrapper-18.1.8.drv
/nix/store/lw1ky1s9xxlf41jgncd0bm2ss327n3sl-stdenv-linux.drv
/nix/store/cc8328dz2ldwd2ff6d9i3q5n58jxdq1p-hello-aarch64-unknown-linux-android-2.12.1.drv
| 01:14:33 |
alexfmpe | * hmm what I was actually trying to build is nix-build -A pkgsCross.aarch64-android.hello and now I notice that somehow tries to build compiler-rt twice and stdenv thrice? wth?
these 11 derivations will be built:
/nix/store/jhn29m1681gxzps1sxfx8k2cn095ii63-compiler-rt-aarch64-unknown-linux-android-18.1.8.drv
/nix/store/6xzb5f6kgdlvy8g6wff8qjfaapr2qb11-aarch64-unknown-linux-android-clang-wrapper-18.1.8.drv
/nix/store/ckkly8cmq42d0hhd336jnr7qnvxcp154-stdenv-linux.drv
/nix/store/g9mrv1h7wssdnbs94xqj3whn3nvly2wf-libunwind-aarch64-unknown-linux-android-18.1.8.drv
/nix/store/bd8yrwvqxrkx8x13xgpf0wczv6rf2i9d-libcxx-aarch64-unknown-linux-android-18.1.8.drv
/nix/store/jpk1xkn2zb72n6h8yk8wv4vi8abk704g-aarch64-unknown-linux-android-clang-wrapper-18.1.8.drv
/nix/store/cxlyqni5w767a1wydi46jscj7841258i-stdenv-linux.drv
/nix/store/86iixshw0gv2lpm948pdhrmq8dwmw8ww-compiler-rt-libc-aarch64-unknown-linux-android-18.1.8.drv
/nix/store/9hz1mqp97knc52v7w070gzi2nqdlsnrp-aarch64-unknown-linux-android-clang-wrapper-18.1.8.drv
/nix/store/lw1ky1s9xxlf41jgncd0bm2ss327n3sl-stdenv-linux.drv
/nix/store/cc8328dz2ldwd2ff6d9i3q5n58jxdq1p-hello-aarch64-unknown-linux-android-2.12.1.drv
| 01:14:50 |
alexfmpe | this first compiler-rt is a dependency of everything else there, verified with --keep-going | 01:16:32 |
alexfmpe | FWIW aarch64-android-prebuild.hello works just fine | 01:16:53 |
alexfmpe | * FWIW aarch64-android-prebuilt.hello works just fine | 01:17:07 |
Artturin | I don't think anyone uses non -prebuilt | 01:29:53 |
Artturin | Maybe need to separate headers from the ndk? | 01:41:46 |
Artturin | Dunno where else would you get pthread for android if it's different from normal | 01:42:24 |
Artturin | In reply to @alexfmpe:matrix.org ah the recursion happens when adding it to buildInputs no such thing on nativeBuildInputs but doesn't fix it either Because of strictDeps, you can try to cheat it with buildPackages.pthreadstubs in buildInputs if there's no hostPlatform diff | 01:43:45 |
| @mmlb:matrix.org left the room. | 02:44:03 |
| xin changed their display name from Xinyang Li to xin. | 15:45:05 |
| 5 Dec 2024 |
Alexandros Liarokapis | this shoulds very interesting, can you point me to anything to take a look at the changes? | 08:40:13 |
Alexandros Liarokapis | * this shoulds very interesting, can you point me to the changes? | 08:40:25 |
K900 | Anyone want a fun adventure | 08:40:52 |
K900 | Mesa 24.3 broke cross | 08:41:00 |
K900 | When the asahi driver is enabled | 08:41:05 |
K900 | It's very fixable | 08:42:33 |
K900 | You just need to do some pretty invasive surgery | 08:42:45 |
| Danny Gerhardt joined the room. | 09:58:05 |
Randy Eckenrode | In reply to @aliarokapis:matrix.org this shoulds very interesting, can you point me to the changes? https://github.com/NixOS/nixpkgs/pull/355532 https://github.com/NixOS/nixpkgs/pull/356162 https://github.com/NixOS/nixpkgs/pull/357633 | 12:03:00 |