Integrated: 8257913: Add more known library locations to simplify Linux cross-compilation

Aleksey Shipilev shade at openjdk.java.net
Mon Mar 8 10:18:08 UTC 2021


On Thu, 4 Mar 2021 18:58:03 GMT, Aleksey Shipilev <shade at openjdk.org> wrote:

> Current cross-compilation configurations require adding the whole lot of configure options to make it find the dependencies: freetype and X11 libs are the only problematic dependencies. We should be able to specify just the `--with-sysroot`, and get everything else autodetected.
> 
> After this patch, doing `sh ./configure --openjdk-target=powerpc64le-linux-gnu --with-sysroot=/chroots/ppc64el`, where chroot is `debootstrap`-ed chroot as per our build docs, is enough to get everything configured. See the GH Actions definition to see what options are not needed anymore.
> 
> Some explanations:
>   - `*-gnuabi64` is needed for `mips64el`
>   - `*-gnueabihf` is needed for `armhf`
>   - `$OPENJDK_TARGET_CPU_AUTOCONF-linux-gnu` is needed for `powerpc*`, because OpenJDK build rewrites `VAR_CPU` to `ppc`, leading to mismatch. 
> 
> Additional testing:
>  - [x] Configure with target `x86_64-linux-gnu`
>  - [x] Configure with cross-target `i686-linux-gnu`
>  - [x] Configure with cross-target `alpha-linux-gnu`
>  - [x] Configure with cross-target `aarch64-linux-gnu`
>  - [x] Configure with cross-target `arm-linux-gnueabihf`
>  - [x] Configure with cross-target `arm-linux-gnueabi`
>  - [x] Configure with cross-target `mipsel-linux-gnu`
>  - [x] Configure with cross-target `mips64el-linux-gnuabi64`
>  - [x] Configure with cross-target `powerpc-linux-gnu`
>  - [x] Configure with cross-target `powerpc64-linux-gnu`
>  - [x] Configure with cross-target `powerpc64le-linux-gnu`
>  - [x] Configure with cross-target `m68k-linux-gnu`
>  - [x] Configure with cross-target `sh4-linux-gnu`

This pull request has now been integrated.

Changeset: 61cff4da
Author:    Aleksey Shipilev <shade at openjdk.org>
URL:       https://git.openjdk.java.net/jdk/commit/61cff4da
Stats:     55 lines in 4 files changed: 51 ins; 4 del; 0 mod

8257913: Add more known library locations to simplify Linux cross-compilation

Reviewed-by: erikj

-------------

PR: https://git.openjdk.java.net/jdk/pull/2833



More information about the build-dev mailing list