Compare commits
No commits in common. "main" and "main" have entirely different histories.
2 changed files with 56 additions and 30 deletions
|
@ -1,2 +0,0 @@
|
|||
*
|
||||
!/piped.sh
|
|
@ -1,51 +1,51 @@
|
|||
FROM ubuntu:25.04 AS build
|
||||
|
||||
# partially copied from mkdocker.sh
|
||||
# partly copied from mkdocker.sh
|
||||
# Copyright IBM Corp (Eclipse Public License 2.0)
|
||||
RUN apt -qq update \
|
||||
&& apt -qq upgrade -y \
|
||||
&& apt -qq install -y --no-install-recommends \
|
||||
ant ant-contrib autoconf build-essential ca-certificates clang cmake cpio curl execstack file 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 \
|
||||
llvm-dev lld make nasm pkg-config python3 python3-dev rsync systemtap-sdt-dev unzip wget xvfb zip zlib1g-dev unzip \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
&& 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 unzip \
|
||||
&& rm -rf /var/lib/apt/lists/*
|
||||
|
||||
WORKDIR /build
|
||||
RUN mkdir /build/bootjdk /build/dist \
|
||||
&& wget --progress=dot:mega -O jdk21.tar.gz \
|
||||
https://api.adoptopenjdk.net/v3/binary/latest/21/ga/linux/x64/jdk/openj9/normal/adoptopenjdk \
|
||||
&& tar -xzf jdk21.tar.gz --directory=/build/bootjdk --strip-components=1 \
|
||||
&& rm -f jdk21.tar.gz
|
||||
&& wget --progress=dot:mega -O jdk21.tar.gz \
|
||||
https://api.adoptopenjdk.net/v3/binary/latest/21/ga/linux/x64/jdk/openj9/normal/adoptopenjdk \
|
||||
&& tar -xzf jdk21.tar.gz --directory=/build/bootjdk --strip-components=1 \
|
||||
&& rm -f jdk21.tar.gz
|
||||
|
||||
RUN find /build/bootjdk -name '*.so' -type f -print0 | xargs -0 -- execstack -c
|
||||
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 \
|
||||
https://github.com/ibmruntimes/openj9-openjdk-jdk21.git \
|
||||
/build/src
|
||||
https://github.com/ibmruntimes/openj9-openjdk-jdk21.git \
|
||||
/build/src
|
||||
|
||||
WORKDIR /build/src
|
||||
RUN bash get_source.sh
|
||||
|
||||
ENV CC=/usr/bin/clang CXX=/usr/bin/clang++ LD=/usr/bin/lld
|
||||
# TODO: add as args to configure
|
||||
# CFLAGS="-O3 -flto -fwhole-program-vtables" \
|
||||
# LDFLAGS="-Wl,-O1"
|
||||
ENV CFLAGS="-Wno-error=nontrivial-memcall"
|
||||
RUN bash configure \
|
||||
--with-boot-jdk=/build/bootjdk \
|
||||
--with-openssl=system \
|
||||
--with-toolchain-type=clang \
|
||||
--enable-jvm-feature-link-time-opt \
|
||||
--with-extra-cflags="$CFLAGS" \
|
||||
--with-extra-cxxflags="$CFLAGS"
|
||||
--enable-libffi-bundling --enable-ddr --enable-jitserver \
|
||||
--enable-fallback-linker --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 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
|
||||
RUN jdk/bin/jlink --strip-debug --no-man-pages --no-header-files --compress=2 \
|
||||
--output jre \
|
||||
--add-modules java.base,java.compiler,java.datatransfer,java.desktop,java.instrument,java.logging,\
|
||||
--output jre \
|
||||
--add-modules java.base,java.compiler,java.datatransfer,java.desktop,java.instrument,java.logging,\
|
||||
java.management,java.management.rmi,java.naming,java.net.http,java.prefs,java.rmi,java.scripting,java.se,\
|
||||
java.security.jgss,java.security.sasl,java.smartcardio,java.sql,java.sql.rowset,java.transaction.xa,\
|
||||
java.xml,java.xml.crypto,jdk.accessibility,jdk.charsets,jdk.crypto.cryptoki,jdk.crypto.ec,jdk.dynalink,\
|
||||
|
@ -54,9 +54,37 @@ 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
|
||||
ENV TEST_ROOT=/build/src/openj9/test
|
||||
ENV DIAGNOSTICLEVEL=nodetails
|
||||
ENV NATIVE_TEST_LIBS=/build/src/build/linux-x86_64-server-release/images/test
|
||||
|
||||
RUN cd /build/src/openj9/test \
|
||||
&& git clone https://github.com/adoptium/TKG.git
|
||||
|
||||
WORKDIR /build/src/openj9/test/TKG
|
||||
|
||||
ENV BUILD_LIST=functional
|
||||
|
||||
RUN find ../ -type f -name "playlist.xml" | xargs sed -i 's#<testCaseName>jit_jar</testCaseName>#<testCaseName>jit_jar</testCaseName><disables><disable><comment>https://github.com/</comment></disable></disables>#g'
|
||||
RUN find ../ -type f -name "playlist.xml" | xargs sed -i 's#<testCaseName>testJITServer</testCaseName>#<testCaseName>testJITServer</testCaseName><disables><disable><comment>https://github.com/</comment></disable></disables>#g'
|
||||
|
||||
RUN make compile -j$(nproc)
|
||||
|
||||
RUN make genParallelList PARALLEL_OPTIONS=TEST=_sanity.functional.regular TEST_TIME= NUM_MACHINES=$(nproc)
|
||||
|
||||
RUN cat parallelList.mk
|
||||
|
||||
RUN make -f parallelList.mk JOBS=$(nproc)
|
||||
|
||||
WORKDIR /build/src/build/linux-x86_64-server-release/images
|
||||
RUN mv ./* /build/dist/
|
||||
|
||||
|
||||
# ------
|
||||
|
||||
FROM ubuntu:25.04 AS run
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue