From a429bf0c5d68239e6d3337b8b1cfdf0973526252 Mon Sep 17 00:00:00 2001 From: nm17 Date: Sun, 9 Mar 2025 20:09:54 +0400 Subject: [PATCH 1/2] ci: add --with-jtreg --- Dockerfile.openj9 | 34 +++++++++++++++++++++++++++------- 1 file changed, 27 insertions(+), 7 deletions(-) diff --git a/Dockerfile.openj9 b/Dockerfile.openj9 index d16887d..df64960 100644 --- a/Dockerfile.openj9 +++ b/Dockerfile.openj9 @@ -2,13 +2,13 @@ FROM ubuntu:25.04 AS build # partly copied from mkdocker.sh # Copyright IBM Corp (Eclipse Public License 2.0) -RUN apt update \ - && apt upgrade -y \ - && apt install -qq -y --no-install-recommends \ +RUN apt -qq update \ + && apt -qq upgrade -y \ + && apt -qq install -y --no-install-recommends \ ant ant-contrib autoconf build-essential ca-certificates cmake cpio curl file gcc-14 g++-14 gdb git \ libasound2-dev libcups2-dev libdwarf-dev libelf-dev libexpat1-dev libffi-dev libfontconfig libfontconfig1-dev \ libfreetype6-dev libnuma-dev libssl-dev libx11-dev libxext-dev libxrandr-dev libxrender-dev libxt-dev libxtst-dev \ - make nasm pkg-config python3 python3-dev rsync systemtap-sdt-dev unzip wget xvfb zip zlib1g-dev execstack \ + make nasm pkg-config python3 python3-dev rsync systemtap-sdt-dev unzip wget xvfb zip zlib1g-dev execstack unzip \ && rm -rf /var/lib/apt/lists/* WORKDIR /build @@ -18,6 +18,12 @@ RUN mkdir /build/bootjdk /build/dist \ && tar -xzf jdk21.tar.gz --directory=/build/bootjdk --strip-components=1 \ && rm -f jdk21.tar.gz +RUN wget --progress=dot:mega -O jtreg.zip https://builds.shipilev.net/jtreg/jtreg-7.5.1%2B1.zip \ + && unzip jtreg.zip -d /build \ + && rm -rf jtreg.zip + +ENV JT_HOME=/build/jtreg + RUN find /build/bootjdk -name '*.so' | xargs execstack -c RUN git clone --single-branch --depth 1 \ @@ -27,9 +33,9 @@ RUN git clone --single-branch --depth 1 \ WORKDIR /build/src RUN bash get_source.sh -RUN bash configure --with-boot-jdk=/build/bootjdk --with-openssl=system --with-extra-ldflags="-Wl,-z,noexecstack" +RUN bash configure --with-jtreg=/build/jtreg --with-boot-jdk=/build/bootjdk --with-openssl=system --with-extra-ldflags="-Wl,-z,noexecstack" RUN make all JOBS=$(nproc) -RUN make test TEST=tier2 JOBS=$(nproc) +RUN make install # jlink by advice from https://adoptium.net/blog/2021/10/jlink-to-produce-own-runtime/ WORKDIR /build/src/build/linux-x86_64-server-release/images @@ -44,6 +50,20 @@ jdk.nio.mapmode,jdk.random,jdk.sctp,jdk.security.auth,jdk.security.jgss,jdk.unsu jdk.xml.dom,jdk.zipfs,openj9.criu,openj9.cuda,openj9.dataaccess,openj9.gpu,openj9.jvm,\ openj9.sharedclasses,openj9.zosconditionhandling + + +ENV JAVA_HOME=/build/src/build/linux-x86_64-server-release/images/jre +ENV PATH="$JAVA_HOME/bin:$JAVA_HOME/lib:$PATH" + +WORKDIR /build/src +# jtreg:test/langtools:tier1,jtreg:test/jaxp:tier1,jtreg:test/lib-test:tier1 +RUN make test TEST="jtreg:test/jdk:tier1" JOBS=$(nproc) \ + && make test TEST="jtreg:test/langtools:tier1" JOBS=$(nproc) \ + && make test TEST="jtreg:test/jaxp:tier1" JOBS=$(nproc) \ + && make test TEST="jtreg:test/lib-test:tier1" JOBS=$(nproc) + + +WORKDIR /build/src/build/linux-x86_64-server-release/images RUN mv ./* /build/dist/ @@ -53,7 +73,7 @@ FROM ubuntu:25.04 AS run COPY --from=build /build/dist/jre /usr/lib/jvm/openj9-jre ENV JAVA_HOME=/usr/lib/jvm/openj9-jre -ENV PATH="$JAVA_HOME/bin:$PATH" +ENV PATH="$JAVA_HOME/bin:$JAVA_HOME/lib:$PATH" # verify installation RUN java --version From 4868fa8a9d03d6bfad9c758b3847e3653c3dd3e7 Mon Sep 17 00:00:00 2001 From: nm17 Date: Sun, 9 Mar 2025 20:09:54 +0400 Subject: [PATCH 2/2] ci: add --with-jtreg --- Dockerfile.openj9 | 33 ++++++++++++++++++++++++++------- 1 file changed, 26 insertions(+), 7 deletions(-) diff --git a/Dockerfile.openj9 b/Dockerfile.openj9 index d16887d..e1f6d8f 100644 --- a/Dockerfile.openj9 +++ b/Dockerfile.openj9 @@ -2,13 +2,13 @@ FROM ubuntu:25.04 AS build # partly copied from mkdocker.sh # Copyright IBM Corp (Eclipse Public License 2.0) -RUN apt update \ - && apt upgrade -y \ - && apt install -qq -y --no-install-recommends \ +RUN apt -qq update \ + && apt -qq upgrade -y \ + && apt -qq install -y --no-install-recommends \ ant ant-contrib autoconf build-essential ca-certificates cmake cpio curl file gcc-14 g++-14 gdb git \ libasound2-dev libcups2-dev libdwarf-dev libelf-dev libexpat1-dev libffi-dev libfontconfig libfontconfig1-dev \ libfreetype6-dev libnuma-dev libssl-dev libx11-dev libxext-dev libxrandr-dev libxrender-dev libxt-dev libxtst-dev \ - make nasm pkg-config python3 python3-dev rsync systemtap-sdt-dev unzip wget xvfb zip zlib1g-dev execstack \ + make nasm pkg-config python3 python3-dev rsync systemtap-sdt-dev unzip wget xvfb zip zlib1g-dev execstack unzip \ && rm -rf /var/lib/apt/lists/* WORKDIR /build @@ -18,6 +18,12 @@ RUN mkdir /build/bootjdk /build/dist \ && tar -xzf jdk21.tar.gz --directory=/build/bootjdk --strip-components=1 \ && rm -f jdk21.tar.gz +RUN wget --progress=dot:mega -O jtreg.zip https://builds.shipilev.net/jtreg/jtreg-7.5.1%2B1.zip \ + && unzip jtreg.zip -d /build \ + && rm -rf jtreg.zip + +ENV JT_HOME=/build/jtreg + RUN find /build/bootjdk -name '*.so' | xargs execstack -c RUN git clone --single-branch --depth 1 \ @@ -27,9 +33,9 @@ RUN git clone --single-branch --depth 1 \ WORKDIR /build/src RUN bash get_source.sh -RUN bash configure --with-boot-jdk=/build/bootjdk --with-openssl=system --with-extra-ldflags="-Wl,-z,noexecstack" +RUN bash configure --with-jtreg=/build/jtreg --with-boot-jdk=/build/bootjdk --with-openssl=system --with-extra-ldflags="-Wl,-z,noexecstack" RUN make all JOBS=$(nproc) -RUN make test TEST=tier2 JOBS=$(nproc) +RUN make install # jlink by advice from https://adoptium.net/blog/2021/10/jlink-to-produce-own-runtime/ WORKDIR /build/src/build/linux-x86_64-server-release/images @@ -44,6 +50,19 @@ jdk.nio.mapmode,jdk.random,jdk.sctp,jdk.security.auth,jdk.security.jgss,jdk.unsu jdk.xml.dom,jdk.zipfs,openj9.criu,openj9.cuda,openj9.dataaccess,openj9.gpu,openj9.jvm,\ openj9.sharedclasses,openj9.zosconditionhandling + + +ENV JAVA_HOME=/build/src/build/linux-x86_64-server-release/images/jre +ENV PATH="$JAVA_HOME/bin:$JAVA_HOME/lib:$PATH" +ENV TEST_JDK_HOME=/build/src/build/linux-x86_64-server-release/images/jdk + +RUN git clone https://github.com/adoptium/TKG.git \ + && cd TKG + && make compile JOBS=$(nproc) + && make _sanity.functional.regular JOBS=$(nproc) + + +WORKDIR /build/src/build/linux-x86_64-server-release/images RUN mv ./* /build/dist/ @@ -53,7 +72,7 @@ FROM ubuntu:25.04 AS run COPY --from=build /build/dist/jre /usr/lib/jvm/openj9-jre ENV JAVA_HOME=/usr/lib/jvm/openj9-jre -ENV PATH="$JAVA_HOME/bin:$PATH" +ENV PATH="$JAVA_HOME/bin:$JAVA_HOME/lib:$PATH" # verify installation RUN java --version