clang #2

Closed
DarkCat09 wants to merge 2 commits from dev/dc09 into main
Showing only changes of commit 842b23b553 - Show all commits

View file

@ -5,7 +5,7 @@ FROM ubuntu:25.04 AS build
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 \
ant ant-contrib autoconf ca-certificates clang cmake cpio curl execstack file git openjdk-21-jdk-headless \
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 \
@ -27,18 +27,16 @@ RUN git clone --single-branch --depth 1 \
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 -fno-lto -O1"
ENV CC=/usr/bin/clang CXX=/usr/bin/clang++ LD=/usr/bin/lld \
CFLAGS="-Wno-error=nontrivial-memcall -O3 -flto -fwhole-program-vtables"
RUN bash configure \
--with-boot-jdk=/build/bootjdk \
--with-boot-jdk=/usr/lib/jvm/java-21-openjdk-amd64 \
--with-openssl=system \
--with-toolchain-type=clang \
# --enable-jvm-feature-link-time-opt \
--enable-jvm-feature-link-time-opt \
--with-extra-cflags="$CFLAGS" \
--with-extra-cxxflags="$CFLAGS"
--with-extra-cxxflags="$CFLAGS" \
--with-extra-ldflags="-Wl,-O1"
RUN make all JOBS=$(nproc)
# jlink by advice from https://adoptium.net/blog/2021/10/jlink-to-produce-own-runtime/