Thiago Kenji Okada
45eff9d9c7
graalvm-ce: 22.3.1 -> 21.0.0
...
This initially may look like a downgrade, but this is caused by how
upstream is tagging versions.
Before they would have the GraalVM having its own version (e.g. 22.3.1),
and each version would support multiple JVM versions (e.g. 11, 17, 19).
Now each release supports only one JVM version (e.g.: 21), and they
track the same version as the JVM.
They also changed packaging, making all sub-products (e.g.: GraalPy,
GraalRuby, etc.) standalone, so they do not depend in GraalVM anymore
and have their own version. Thanks to this change, we will need to
repackage everything.
To simplify, this commit will remove all sub-products and only care
about the GraalVM/Native Image (that is back to GraalVM itself) part.
Other commits will re-added each sub-product.
Fix (partial): https://github.com/NixOS/nixpkgs/issues/257292
2023-09-27 10:25:44 +01:00
Thiago Kenji Okada
f05d7d022c
buildGraalvmNativeImage: allow overwriting {build,install}Phase/nativeBuildInputs
2023-03-17 16:50:52 +00:00
Thiago Kenji Okada
aea640a73b
buildGraalvmNativeImage: allow overriding attributes
...
Remove the previous function closure, that would make it difficult to
access the inner derivation attributes.
Fix issue #216787 .
2023-02-18 12:38:09 +00:00
Thiago Kenji Okada
d2e047f112
graalvm-ce: add it to all-packages pointing to graalvm11-ce
2023-02-12 19:08:44 +00:00
Thiago Kenji Okada
6704d4f4e4
bbin: inherit graalvmDrv from babashka
2023-02-11 14:03:22 +00:00
Thiago Kenji Okada
256195c07a
native-image-installable-svm: init at 22.3.0
...
Also refactor the buildGraalvm derivation, allowing it to compose with
the other products.
2023-02-09 21:42:39 +00:00
Thiago Kenji Okada
afb99ad5d4
graalvm*-ce: wrap native-image to pass -H:CLibraryPath, misc improvements
...
Fixes issue #214922 by not adding C libraries to the default library
path of GraalVM. This should reduce the closure size of native compiled
binaries in nixpkgs again, e.g.:
Before:
```
$ ldd ./result/bin/bb
linux-vdso.so.1 (0x00007fff2669b000)
libstdc++.so.6 => /nix/store/qbgfsaviwqi2p6jr7an1g2754sv3xqhn-gcc-11.3.0-lib/lib/libstdc++.so.6 (0x00007f77fc0cf000)
libm.so.6 => /nix/store/l7vp7c9z03dspbmss3gq5wdwx5c6ifcq-graalvm11-ce-22.3.0/lib/svm/clibraries/linux-amd64/libm.so.6 (0x00007f77fbfef000)
libpthread.so.0 => /nix/store/l7vp7c9z03dspbmss3gq5wdwx5c6ifcq-graalvm11-ce-22.3.0/lib/svm/clibraries/linux-amd64/libpthread.so.0 (0x00007f77fbfea000)
libdl.so.2 => /nix/store/l7vp7c9z03dspbmss3gq5wdwx5c6ifcq-graalvm11-ce-22.3.0/lib/svm/clibraries/linux-amd64/libdl.so.2 (0x00007f77fbfe5000)
librt.so.1 => /nix/store/l7vp7c9z03dspbmss3gq5wdwx5c6ifcq-graalvm11-ce-22.3.0/lib/svm/clibraries/linux-amd64/librt.so.1 (0x00007f77fbfde000)
libc.so.6 => /nix/store/l7vp7c9z03dspbmss3gq5wdwx5c6ifcq-graalvm11-ce-22.3.0/lib/svm/clibraries/linux-amd64/libc.so.6 (0x00007f77fbdd5000)
/nix/store/c35hf8g5b9vksadym9dbjrd6p2y11m8h-glibc-2.35-224/lib/ld-linux-x86-64.so.2 => /nix/store/9xfad3b5z4y00mzmk2wnn4900q0qmxns-glibc-2.35-224/lib64/ld-linux-x86-64.so.2 (0x00007f77fc2e7000)
libgcc_s.so.1 => /nix/store/qbgfsaviwqi2p6jr7an1g2754sv3xqhn-gcc-11.3.0-lib/lib/libgcc_s.so.1 (0x00007f77fbdbb000)
```
After:
```
$ ldd ./result/bin/bb
linux-vdso.so.1 (0x00007fffdfd4e000)
libstdc++.so.6 => /nix/store/qbgfsaviwqi2p6jr7an1g2754sv3xqhn-gcc-11.3.0-lib/lib/libstdc++.so.6 (0x00007fc3a5658000)
libm.so.6 => /nix/store/c35hf8g5b9vksadym9dbjrd6p2y11m8h-glibc-2.35-224/lib/libm.so.6 (0x00007fc3a5578000)
libpthread.so.0 => /nix/store/c35hf8g5b9vksadym9dbjrd6p2y11m8h-glibc-2.35-224/lib/libpthread.so.0 (0x00007fc3a5573000)
libdl.so.2 => /nix/store/c35hf8g5b9vksadym9dbjrd6p2y11m8h-glibc-2.35-224/lib/libdl.so.2 (0x00007fc3a556e000)
librt.so.1 => /nix/store/c35hf8g5b9vksadym9dbjrd6p2y11m8h-glibc-2.35-224/lib/librt.so.1 (0x00007fc3a5569000)
libc.so.6 => /nix/store/c35hf8g5b9vksadym9dbjrd6p2y11m8h-glibc-2.35-224/lib/libc.so.6 (0x00007fc3a535e000)
/nix/store/c35hf8g5b9vksadym9dbjrd6p2y11m8h-glibc-2.35-224/lib/ld-linux-x86-64.so.2 => /nix/store/9xfad3b5z4y00mzmk2wnn4900q0qmxns-glibc-2.35-224/lib64/ld-linux-x86-64.so.2 (0x00007fc3a5870000)
libgcc_s.so.1 => /nix/store/qbgfsaviwqi2p6jr7an1g2754sv3xqhn-gcc-11.3.0-lib/lib/libgcc_s.so.1 (0x00007fc3a5344000)
```
Also improves the installCheckPhase to include more tests and improve
the old onest .
2023-02-07 17:00:13 +00:00
Thiago Kenji Okada
8f58bc3a1d
buildGraalvmNativeImage: allow LC_ALL overrides
2022-07-03 18:16:38 +01:00
Thiago Kenji Okada
44a4401945
buildGraalvmNativeImage: mark as broken if Native Image is not available
2022-04-15 23:20:52 +01:00
Thiago Kenji Okada
bdfff535f0
buildGraalvmNativeImage: allow usage of arbitrary graalvm derivation
...
This will allow for easier overrides for specific systems (e.g.
`aarch64-linux` that is only supported in `graalvm17-ce`).
2022-03-31 22:35:44 +01:00
heyarne
ce9b3a3723
buildGraalVmNativeImage: enable utf-8 by default
...
The tools built with buildGraalVmNativeImage have broken UTF-8 support
when not properly setting the locale, e.g.
$ bb -e '(prn "bépo àê")'
"b??po ????"
This commit sets the locale to en_US.UTF-8 by default, which fixes that.
2022-01-04 09:56:34 +01:00
Thiago Kenji Okada
24f9dcd06b
buildGraalvmNativeImage: fix meta
2021-12-27 19:49:52 -03:00
Thiago Kenji Okada
a5c0f59bf7
buildGraalvmNativeImage: allow nativeImageBuildArgs to be overwritten
2021-11-25 11:02:46 -03:00
Thiago Kenji Okada
f1c16183c8
buildGraalvmNativeImage: fix meta, add --verbose flag
2021-11-24 10:37:33 -03:00
Thiago Kenji Okada
d352856ea2
buildGraalvmNativeImage: default executable to pname
2021-11-24 10:37:32 -03:00
Thiago Kenji Okada
1415e30830
buildGraalvmNativeImage: init
...
For now it only takes care of the single Jar <-> single Executable case.
This will take care of the majority (all?) use cases we have in nixpkgs
currently.
2021-11-24 10:37:32 -03:00