docker: Add gfortran support
Add gfortran support for all docker except target of *-none* and *-andriod*.
Close #1457
/ci try
Starting try run. Link to action
Try run for comment
- try / conclusion - ❌
Failed Jobs
- aarch64-linux-android - ❌
- sparc64-unknown-linux-gnu - ❌
- x86_64-unknown-dragonfly - ❌
- x86_64-unknown-netbsd - ❌
Successful Jobs
List
- aarch64-unknown-freebsd - ✔️
- aarch64-unknown-linux-gnu:centos - ✔️
- aarch64-unknown-linux-gnu - ✔️
- aarch64-unknown-linux-musl - ✔️
- arm-linux-androideabi - ✔️
- arm-unknown-linux-gnueabihf - ✔️
- arm-unknown-linux-gnueabi - ✔️
- arm-unknown-linux-musleabi - ✔️
- armv5te-unknown-linux-gnueabi - ✔️
- arm-unknown-linux-musleabihf - ✔️
- armv5te-unknown-linux-musleabi - ✔️
- armv7-linux-androideabi - ✔️
- armv7-unknown-linux-gnueabihf - ✔️
- armv7-unknown-linux-gnueabi - ✔️
- armv7-unknown-linux-musleabihf - ✔️
- armv7-unknown-linux-musleabi - ✔️
- cross - ✔️
- i586-unknown-linux-gnu - ✔️
- i586-unknown-linux-musl - ✔️
- i686-linux-android - ✔️
- i686-pc-windows-gnu - ✔️
- i686-unknown-freebsd - ✔️
- i686-unknown-linux-gnu - ✔️
- i686-unknown-linux-musl - ✔️
- mips64el-unknown-linux-gnuabi64 - ✔️
- mips64-unknown-linux-gnuabi64 - ✔️
- mipsel-unknown-linux-gnu - ✔️
- mips-unknown-linux-gnu - ✔️
- powerpc64le-unknown-linux-gnu - ✔️
- powerpc64-unknown-linux-gnu - ✔️
- powerpc-unknown-linux-gnu - ✔️
- riscv64gc-unknown-linux-gnu - ✔️
- thumbv7em-none-eabi - ✔️
- s390x-unknown-linux-gnu - ✔️
- thumbv6m-none-eabi - ✔️
- thumbv7em-none-eabihf - ✔️
- thumbv7m-none-eabi - ✔️
- thumbv7neon-linux-androideabi - ✔️
- thumbv8m.base-none-eabi - ✔️
- thumbv8m.main-none-eabi - ✔️
- wasm32-unknown-emscripten - ✔️
- thumbv7neon-unknown-linux-gnueabihf - ✔️
- thumbv8m.main-none-eabihf - ✔️
- x86_64-apple-darwin - ✔️
- x86_64-linux-android - ✔️
- x86_64-pc-windows-gnu - ✔️
- x86_64-pc-windows-msvc - ✔️
- x86_64-unknown-freebsd - ✔️
- x86_64-unknown-illumos - ✔️
- x86_64-unknown-linux-gnu:centos - ✔️
- x86_64-unknown-linux-gnu - ✔️
- x86_64-unknown-linux-musl - ✔️
- zig - ✔️
No idea about why x86_64-unknown-dragonfly and x86_64-unknown-netbsd failed
looks good so far!
One issue with this, it doesn't install it for the case where we use
Dockerfile.native, which is used when doingcargo build-docker-image x86_64-unknown-linux-gnu --platform="linux/x86_64=x86_64-unknown-linux-gnu"(or justcargo build-docker-image x86_64-unknown-linux-gnu)Easiest way to fix that would be to just install gfortran in linux-image.sh, perhaps add a install here:
https://github.com/cross-rs/cross/blob/085092ca01d6ac9f5a0b612d9e68bcdf1e50f7ee/docker/linux-image.sh#L420-L423
It seems that common.sh will install it. and I don't need to add it to linux-image.sh
I can also add fortran test CI if needed.
/ci try
lets try again!
Starting try run. Link to action
Try run for comment
- try / conclusion - ❌
Failed Jobs
Successful Jobs
List
- aarch64-unknown-freebsd - ✔️
- aarch64-unknown-linux-gnu:centos - ✔️
- aarch64-unknown-linux-gnu - ✔️
- aarch64-unknown-linux-musl - ✔️
- arm-linux-androideabi - ✔️
- arm-unknown-linux-gnueabihf - ✔️
- arm-unknown-linux-gnueabi - ✔️
- arm-unknown-linux-musleabi - ✔️
- arm-unknown-linux-musleabihf - ✔️
- armv5te-unknown-linux-gnueabi - ✔️
- armv5te-unknown-linux-musleabi - ✔️
- armv7-linux-androideabi - ✔️
- armv7-unknown-linux-gnueabihf - ✔️
- armv7-unknown-linux-gnueabi - ✔️
- armv7-unknown-linux-musleabihf - ✔️
- armv7-unknown-linux-musleabi - ✔️
- cross - ✔️
- i586-unknown-linux-gnu - ✔️
- i686-linux-android - ✔️
- i686-pc-windows-gnu - ✔️
- i586-unknown-linux-musl - ✔️
- i686-unknown-linux-musl - ✔️
- i686-unknown-linux-gnu - ✔️
- mips64el-unknown-linux-gnuabi64 - ✔️
- i686-unknown-freebsd - ✔️
- mips64-unknown-linux-gnuabi64 - ✔️
- mipsel-unknown-linux-gnu - ✔️
- mips-unknown-linux-gnu - ✔️
- powerpc64le-unknown-linux-gnu - ✔️
- powerpc64-unknown-linux-gnu - ✔️
- powerpc-unknown-linux-gnu - ✔️
- riscv64gc-unknown-linux-gnu - ✔️
- s390x-unknown-linux-gnu - ✔️
- sparc64-unknown-linux-gnu - ✔️
- thumbv6m-none-eabi - ✔️
- thumbv7em-none-eabi - ✔️
- thumbv7em-none-eabihf - ✔️
- thumbv7m-none-eabi - ✔️
- thumbv7neon-linux-androideabi - ✔️
- thumbv7neon-unknown-linux-gnueabihf - ✔️
- thumbv8m.base-none-eabi - ✔️
- thumbv8m.main-none-eabi - ✔️
- thumbv8m.main-none-eabihf - ✔️
- wasm32-unknown-emscripten - ✔️
- x86_64-apple-darwin - ✔️
- x86_64-linux-android - ✔️
- x86_64-pc-windows-gnu - ✔️
- x86_64-pc-windows-msvc - ✔️
- x86_64-unknown-freebsd - ✔️
- x86_64-unknown-illumos - ✔️
- x86_64-unknown-linux-gnu:centos - ✔️
- x86_64-unknown-linux-gnu - ✔️
- x86_64-unknown-linux-musl - ✔️
- zig - ✔️
This failure is related to libc/3618
It failed because of old_locale. I would patch it with gcc8/patches/patch-libgfortran_io_io.h.
Notice: I use the gcc8/patches/patch-libgfortran_io_io.h. It seems that every version of gcc after gcc8 has this patch except gcc9 and I don't know why. Maybe we can create the PR later.
Besides, we should undefine "HAVE_NEWLOCALE" and "HAVE_FREELOCALE", because there's no uselocale on netbsd(ref: gcc-11/libgfortran/io/io.h) and there's no ifdef to check this before gcc-11. According to this, I should set ac_cv_func_newlocale=no, ac_cv_func_freelocale=no, ac_cv_func_uselocale=no
Edit nothing about this target. And there's no log remained so I don't know why it failed.
Let's try x86_64-unknown-netbsd and aarch64-linux-android again. Thanks
/ci try
Starting try run. Link to action
Try run for comment
- try / conclusion - ❌
Failed Jobs
Successful Jobs
List
- aarch64-unknown-linux-gnu:centos - ✔️
- aarch64-unknown-linux-gnu - ✔️
- aarch64-unknown-linux-musl - ✔️
- arm-linux-androideabi - ✔️
- arm-unknown-linux-gnueabihf - ✔️
- arm-unknown-linux-gnueabi - ✔️
- arm-unknown-linux-musleabi - ✔️
- arm-unknown-linux-musleabihf - ✔️
- armv5te-unknown-linux-gnueabi - ✔️
- armv5te-unknown-linux-musleabi - ✔️
- armv7-linux-androideabi - ✔️
- armv7-unknown-linux-gnueabihf - ✔️
- armv7-unknown-linux-gnueabi - ✔️
- armv7-unknown-linux-musleabihf - ✔️
- armv7-unknown-linux-musleabi - ✔️
- cross - ✔️
- i586-unknown-linux-gnu - ✔️
- i586-unknown-linux-musl - ✔️
- i686-linux-android - ✔️
- i686-pc-windows-gnu - ✔️
- i686-unknown-freebsd - ✔️
- i686-unknown-linux-gnu - ✔️
- i686-unknown-linux-musl - ✔️
- mips64-unknown-linux-gnuabi64 - ✔️
- mipsel-unknown-linux-gnu - ✔️
- mips-unknown-linux-gnu - ✔️
- mips64el-unknown-linux-gnuabi64 - ✔️
- powerpc64-unknown-linux-gnu - ✔️
- powerpc64le-unknown-linux-gnu - ✔️
- powerpc-unknown-linux-gnu - ✔️
- riscv64gc-unknown-linux-gnu - ✔️
- s390x-unknown-linux-gnu - ✔️
- sparc64-unknown-linux-gnu - ✔️
- thumbv6m-none-eabi - ✔️
- thumbv7em-none-eabi - ✔️
- thumbv7em-none-eabihf - ✔️
- thumbv7m-none-eabi - ✔️
- thumbv7neon-linux-androideabi - ✔️
- thumbv7neon-unknown-linux-gnueabihf - ✔️
- thumbv8m.base-none-eabi - ✔️
- thumbv8m.main-none-eabi - ✔️
- thumbv8m.main-none-eabihf - ✔️
- wasm32-unknown-emscripten - ✔️
- x86_64-apple-darwin - ✔️
- x86_64-linux-android - ✔️
- x86_64-pc-windows-gnu - ✔️
- x86_64-pc-windows-msvc - ✔️
- x86_64-unknown-illumos - ✔️
- x86_64-unknown-freebsd - ✔️
- x86_64-unknown-linux-gnu:centos - ✔️
- x86_64-unknown-linux-gnu - ✔️
- x86_64-unknown-linux-musl - ✔️
- x86_64-unknown-netbsd - ✔️
- zig - ✔️
Is any idea about why aarch64-linux-android failed? It seems that it just need more time to finish the build.
As libc/3618 has beed merged, let's try again @Emilgardis
/ci try
Starting try run. Link to action
Try run for comment
- try / conclusion - ❌
Failed Jobs
Successful Jobs
List
- aarch64-linux-android - ✔️
- aarch64-unknown-freebsd - ✔️
- aarch64-unknown-linux-gnu:centos - ✔️
- aarch64-unknown-linux-gnu - ✔️
- aarch64-unknown-linux-musl - ✔️
- arm-linux-androideabi - ✔️
- arm-unknown-linux-gnueabihf - ✔️
- arm-unknown-linux-gnueabi - ✔️
- arm-unknown-linux-musleabi - ✔️
- arm-unknown-linux-musleabihf - ✔️
- armv5te-unknown-linux-gnueabi - ✔️
- armv5te-unknown-linux-musleabi - ✔️
- armv7-linux-androideabi - ✔️
- armv7-unknown-linux-gnueabihf - ✔️
- armv7-unknown-linux-gnueabi - ✔️
- armv7-unknown-linux-musleabihf - ✔️
- armv7-unknown-linux-musleabi - ✔️
- cross - ✔️
- i586-unknown-linux-gnu - ✔️
- i586-unknown-linux-musl - ✔️
- i686-linux-android - ✔️
- i686-pc-windows-gnu - ✔️
- i686-unknown-freebsd - ✔️
- i686-unknown-linux-gnu - ✔️
- i686-unknown-linux-musl - ✔️
- mips64el-unknown-linux-gnuabi64 - ✔️
- mips64-unknown-linux-gnuabi64 - ✔️
- mipsel-unknown-linux-gnu - ✔️
- mips-unknown-linux-gnu - ✔️
- powerpc64le-unknown-linux-gnu - ✔️
- powerpc64-unknown-linux-gnu - ✔️
- powerpc-unknown-linux-gnu - ✔️
- riscv64gc-unknown-linux-gnu - ✔️
- s390x-unknown-linux-gnu - ✔️
- sparc64-unknown-linux-gnu - ✔️
- thumbv6m-none-eabi - ✔️
- thumbv7em-none-eabi - ✔️
- thumbv7em-none-eabihf - ✔️
- thumbv7neon-linux-androideabi - ✔️
- thumbv7neon-unknown-linux-gnueabihf - ✔️
- thumbv8m.base-none-eabi - ✔️
- thumbv8m.main-none-eabi - ✔️
- thumbv8m.main-none-eabihf - ✔️
- wasm32-unknown-emscripten - ✔️
- x86_64-apple-darwin - ✔️
- x86_64-linux-android - ✔️
- x86_64-pc-windows-gnu - ✔️
- x86_64-pc-windows-msvc - ✔️
- x86_64-unknown-dragonfly - ✔️
- x86_64-unknown-freebsd - ✔️
- x86_64-unknown-illumos - ✔️
- x86_64-unknown-linux-gnu:centos - ✔️
- x86_64-unknown-linux-gnu - ✔️
- x86_64-unknown-linux-musl - ✔️
- x86_64-unknown-netbsd - ✔️
- zig - ✔️
It doesn't seem to be my fault. Should we try again? Or could we merge it?
timeout again. Could we adjust the settings of action?
it should already be maxed out: https://github.com/cross-rs/cross/actions/runs/8907127039/workflow#L188 however I remember something about it not applying like you would expect. Lets just try again