RFR: 8257913: Add more known library locations to simplify Linux cross-compilation [v3]
Aleksey Shipilev
shade at openjdk.java.net
Fri Mar 5 16:03:18 UTC 2021
> 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`
Aleksey Shipilev has updated the pull request incrementally with one additional commit since the last revision:
Replace with linux with TARGET_OS
-------------
Changes:
- all: https://git.openjdk.java.net/jdk/pull/2833/files
- new: https://git.openjdk.java.net/jdk/pull/2833/files/1ccf6aa1..5b64487f
Webrevs:
- full: https://webrevs.openjdk.java.net/?repo=jdk&pr=2833&range=02
- incr: https://webrevs.openjdk.java.net/?repo=jdk&pr=2833&range=01-02
Stats: 6 lines in 2 files changed: 0 ins; 0 del; 6 mod
Patch: https://git.openjdk.java.net/jdk/pull/2833.diff
Fetch: git fetch https://git.openjdk.java.net/jdk pull/2833/head:pull/2833
PR: https://git.openjdk.java.net/jdk/pull/2833
More information about the build-dev
mailing list