This repository was archived by the owner on May 28, 2025. It is now read-only.
File tree Expand file tree Collapse file tree 5 files changed +67
-8
lines changed
dist-aarch64-windows-gnullvm
dist-x86_64-windows-gnullvm Expand file tree Collapse file tree 5 files changed +67
-8
lines changed Original file line number Diff line number Diff line change 1+ FROM ubuntu:22.04
2+
3+ WORKDIR /build
4+
5+ ARG DEBIAN_FRONTEND=noninteractive
6+ RUN apt-get update && apt-get install -y --no-install-recommends \
7+ ca-certificates \
8+ cmake \
9+ curl \
10+ g++ \
11+ git \
12+ make \
13+ ninja-build \
14+ python3 \
15+ xz-utils
16+
17+ COPY host-x86_64/dist-windows-gnullvm/install-llvm-mingw.sh /build
18+ RUN ./install-llvm-mingw.sh
19+
20+ COPY scripts/sccache.sh /scripts/
21+ RUN sh /scripts/sccache.sh
22+
23+ ENV CC_aarch64_pc_windows_gnullvm=aarch64-w64-mingw32-clang \
24+ CXX_aarch64_pc_windows_gnullvm=aarch64-w64-mingw32-clang++
25+
26+ ENV HOST=aarch64-pc-windows-gnullvm
27+
28+ # We are bootstrapping this target and cannot use previously built artifacts.
29+ # Without this option Clang is given `"-I/checkout/obj/build/aarch64-pc-windows-gnullvm/ci-llvm/include"`
30+ # despite no such directory existing:
31+ # ❯ ls obj/dist-windows-gnullvm/build/aarch64-pc-windows-gnullvm/ -1
32+ # llvm
33+ # stage2
34+ ENV NO_DOWNLOAD_CI_LLVM 1
35+
36+ ENV RUST_CONFIGURE_ARGS \
37+ --enable-extended \
38+ --enable-profiler \
39+ --enable-sanitizers \
40+ --disable-docs \
41+ --set llvm.download-ci-llvm=false \
42+ --set rust.llvm-tools=false
43+ # LLVM cross tools are not installed into expected location so copying fails.
44+ # Probably will solve itself when building from Windows.
45+ # --enable-full-tools \
46+
47+ ENV SCRIPT python3 ../x.py dist --host $HOST --target $HOST
Original file line number Diff line number Diff line change 1+ #! /usr/bin/env bash
2+
3+ set -ex
4+
5+ release_date=20250430
6+ archive=llvm-mingw-${release_date} -ucrt-ubuntu-22.04-x86_64.tar.xz
7+ curl -L https://github.com/mstorsjo/llvm-mingw/releases/download/${release_date} /${archive} | \
8+ tar --extract --xz --strip 1 --directory /usr/local
9+
10+ # https://github.com/mstorsjo/llvm-mingw/issues/493
11+ ln -s $aarch64 -w64-windows-gnu.cfg /usr/local/bin/$arch -pc-windows-gnu.cfg
Original file line number Diff line number Diff line change @@ -20,14 +20,12 @@ RUN ./install-llvm-mingw.sh
2020COPY scripts/sccache.sh /scripts/
2121RUN sh /scripts/sccache.sh
2222
23- ENV CC_aarch64_pc_windows_gnullvm=aarch64-w64-mingw32-clang \
24- CXX_aarch64_pc_windows_gnullvm=aarch64-w64-mingw32-clang++ \
25- CC_i686_pc_windows_gnullvm=i686-w64-mingw32-clang \
23+ ENV CC_i686_pc_windows_gnullvm=i686-w64-mingw32-clang \
2624 CC_x86_64_pc_windows_gnullvm=x86_64-w64-mingw32-clang \
2725 CXX_x86_64_pc_windows_gnullvm=x86_64-w64-mingw32-clang++
2826
29- ENV HOSTS=aarch64-pc-windows-gnullvm, x86_64-pc-windows-gnullvm
30- ENV TARGETS=aarch64-pc-windows-gnullvm, i686-pc-windows-gnullvm,x86_64-pc-windows-gnullvm
27+ ENV HOST= x86_64-pc-windows-gnullvm
28+ ENV TARGETS=i686-pc-windows-gnullvm,x86_64-pc-windows-gnullvm
3129
3230# We are bootstrapping this target and cannot use previously built artifacts.
3331# Without this option Clang is given `"-I/checkout/obj/build/aarch64-pc-windows-gnullvm/ci-llvm/include"`
@@ -48,4 +46,4 @@ ENV RUST_CONFIGURE_ARGS \
4846# Probably will solve itself when building from Windows.
4947# --enable-full-tools \
5048
51- ENV SCRIPT python3 ../x.py dist --host $HOSTS --target $TARGETS
49+ ENV SCRIPT python3 ../x.py dist --host $HOST --target $TARGETS
Original file line number Diff line number Diff line change @@ -8,6 +8,6 @@ curl -L https://github.com/mstorsjo/llvm-mingw/releases/download/${release_date}
88tar --extract --xz --strip 1 --directory /usr/local
99
1010# https://github.com/mstorsjo/llvm-mingw/issues/493
11- for arch in aarch64 x86_64; do
11+ for arch in i686 x86_64; do
1212 ln -s $arch -w64-windows-gnu.cfg /usr/local/bin/$arch -pc-windows-gnu.cfg
1313done
Original file line number Diff line number Diff line change @@ -204,7 +204,10 @@ auto:
204204 - name : dist-s390x-linux
205205 << : *job-linux-4c
206206
207- - name : dist-windows-gnullvm
207+ - name : dist-aarch64-windows-gnullvm
208+ << : *job-linux-4c
209+
210+ - name : dist-x86_64-windows-gnullvm
208211 << : *job-linux-4c
209212
210213 - name : dist-various-1
You can’t perform that action at this time.
0 commit comments