authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2022-11-22 14:14:28-07:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2022-11-22 14:14:28-07:00
log3a616f51c08674ab63f2c0e7cbe6407dbead629e
treeaed05b6925497dd6f1dce752c41af73a81a9a844
parent5e4237822711dd49579dbd1388be5b08dc8cdec1
parentb3b507ad8fa9af02b76e2ba2f46d55a771c00895

Merge branch 'ci-secure'


7 files changed, 252 insertions(+), 231 deletions(-)

.github/workflows/ci.yaml+27-38
...@@ -1,55 +1,37 @@...@@ -1,55 +1,37 @@
1name: push_ci1name: ci
2run-name: Push CI2on: [push, pull_request]
3on:
4 push:
5 branches:
6 - master
7jobs:3jobs:
8 aarch64-linux:
9 runs-on: [self-hosted, Linux, aarch64]
10 steps:
11 - name: Checkout
12 uses: actions/checkout@v3
13 - name: Build and Test
14 run: sh ./ci/linux/build-aarch64.sh
15 x86_64-linux-debug:4 x86_64-linux-debug:
16 runs-on: ubuntu-latest5 outputs:
6 version: ${{ steps.version.outputs.version }}
7 runs-on: [self-hosted, Linux, x86_64]
17 steps:8 steps:
18 - name: Checkout9 - name: Checkout
19 uses: actions/checkout@v310 uses: actions/checkout@v3
20 - name: Build and Test11 - name: Build and Test
21 run: sh ./ci/linux/build-x86_64-debug.sh12 run: sh ./ci/linux/build-x86_64-debug.sh
13 # The following step is required by the build-tarballs job.
14 # If this job is being deleted / commented out, make sure
15 # to have another job provide this information.
16 - name: Get Version
17 id: version
18 run: echo "version=$(stage3/bin/zig version)" >> $GITHUB_OUTPUT
22 x86_64-linux-release:19 x86_64-linux-release:
23 runs-on: ubuntu-latest20 runs-on: [self-hosted, Linux, x86_64]
24 steps:21 steps:
25 - name: Checkout22 - name: Checkout
26 uses: actions/checkout@v323 uses: actions/checkout@v3
27 - name: Build and Test24 - name: Build and Test
28 run: sh ./ci/linux/build-x86_64-release.sh25 run: sh ./ci/linux/build-x86_64-release.sh
29 x86_64-macos:26 x86_64-macos:
30 strategy:27 runs-on: "macos-11"
31 matrix:
32 version: ["11", "12"]
33 runs-on: "macos-${{ matrix.version }}"
34 env: 28 env:
35 ARCH: "x86_64"29 ARCH: "x86_64"
36 MACOS_VERSION: ${{ matrix.version }}
37 steps:30 steps:
38 - name: Checkout31 - name: Checkout
39 uses: actions/checkout@v332 uses: actions/checkout@v3
40 33 - name: Build and Test
41 - name: Run Build Script
42 run: ./ci/macos/build-x86_64.sh34 run: ./ci/macos/build-x86_64.sh
43 aarch64-macos:
44 runs-on: [self-hosted, macOS, aarch64]
45 env:
46 ARCH: "aarch64"
47 steps:
48 - name: Checkout
49 uses: actions/checkout@v3
50
51 - name: Run Build Script
52 run: ./ci/macos/build-aarch64.sh
53 x86_64-windows:35 x86_64-windows:
54 runs-on: windows-latest36 runs-on: windows-latest
55 env: 37 env:
...@@ -57,14 +39,21 @@ jobs:...@@ -57,14 +39,21 @@ jobs:
57 steps:39 steps:
58 - name: Checkout40 - name: Checkout
59 uses: actions/checkout@v341 uses: actions/checkout@v3
60 42 - name: Build and Test
61 - name: Run Build Script
62 run: ./ci/windows/build.ps143 run: ./ci/windows/build.ps1
63 build-tarballs:44 aarch64-linux:
64 needs: [aarch64-linux, x86_64-macos, aarch64-macos, x86_64-windows, x86_64-linux-debug, x86_64-linux-release]
65 runs-on: [self-hosted, Linux, aarch64]45 runs-on: [self-hosted, Linux, aarch64]
66 steps:46 steps:
67 - name: Checkout47 - name: Checkout
68 uses: actions/checkout@v348 uses: actions/checkout@v3
69 - name: Build Tarballs49 - name: Build and Test
70 run: sh ./ci/linux/build-tarballs.sh50 run: sh ./ci/linux/build-aarch64.sh
51 aarch64-macos:
52 runs-on: [self-hosted, macOS, aarch64]
53 env:
54 ARCH: "aarch64"
55 steps:
56 - name: Checkout
57 uses: actions/checkout@v3
58 - name: Build and Test
59 run: ./ci/macos/build-aarch64.sh
ci/linux/build-aarch64.sh+12-7
...@@ -12,7 +12,7 @@ CACHE_BASENAME="zig+llvm+lld+clang-$TARGET-0.11.0-dev.256+271cc52a1"...@@ -12,7 +12,7 @@ CACHE_BASENAME="zig+llvm+lld+clang-$TARGET-0.11.0-dev.256+271cc52a1"
12PREFIX="$HOME/deps/$CACHE_BASENAME"12PREFIX="$HOME/deps/$CACHE_BASENAME"
13ZIG="$PREFIX/bin/zig" 13ZIG="$PREFIX/bin/zig"
1414
15export PATH="$HOME/deps/wasmtime-v2.0.2-aarch64-linux:$PATH"15export PATH="$HOME/deps/wasmtime-v2.0.2-$ARCH-linux:$PATH"
1616
17# Make the `zig version` number consistent.17# Make the `zig version` number consistent.
18# This will affect the cmake command below.18# This will affect the cmake command below.
...@@ -42,6 +42,14 @@ unset CXX...@@ -42,6 +42,14 @@ unset CXX
4242
43ninja install43ninja install
4444
45echo "Looking for non-conforming code formatting..."
46stage3-release/bin/zig fmt --check .. \
47 --exclude ../test/cases/ \
48 --exclude ../build-release
49
50# simultaneously test building self-hosted without LLVM and with 32-bit arm
51stage3-release/bin/zig build -Dtarget=arm-linux-musleabihf
52
45# TODO: add -fqemu back to this line53# TODO: add -fqemu back to this line
4654
47stage3-release/bin/zig build test docs \55stage3-release/bin/zig build test docs \
...@@ -51,15 +59,12 @@ stage3-release/bin/zig build test docs \...@@ -51,15 +59,12 @@ stage3-release/bin/zig build test docs \
51 --search-prefix "$PREFIX" \59 --search-prefix "$PREFIX" \
52 --zig-lib-dir "$(pwd)/../lib"60 --zig-lib-dir "$(pwd)/../lib"
5361
62# Look for HTML errors.
63tidy --drop-empty-elements no -qe zig-cache/langref.html
64
54# Produce the experimental std lib documentation.65# Produce the experimental std lib documentation.
55mkdir -p "stage3-release/doc/std"66mkdir -p "stage3-release/doc/std"
56stage3-release/bin/zig test ../lib/std/std.zig \67stage3-release/bin/zig test ../lib/std/std.zig \
57 -femit-docs=stage3-release/doc/std \68 -femit-docs=stage3-release/doc/std \
58 -fno-emit-bin \69 -fno-emit-bin \
59 --zig-lib-dir "$(pwd)/../lib"70 --zig-lib-dir "$(pwd)/../lib"
60
61# cp ../LICENSE $RELEASE_STAGING/
62# cp ../zig-cache/langref.html $RELEASE_STAGING/doc/
63
64# # Look for HTML errors.
65# tidy --drop-empty-elements no -qe $RELEASE_STAGING/doc/langref.html
ci/linux/build-tarballs.sh+116-110
...@@ -1,6 +1,6 @@...@@ -1,6 +1,6 @@
1#!/bin/sh1#!/bin/sh
22
3# Requires cmake ninja-build3apt-get install ninja-build
44
5set -x5set -x
6set -e6set -e
...@@ -13,9 +13,13 @@ ARCH="$(uname -m)"...@@ -13,9 +13,13 @@ ARCH="$(uname -m)"
13TARGET="$ARCH-linux-musl"13TARGET="$ARCH-linux-musl"
14MCPU="baseline"14MCPU="baseline"
15CACHE_BASENAME="zig+llvm+lld+clang-$TARGET-0.11.0-dev.256+271cc52a1"15CACHE_BASENAME="zig+llvm+lld+clang-$TARGET-0.11.0-dev.256+271cc52a1"
16PREFIX="$HOME/deps/$CACHE_BASENAME"16PREFIX="$WORKDIR/deps/$CACHE_BASENAME"
17ZIG="$PREFIX/bin/zig" 17ZIG="$PREFIX/bin/zig"
1818
19OLD_ZIG_VERSION="0.11.0-dev.256+271cc52a1"
20wget "https://ziglang.org/deps/$CACHE_BASENAME.tar.xz"
21tar xf "$CACHE_BASENAME.tar.xz"
22
19# Make the `zig version` number consistent.23# Make the `zig version` number consistent.
20# This will affect the cmake command below.24# This will affect the cmake command below.
21cd "$ZIGDIR"25cd "$ZIGDIR"
...@@ -26,7 +30,6 @@ git fetch --tags...@@ -26,7 +30,6 @@ git fetch --tags
26export CC="$ZIG cc -target $TARGET -mcpu=$MCPU"30export CC="$ZIG cc -target $TARGET -mcpu=$MCPU"
27export CXX="$ZIG c++ -target $TARGET -mcpu=$MCPU"31export CXX="$ZIG c++ -target $TARGET -mcpu=$MCPU"
2832
29rm -rf "$REL_SRC_BUILD"
30mkdir "$REL_SRC_BUILD"33mkdir "$REL_SRC_BUILD"
31cd "$REL_SRC_BUILD"34cd "$REL_SRC_BUILD"
32cmake .. \35cmake .. \
...@@ -46,30 +49,30 @@ unset CXX...@@ -46,30 +49,30 @@ unset CXX
46ninja install49ninja install
4750
48ZIG_VERSION="$(stage3-release/bin/zig version)"51ZIG_VERSION="$(stage3-release/bin/zig version)"
52
53git clone https://github.com/ziglang/zig-bootstrap
49BOOTSTRAP_SRC="$WORKDIR/zig-bootstrap"54BOOTSTRAP_SRC="$WORKDIR/zig-bootstrap"
50TARBALLS_DIR="$WORKDIR/tarballs"55TARBALLS_DIR="$WORKDIR/tarballs"
5156
52cd "$BOOTSTRAP_SRC"57cd "$BOOTSTRAP_SRC"
53git pull
54rm -rf zig58rm -rf zig
55cp -r "$ZIGDIR" ./59cp -r "$ZIGDIR" ./
56sed -i "/^ZIG_VERSION=\".*\"\$/c\\ZIG_VERSION=\"$ZIG_VERSION\"" build60sed -i "/^ZIG_VERSION=\".*\"\$/c\\ZIG_VERSION=\"$ZIG_VERSION\"" build
5761
58# Unfortunately Debian's cmake (3.14.4) is too old for zig-bootstrap.62# NOTE: Debian's cmake (3.14.4) is too old for zig-bootstrap.
59PATH="$HOME/local/bin:$PATH" CMAKE_GENERATOR=Ninja ./build aarch64-linux-musl baseline63CMAKE_GENERATOR=Ninja ./build x86_64-linux-musl baseline
60PATH="$HOME/local/bin:$PATH" CMAKE_GENERATOR=Ninja ./build x86_64-linux-musl baseline64CMAKE_GENERATOR=Ninja ./build x86_64-macos-none baseline
61#PATH="$HOME/local/bin:$PATH" CMAKE_GENERATOR=Ninja ./build x86-linux-musl baseline65CMAKE_GENERATOR=Ninja ./build x86_64-windows-gnu baseline
62#PATH="$HOME/local/bin:$PATH" CMAKE_GENERATOR=Ninja ./build riscv64-linux-musl baseline66CMAKE_GENERATOR=Ninja ./build aarch64-linux-musl baseline
63#PATH="$HOME/local/bin:$PATH" CMAKE_GENERATOR=Ninja ./build arm-linux-musleabihf generic+v7a67CMAKE_GENERATOR=Ninja ./build aarch64-macos-none apple_a14
64PATH="$HOME/local/bin:$PATH" CMAKE_GENERATOR=Ninja ./build x86_64-macos-none baseline68# CMAKE_GENERATOR=Ninja ./build aarch64-windows-gnu baseline
65PATH="$HOME/local/bin:$PATH" CMAKE_GENERATOR=Ninja ./build aarch64-macos-none apple_a1469# CMAKE_GENERATOR=Ninja ./build x86-linux-musl baseline
66PATH="$HOME/local/bin:$PATH" CMAKE_GENERATOR=Ninja ./build x86_64-windows-gnu baseline70# CMAKE_GENERATOR=Ninja ./build x86-windows-gnu baseline
67#PATH="$HOME/local/bin:$PATH" CMAKE_GENERATOR=Ninja ./build x86-windows-gnu baseline71# CMAKE_GENERATOR=Ninja ./build arm-linux-musleabihf generic+v7a
68#PATH="$HOME/local/bin:$PATH" CMAKE_GENERATOR=Ninja ./build aarch64-windows-gnu baseline72# CMAKE_GENERATOR=Ninja ./build riscv64-linux-musl baseline
6973
70ZIG="$BOOTSTRAP_SRC/out/host/bin/zig"74ZIG="$BOOTSTRAP_SRC/out/host/bin/zig"
7175
72rm -rf "$TARBALLS_DIR"
73mkdir "$TARBALLS_DIR"76mkdir "$TARBALLS_DIR"
74cd "$TARBALLS_DIR"77cd "$TARBALLS_DIR"
7578
...@@ -92,158 +95,159 @@ tar cfJ "zig-$ZIG_VERSION.tar.xz" "zig-$ZIG_VERSION"...@@ -92,158 +95,159 @@ tar cfJ "zig-$ZIG_VERSION.tar.xz" "zig-$ZIG_VERSION"
92cd "$BOOTSTRAP_SRC"95cd "$BOOTSTRAP_SRC"
93"$ZIG" build --build-file zig/build.zig docs96"$ZIG" build --build-file zig/build.zig docs
94LANGREF_HTML="$BOOTSTRAP_SRC/zig/zig-cache/langref.html"97LANGREF_HTML="$BOOTSTRAP_SRC/zig/zig-cache/langref.html"
98
95# Look for HTML errors.99# Look for HTML errors.
96tidy --drop-empty-elements no -qe "$LANGREF_HTML"100tidy --drop-empty-elements no -qe "$LANGREF_HTML"
97101
98cd "$TARBALLS_DIR"102cd "$TARBALLS_DIR"
99103
104cp -r $BOOTSTRAP_SRC/out/zig-x86_64-linux-musl-baseline zig-linux-x86_64-$ZIG_VERSION/
105cp -r $BOOTSTRAP_SRC/out/zig-x86_64-macos-none-baseline zig-macos-x86_64-$ZIG_VERSION/
106cp -r $BOOTSTRAP_SRC/out/zig-x86_64-windows-gnu-baseline zig-windows-x86_64-$ZIG_VERSION/
107#cp -r $BOOTSTRAP_SRC/out/zig-x86_64-freebsd-gnu-baseline zig-freebsd-x86_64-$ZIG_VERSION/
100cp -r $BOOTSTRAP_SRC/out/zig-aarch64-linux-musl-baseline zig-linux-aarch64-$ZIG_VERSION/108cp -r $BOOTSTRAP_SRC/out/zig-aarch64-linux-musl-baseline zig-linux-aarch64-$ZIG_VERSION/
101cp -r $BOOTSTRAP_SRC/out/zig-aarch64-macos-none-apple_a14 zig-macos-aarch64-$ZIG_VERSION/109cp -r $BOOTSTRAP_SRC/out/zig-aarch64-macos-none-apple_a14 zig-macos-aarch64-$ZIG_VERSION/
102#cp -r $BOOTSTRAP_SRC/out/zig-aarch64-windows-gnu-baseline zig-windows-aarch64-$ZIG_VERSION/110#cp -r $BOOTSTRAP_SRC/out/zig-aarch64-windows-gnu-baseline zig-windows-aarch64-$ZIG_VERSION/
103#cp -r $BOOTSTRAP_SRC/out/zig-arm-linux-musleabihf-generic+v7a zig-linux-armv7a-$ZIG_VERSION/
104#cp -r $BOOTSTRAP_SRC/out/zig-x86-linux-musl-baseline zig-linux-x86-$ZIG_VERSION/111#cp -r $BOOTSTRAP_SRC/out/zig-x86-linux-musl-baseline zig-linux-x86-$ZIG_VERSION/
105#cp -r $BOOTSTRAP_SRC/out/zig-x86-windows-gnu-baseline zig-windows-x86-$ZIG_VERSION/112#cp -r $BOOTSTRAP_SRC/out/zig-x86-windows-gnu-baseline zig-windows-x86-$ZIG_VERSION/
113#cp -r $BOOTSTRAP_SRC/out/zig-arm-linux-musleabihf-generic+v7a zig-linux-armv7a-$ZIG_VERSION/
106#cp -r $BOOTSTRAP_SRC/out/zig-riscv64-linux-musl-baseline zig-linux-riscv64-$ZIG_VERSION/114#cp -r $BOOTSTRAP_SRC/out/zig-riscv64-linux-musl-baseline zig-linux-riscv64-$ZIG_VERSION/
107#cp -r $BOOTSTRAP_SRC/out/zig-x86_64-freebsd-gnu-baseline zig-freebsd-x86_64-$ZIG_VERSION/
108cp -r $BOOTSTRAP_SRC/out/zig-x86_64-linux-musl-baseline zig-linux-x86_64-$ZIG_VERSION/
109cp -r $BOOTSTRAP_SRC/out/zig-x86_64-macos-none-baseline zig-macos-x86_64-$ZIG_VERSION/
110cp -r $BOOTSTRAP_SRC/out/zig-x86_64-windows-gnu-baseline zig-windows-x86_64-$ZIG_VERSION/
111115
112mv zig-linux-aarch64-$ZIG_VERSION/{bin/,}zig
113#mv zig-linux-armv7a-$ZIG_VERSION/{bin/,}zig
114#mv zig-linux-x86-$ZIG_VERSION/{bin/,}zig
115#mv zig-linux-riscv64-$ZIG_VERSION/{bin/,}zig
116mv zig-linux-x86_64-$ZIG_VERSION/{bin/,}zig116mv zig-linux-x86_64-$ZIG_VERSION/{bin/,}zig
117#mv zig-windows-x86-$ZIG_VERSION/{bin/,}zig.exe
118mv zig-windows-x86_64-$ZIG_VERSION/{bin/,}zig.exe
119#mv zig-windows-aarch64-$ZIG_VERSION/{bin/,}zig.exe
120mv zig-macos-aarch64-$ZIG_VERSION/{bin/,}zig
121mv zig-macos-x86_64-$ZIG_VERSION/{bin/,}zig117mv zig-macos-x86_64-$ZIG_VERSION/{bin/,}zig
118mv zig-windows-x86_64-$ZIG_VERSION/{bin/,}zig.exe
122#mv zig-freebsd-x86_64-$ZIG_VERSION/{bin/,}zig119#mv zig-freebsd-x86_64-$ZIG_VERSION/{bin/,}zig
120mv zig-linux-aarch64-$ZIG_VERSION/{bin/,}zig
121mv zig-macos-aarch64-$ZIG_VERSION/{bin/,}zig
122#mv zig-windows-aarch64-$ZIG_VERSION/{bin/,}zig.exe
123#mv zig-linux-x86-$ZIG_VERSION/{bin/,}zig
124#mv zig-windows-x86-$ZIG_VERSION/{bin/,}zig.exe
125#mv zig-linux-armv7a-$ZIG_VERSION/{bin/,}zig
126#mv zig-linux-riscv64-$ZIG_VERSION/{bin/,}zig
123127
124mv zig-linux-aarch64-$ZIG_VERSION/{lib,lib2}
125#mv zig-linux-armv7a-$ZIG_VERSION/{lib,lib2}
126#mv zig-linux-x86-$ZIG_VERSION/{lib,lib2}
127#mv zig-linux-riscv64-$ZIG_VERSION/{lib,lib2}
128mv zig-linux-x86_64-$ZIG_VERSION/{lib,lib2}128mv zig-linux-x86_64-$ZIG_VERSION/{lib,lib2}
129#mv zig-windows-x86-$ZIG_VERSION/{lib,lib2}
130mv zig-windows-x86_64-$ZIG_VERSION/{lib,lib2}
131#mv zig-windows-aarch64-$ZIG_VERSION/{lib,lib2}
132mv zig-macos-aarch64-$ZIG_VERSION/{lib,lib2}
133mv zig-macos-x86_64-$ZIG_VERSION/{lib,lib2}129mv zig-macos-x86_64-$ZIG_VERSION/{lib,lib2}
130mv zig-windows-x86_64-$ZIG_VERSION/{lib,lib2}
134#mv zig-freebsd-x86_64-$ZIG_VERSION/{lib,lib2}131#mv zig-freebsd-x86_64-$ZIG_VERSION/{lib,lib2}
132mv zig-linux-aarch64-$ZIG_VERSION/{lib,lib2}
133mv zig-macos-aarch64-$ZIG_VERSION/{lib,lib2}
134#mv zig-windows-aarch64-$ZIG_VERSION/{lib,lib2}
135#mv zig-linux-x86-$ZIG_VERSION/{lib,lib2}
136#mv zig-windows-x86-$ZIG_VERSION/{lib,lib2}
137#mv zig-linux-armv7a-$ZIG_VERSION/{lib,lib2}
138#mv zig-linux-riscv64-$ZIG_VERSION/{lib,lib2}
135139
136mv zig-linux-aarch64-$ZIG_VERSION/{lib2/zig,lib}
137#mv zig-linux-armv7a-$ZIG_VERSION/{lib2/zig,lib}
138#mv zig-linux-x86-$ZIG_VERSION/{lib2/zig,lib}
139#mv zig-linux-riscv64-$ZIG_VERSION/{lib2/zig,lib}
140mv zig-linux-x86_64-$ZIG_VERSION/{lib2/zig,lib}140mv zig-linux-x86_64-$ZIG_VERSION/{lib2/zig,lib}
141#mv zig-windows-x86-$ZIG_VERSION/{lib2/zig,lib}
142mv zig-windows-x86_64-$ZIG_VERSION/{lib2/zig,lib}
143#mv zig-windows-aarch64-$ZIG_VERSION/{lib2/zig,lib}
144mv zig-macos-aarch64-$ZIG_VERSION/{lib2/zig,lib}
145mv zig-macos-x86_64-$ZIG_VERSION/{lib2/zig,lib}141mv zig-macos-x86_64-$ZIG_VERSION/{lib2/zig,lib}
142mv zig-windows-x86_64-$ZIG_VERSION/{lib2/zig,lib}
146#mv zig-freebsd-x86_64-$ZIG_VERSION/{lib2/zig,lib}143#mv zig-freebsd-x86_64-$ZIG_VERSION/{lib2/zig,lib}
144mv zig-linux-aarch64-$ZIG_VERSION/{lib2/zig,lib}
145mv zig-macos-aarch64-$ZIG_VERSION/{lib2/zig,lib}
146#mv zig-windows-aarch64-$ZIG_VERSION/{lib2/zig,lib}
147#mv zig-linux-x86-$ZIG_VERSION/{lib2/zig,lib}
148#mv zig-windows-x86-$ZIG_VERSION/{lib2/zig,lib}
149#mv zig-linux-armv7a-$ZIG_VERSION/{lib2/zig,lib}
150#mv zig-linux-riscv64-$ZIG_VERSION/{lib2/zig,lib}
147151
148rmdir zig-linux-aarch64-$ZIG_VERSION/{bin,lib2}
149#rmdir zig-linux-armv7a-$ZIG_VERSION/{bin,lib2}
150#rmdir zig-linux-x86-$ZIG_VERSION/{bin,lib2}
151#rmdir zig-linux-riscv64-$ZIG_VERSION/{bin,lib2}
152rmdir zig-linux-x86_64-$ZIG_VERSION/{bin,lib2}152rmdir zig-linux-x86_64-$ZIG_VERSION/{bin,lib2}
153#rmdir zig-windows-x86-$ZIG_VERSION/{bin,lib2}
154rmdir zig-windows-x86_64-$ZIG_VERSION/{bin,lib2}
155#rmdir zig-windows-aarch64-$ZIG_VERSION/{bin,lib2}
156rmdir zig-macos-aarch64-$ZIG_VERSION/{bin,lib2}
157rmdir zig-macos-x86_64-$ZIG_VERSION/{bin,lib2}153rmdir zig-macos-x86_64-$ZIG_VERSION/{bin,lib2}
154rmdir zig-windows-x86_64-$ZIG_VERSION/{bin,lib2}
158#rmdir zig-freebsd-x86_64-$ZIG_VERSION/{bin,lib2}155#rmdir zig-freebsd-x86_64-$ZIG_VERSION/{bin,lib2}
156rmdir zig-linux-aarch64-$ZIG_VERSION/{bin,lib2}
157rmdir zig-macos-aarch64-$ZIG_VERSION/{bin,lib2}
158#rmdir zig-windows-aarch64-$ZIG_VERSION/{bin,lib2}
159#rmdir zig-linux-x86-$ZIG_VERSION/{bin,lib2}
160#rmdir zig-windows-x86-$ZIG_VERSION/{bin,lib2}
161#rmdir zig-linux-armv7a-$ZIG_VERSION/{bin,lib2}
162#rmdir zig-linux-riscv64-$ZIG_VERSION/{bin,lib2}
159163
160cp $REL_SRC_BUILD/../LICENSE zig-linux-aarch64-$ZIG_VERSION/
161#cp $REL_SRC_BUILD/../LICENSE zig-linux-armv7a-$ZIG_VERSION/
162#cp $REL_SRC_BUILD/../LICENSE zig-linux-x86-$ZIG_VERSION/
163#cp $REL_SRC_BUILD/../LICENSE zig-linux-riscv64-$ZIG_VERSION/
164cp $REL_SRC_BUILD/../LICENSE zig-linux-x86_64-$ZIG_VERSION/164cp $REL_SRC_BUILD/../LICENSE zig-linux-x86_64-$ZIG_VERSION/
165#cp $REL_SRC_BUILD/../LICENSE zig-windows-x86-$ZIG_VERSION/
166cp $REL_SRC_BUILD/../LICENSE zig-windows-x86_64-$ZIG_VERSION/
167#cp $REL_SRC_BUILD/../LICENSE zig-windows-aarch64-$ZIG_VERSION/
168cp $REL_SRC_BUILD/../LICENSE zig-macos-aarch64-$ZIG_VERSION/
169cp $REL_SRC_BUILD/../LICENSE zig-macos-x86_64-$ZIG_VERSION/165cp $REL_SRC_BUILD/../LICENSE zig-macos-x86_64-$ZIG_VERSION/
166cp $REL_SRC_BUILD/../LICENSE zig-windows-x86_64-$ZIG_VERSION/
170#cp $REL_SRC_BUILD/../LICENSE zig-freebsd-x86_64-$ZIG_VERSION/167#cp $REL_SRC_BUILD/../LICENSE zig-freebsd-x86_64-$ZIG_VERSION/
168cp $REL_SRC_BUILD/../LICENSE zig-linux-aarch64-$ZIG_VERSION/
169cp $REL_SRC_BUILD/../LICENSE zig-macos-aarch64-$ZIG_VERSION/
170#cp $REL_SRC_BUILD/../LICENSE zig-windows-aarch64-$ZIG_VERSION/
171#cp $REL_SRC_BUILD/../LICENSE zig-linux-x86-$ZIG_VERSION/
172#cp $REL_SRC_BUILD/../LICENSE zig-windows-x86-$ZIG_VERSION/
173#cp $REL_SRC_BUILD/../LICENSE zig-linux-armv7a-$ZIG_VERSION/
174#cp $REL_SRC_BUILD/../LICENSE zig-linux-riscv64-$ZIG_VERSION/
171175
172mkdir zig-linux-aarch64-$ZIG_VERSION/doc/
173#mkdir zig-linux-armv7a-$ZIG_VERSION/doc/
174#mkdir zig-linux-x86-$ZIG_VERSION/doc/
175#mkdir zig-linux-riscv64-$ZIG_VERSION/doc/
176mkdir zig-linux-x86_64-$ZIG_VERSION/doc/176mkdir zig-linux-x86_64-$ZIG_VERSION/doc/
177#mkdir zig-windows-x86-$ZIG_VERSION/doc/
178mkdir zig-windows-x86_64-$ZIG_VERSION/doc/
179#mkdir zig-windows-aarch64-$ZIG_VERSION/doc/
180mkdir zig-macos-aarch64-$ZIG_VERSION/doc/
181mkdir zig-macos-x86_64-$ZIG_VERSION/doc/177mkdir zig-macos-x86_64-$ZIG_VERSION/doc/
178mkdir zig-windows-x86_64-$ZIG_VERSION/doc/
182#mkdir zig-freebsd-x86_64-$ZIG_VERSION/doc/179#mkdir zig-freebsd-x86_64-$ZIG_VERSION/doc/
180mkdir zig-linux-aarch64-$ZIG_VERSION/doc/
181mkdir zig-macos-aarch64-$ZIG_VERSION/doc/
182#mkdir zig-windows-aarch64-$ZIG_VERSION/doc/
183#mkdir zig-linux-x86-$ZIG_VERSION/doc/
184#mkdir zig-windows-x86-$ZIG_VERSION/doc/
185#mkdir zig-linux-armv7a-$ZIG_VERSION/doc/
186#mkdir zig-linux-riscv64-$ZIG_VERSION/doc/
183187
184cd $REL_SRC_BUILD188cd $REL_SRC_BUILD
185stage3-release/bin/zig test ../lib/std/std.zig -femit-docs=doc-linux-aarch64 -target aarch64-linux-musl -fno-emit-bin --zig-lib-dir ../lib
186#stage3-release/bin/zig test ../lib/std/std.zig -femit-docs=doc-linux-armv7a -target arm-linux-musl -mcpu=generic+v7a -fno-emit-bin --zig-lib-dir ../lib
187#stage3-release/bin/zig test ../lib/std/std.zig -femit-docs=doc-linux-x86 -target x86-linux-musl -fno-emit-bin --zig-lib-dir ../lib
188#stage3-release/bin/zig test ../lib/std/std.zig -femit-docs=doc-linux-riscv64 -target riscv64-linux-musl -fno-emit-bin --zig-lib-dir ../lib
189stage3-release/bin/zig test ../lib/std/std.zig -femit-docs=doc-linux-x86_64 -target x86_64-linux-musl -fno-emit-bin --zig-lib-dir ../lib189stage3-release/bin/zig test ../lib/std/std.zig -femit-docs=doc-linux-x86_64 -target x86_64-linux-musl -fno-emit-bin --zig-lib-dir ../lib
190#stage3-release/bin/zig test ../lib/std/std.zig -femit-docs=doc-windows-x86 -target x86-windows-gnu -fno-emit-bin --zig-lib-dir ../lib
191stage3-release/bin/zig test ../lib/std/std.zig -femit-docs=doc-windows-x86_64 -target x86_64-windows-gnu -fno-emit-bin --zig-lib-dir ../lib190stage3-release/bin/zig test ../lib/std/std.zig -femit-docs=doc-windows-x86_64 -target x86_64-windows-gnu -fno-emit-bin --zig-lib-dir ../lib
192#stage3-release/bin/zig test ../lib/std/std.zig -femit-docs=doc-windows-aarch64 -target aarch64-windows-gnu -fno-emit-bin --zig-lib-dir ../lib
193stage3-release/bin/zig test ../lib/std/std.zig -femit-docs=doc-macos-x86_64 -target x86_64-macos -fno-emit-bin --zig-lib-dir ../lib191stage3-release/bin/zig test ../lib/std/std.zig -femit-docs=doc-macos-x86_64 -target x86_64-macos -fno-emit-bin --zig-lib-dir ../lib
194stage3-release/bin/zig test ../lib/std/std.zig -femit-docs=doc-macos-aarch64 -target aarch64-macos -fno-emit-bin --zig-lib-dir ../lib
195#stage3-release/bin/zig test ../lib/std/std.zig -femit-docs=doc-freebsd-x86_64 -target x86_64-freebsd -fno-emit-bin --zig-lib-dir ../lib192#stage3-release/bin/zig test ../lib/std/std.zig -femit-docs=doc-freebsd-x86_64 -target x86_64-freebsd -fno-emit-bin --zig-lib-dir ../lib
193stage3-release/bin/zig test ../lib/std/std.zig -femit-docs=doc-linux-aarch64 -target aarch64-linux-musl -fno-emit-bin --zig-lib-dir ../lib
194stage3-release/bin/zig test ../lib/std/std.zig -femit-docs=doc-macos-aarch64 -target aarch64-macos -fno-emit-bin --zig-lib-dir ../lib
195#stage3-release/bin/zig test ../lib/std/std.zig -femit-docs=doc-windows-aarch64 -target aarch64-windows-gnu -fno-emit-bin --zig-lib-dir ../lib
196#stage3-release/bin/zig test ../lib/std/std.zig -femit-docs=doc-linux-x86 -target x86-linux-musl -fno-emit-bin --zig-lib-dir ../lib
197#stage3-release/bin/zig test ../lib/std/std.zig -femit-docs=doc-windows-x86 -target x86-windows-gnu -fno-emit-bin --zig-lib-dir ../lib
198#stage3-release/bin/zig test ../lib/std/std.zig -femit-docs=doc-linux-armv7a -target arm-linux-musl -mcpu=generic+v7a -fno-emit-bin --zig-lib-dir ../lib
199#stage3-release/bin/zig test ../lib/std/std.zig -femit-docs=doc-linux-riscv64 -target riscv64-linux-musl -fno-emit-bin --zig-lib-dir ../lib
196200
197cd "$TARBALLS_DIR"201cd "$TARBALLS_DIR"
198cp -r $REL_SRC_BUILD/doc-linux-aarch64 zig-linux-aarch64-$ZIG_VERSION/doc/std
199#cp -r $REL_SRC_BUILD/doc-linux-armv7a zig-linux-armv7a-$ZIG_VERSION/doc/std
200#cp -r $REL_SRC_BUILD/doc-linux-x86 zig-linux-x86-$ZIG_VERSION/doc/std
201#cp -r $REL_SRC_BUILD/doc-linux-riscv64 zig-linux-riscv64-$ZIG_VERSION/doc/std
202cp -r $REL_SRC_BUILD/doc-linux-x86_64 zig-linux-x86_64-$ZIG_VERSION/doc/std202cp -r $REL_SRC_BUILD/doc-linux-x86_64 zig-linux-x86_64-$ZIG_VERSION/doc/std
203#cp -r $REL_SRC_BUILD/doc-windows-x86 zig-windows-x86-$ZIG_VERSION/doc/std
204cp -r $REL_SRC_BUILD/doc-windows-x86_64 zig-windows-x86_64-$ZIG_VERSION/doc/std
205#cp -r $REL_SRC_BUILD/doc-windows-aarch64 zig-windows-aarch64-$ZIG_VERSION/doc/std
206cp -r $REL_SRC_BUILD/doc-macos-aarch64 zig-macos-aarch64-$ZIG_VERSION/doc/std
207cp -r $REL_SRC_BUILD/doc-macos-x86_64 zig-macos-x86_64-$ZIG_VERSION/doc/std203cp -r $REL_SRC_BUILD/doc-macos-x86_64 zig-macos-x86_64-$ZIG_VERSION/doc/std
204cp -r $REL_SRC_BUILD/doc-windows-x86_64 zig-windows-x86_64-$ZIG_VERSION/doc/std
208#cp -r $REL_SRC_BUILD/doc-freebsd-x86_64 zig-freebsd-x86_64-$ZIG_VERSION/doc/std205#cp -r $REL_SRC_BUILD/doc-freebsd-x86_64 zig-freebsd-x86_64-$ZIG_VERSION/doc/std
206cp -r $REL_SRC_BUILD/doc-linux-aarch64 zig-linux-aarch64-$ZIG_VERSION/doc/std
207cp -r $REL_SRC_BUILD/doc-macos-aarch64 zig-macos-aarch64-$ZIG_VERSION/doc/std
208#cp -r $REL_SRC_BUILD/doc-windows-aarch64 zig-windows-aarch64-$ZIG_VERSION/doc/std
209#cp -r $REL_SRC_BUILD/doc-linux-x86 zig-linux-x86-$ZIG_VERSION/doc/std
210#cp -r $REL_SRC_BUILD/doc-windows-x86 zig-windows-x86-$ZIG_VERSION/doc/std
211#cp -r $REL_SRC_BUILD/doc-linux-armv7a zig-linux-armv7a-$ZIG_VERSION/doc/std
212#cp -r $REL_SRC_BUILD/doc-linux-riscv64 zig-linux-riscv64-$ZIG_VERSION/doc/std
209213
210cp $LANGREF_HTML zig-linux-aarch64-$ZIG_VERSION/doc/
211#cp $LANGREF_HTML zig-linux-armv7a-$ZIG_VERSION/doc/
212#cp $LANGREF_HTML zig-linux-x86-$ZIG_VERSION/doc/
213#cp $LANGREF_HTML zig-linux-riscv64-$ZIG_VERSION/doc/
214cp $LANGREF_HTML zig-linux-x86_64-$ZIG_VERSION/doc/214cp $LANGREF_HTML zig-linux-x86_64-$ZIG_VERSION/doc/
215#cp $LANGREF_HTML zig-windows-x86-$ZIG_VERSION/doc/
216cp $LANGREF_HTML zig-windows-x86_64-$ZIG_VERSION/doc/
217#cp $LANGREF_HTML zig-windows-aarch64-$ZIG_VERSION/doc/
218cp $LANGREF_HTML zig-macos-aarch64-$ZIG_VERSION/doc/
219cp $LANGREF_HTML zig-macos-x86_64-$ZIG_VERSION/doc/215cp $LANGREF_HTML zig-macos-x86_64-$ZIG_VERSION/doc/
216cp $LANGREF_HTML zig-windows-x86_64-$ZIG_VERSION/doc/
220#cp $LANGREF_HTML zig-freebsd-x86_64-$ZIG_VERSION/doc/217#cp $LANGREF_HTML zig-freebsd-x86_64-$ZIG_VERSION/doc/
218cp $LANGREF_HTML zig-linux-aarch64-$ZIG_VERSION/doc/
219cp $LANGREF_HTML zig-macos-aarch64-$ZIG_VERSION/doc/
220#cp $LANGREF_HTML zig-windows-aarch64-$ZIG_VERSION/doc/
221#cp $LANGREF_HTML zig-linux-x86-$ZIG_VERSION/doc/
222#cp $LANGREF_HTML zig-windows-x86-$ZIG_VERSION/doc/
223#cp $LANGREF_HTML zig-linux-armv7a-$ZIG_VERSION/doc/
224#cp $LANGREF_HTML zig-linux-riscv64-$ZIG_VERSION/doc/
221225
222tar cJf zig-linux-aarch64-$ZIG_VERSION.tar.xz zig-linux-aarch64-$ZIG_VERSION/
223#tar cJf zig-linux-armv7a-$ZIG_VERSION.tar.xz zig-linux-armv7a-$ZIG_VERSION/
224#tar cJf zig-linux-x86-$ZIG_VERSION.tar.xz zig-linux-x86-$ZIG_VERSION/
225#tar cJf zig-linux-riscv64-$ZIG_VERSION.tar.xz zig-linux-riscv64-$ZIG_VERSION/
226tar cJf zig-linux-x86_64-$ZIG_VERSION.tar.xz zig-linux-x86_64-$ZIG_VERSION/226tar cJf zig-linux-x86_64-$ZIG_VERSION.tar.xz zig-linux-x86_64-$ZIG_VERSION/
227#7z a zig-windows-x86-$ZIG_VERSION.zip zig-windows-x86-$ZIG_VERSION/
2287z a zig-windows-x86_64-$ZIG_VERSION.zip zig-windows-x86_64-$ZIG_VERSION/
229#7z a zig-windows-aarch64-$ZIG_VERSION.zip zig-windows-aarch64-$ZIG_VERSION/
230tar cJf zig-macos-aarch64-$ZIG_VERSION.tar.xz zig-macos-aarch64-$ZIG_VERSION/
231tar cJf zig-macos-x86_64-$ZIG_VERSION.tar.xz zig-macos-x86_64-$ZIG_VERSION/227tar cJf zig-macos-x86_64-$ZIG_VERSION.tar.xz zig-macos-x86_64-$ZIG_VERSION/
2287z a zig-windows-x86_64-$ZIG_VERSION.zip zig-windows-x86_64-$ZIG_VERSION/
232#tar cJf zig-freebsd-x86_64-$ZIG_VERSION.tar.xz zig-freebsd-x86_64-$ZIG_VERSION/229#tar cJf zig-freebsd-x86_64-$ZIG_VERSION.tar.xz zig-freebsd-x86_64-$ZIG_VERSION/
230tar cJf zig-linux-aarch64-$ZIG_VERSION.tar.xz zig-linux-aarch64-$ZIG_VERSION/
231tar cJf zig-macos-aarch64-$ZIG_VERSION.tar.xz zig-macos-aarch64-$ZIG_VERSION/
232#7z a zig-windows-aarch64-$ZIG_VERSION.zip zig-windows-aarch64-$ZIG_VERSION/
233#tar cJf zig-linux-x86-$ZIG_VERSION.tar.xz zig-linux-x86-$ZIG_VERSION/
234#7z a zig-windows-x86-$ZIG_VERSION.zip zig-windows-x86-$ZIG_VERSION/
235#tar cJf zig-linux-armv7a-$ZIG_VERSION.tar.xz zig-linux-armv7a-$ZIG_VERSION/
236#tar cJf zig-linux-riscv64-$ZIG_VERSION.tar.xz zig-linux-riscv64-$ZIG_VERSION/
233237
234s3cmd put -P --add-header="cache-control: public, max-age=31536000, immutable" zig-$ZIG_VERSION.tar.xz s3://ziglang.org/builds/$ZIG_VERSION/238s3cmd put -P --add-header="cache-control: public, max-age=31536000, immutable" zig-$ZIG_VERSION.tar.xz s3://ziglang.org/builds/$ZIG_VERSION/
235#s3cmd put -P --add-header="cache-control: public, max-age=31536000, immutable" zig-bootstrap-$ZIG_VERSION.tar.xz s3://ziglang.org/builds/$ZIG_VERSION/239#s3cmd put -P --add-header="cache-control: public, max-age=31536000, immutable" zig-bootstrap-$ZIG_VERSION.tar.xz s3://ziglang.org/builds/$ZIG_VERSION/
236s3cmd put -P --add-header="cache-control: public, max-age=31536000, immutable" zig-linux-aarch64-$ZIG_VERSION.tar.xz s3://ziglang.org/builds/$ZIG_VERSION/
237#s3cmd put -P --add-header="cache-control: public, max-age=31536000, immutable" zig-linux-armv7a-$ZIG_VERSION.tar.xz s3://ziglang.org/builds/$ZIG_VERSION/
238#s3cmd put -P --add-header="cache-control: public, max-age=31536000, immutable" zig-linux-x86-$ZIG_VERSION.tar.xz s3://ziglang.org/builds/$ZIG_VERSION/
239#s3cmd put -P --add-header="cache-control: public, max-age=31536000, immutable" zig-linux-riscv64-$ZIG_VERSION.tar.xz s3://ziglang.org/builds/$ZIG_VERSION/
240s3cmd put -P --add-header="cache-control: public, max-age=31536000, immutable" zig-linux-x86_64-$ZIG_VERSION.tar.xz s3://ziglang.org/builds/$ZIG_VERSION/240s3cmd put -P --add-header="cache-control: public, max-age=31536000, immutable" zig-linux-x86_64-$ZIG_VERSION.tar.xz s3://ziglang.org/builds/$ZIG_VERSION/
241#s3cmd put -P --add-header="cache-control: public, max-age=31536000, immutable" zig-windows-x86-$ZIG_VERSION.zip s3://ziglang.org/builds/$ZIG_VERSION/
242s3cmd put -P --add-header="cache-control: public, max-age=31536000, immutable" zig-windows-x86_64-$ZIG_VERSION.zip s3://ziglang.org/builds/$ZIG_VERSION/
243#s3cmd put -P --add-header="cache-control: public, max-age=31536000, immutable" zig-windows-aarch64-$ZIG_VERSION.zip s3://ziglang.org/builds/$ZIG_VERSION/
244s3cmd put -P --add-header="cache-control: public, max-age=31536000, immutable" zig-macos-aarch64-$ZIG_VERSION.tar.xz s3://ziglang.org/builds/$ZIG_VERSION/
245s3cmd put -P --add-header="cache-control: public, max-age=31536000, immutable" zig-macos-x86_64-$ZIG_VERSION.tar.xz s3://ziglang.org/builds/$ZIG_VERSION/241s3cmd put -P --add-header="cache-control: public, max-age=31536000, immutable" zig-macos-x86_64-$ZIG_VERSION.tar.xz s3://ziglang.org/builds/$ZIG_VERSION/
246#s3cmd put -P --add-header="cache-control: public, max-age=31536000, immutable" zig-freebsd-x86_64-$ZIG_VERSION.tar.xz s3://ziglang.org/builds/$ZIG_VERSION/242#s3cmd put -P --add-header="cache-control: public, max-age=31536000, immutable" zig-freebsd-x86_64-$ZIG_VERSION.tar.xz s3://ziglang.org/builds/$ZIG_VERSION/
243s3cmd put -P --add-header="cache-control: public, max-age=31536000, immutable" zig-windows-x86_64-$ZIG_VERSION.zip s3://ziglang.org/builds/$ZIG_VERSION/
244s3cmd put -P --add-header="cache-control: public, max-age=31536000, immutable" zig-linux-aarch64-$ZIG_VERSION.tar.xz s3://ziglang.org/builds/$ZIG_VERSION/
245s3cmd put -P --add-header="cache-control: public, max-age=31536000, immutable" zig-macos-aarch64-$ZIG_VERSION.tar.xz s3://ziglang.org/builds/$ZIG_VERSION/
246#s3cmd put -P --add-header="cache-control: public, max-age=31536000, immutable" zig-windows-aarch64-$ZIG_VERSION.zip s3://ziglang.org/builds/$ZIG_VERSION/
247#s3cmd put -P --add-header="cache-control: public, max-age=31536000, immutable" zig-linux-x86-$ZIG_VERSION.tar.xz s3://ziglang.org/builds/$ZIG_VERSION/
248#s3cmd put -P --add-header="cache-control: public, max-age=31536000, immutable" zig-windows-x86-$ZIG_VERSION.zip s3://ziglang.org/builds/$ZIG_VERSION/
249#s3cmd put -P --add-header="cache-control: public, max-age=31536000, immutable" zig-linux-armv7a-$ZIG_VERSION.tar.xz s3://ziglang.org/builds/$ZIG_VERSION/
250#s3cmd put -P --add-header="cache-control: public, max-age=31536000, immutable" zig-linux-riscv64-$ZIG_VERSION.tar.xz s3://ziglang.org/builds/$ZIG_VERSION/
247251
248export SRC_TARBALL="zig-$ZIG_VERSION.tar.xz"252export SRC_TARBALL="zig-$ZIG_VERSION.tar.xz"
249export SRC_SHASUM=$(sha256sum "zig-$ZIG_VERSION.tar.xz" | cut '-d ' -f1)253export SRC_SHASUM=$(sha256sum "zig-$ZIG_VERSION.tar.xz" | cut '-d ' -f1)
...@@ -285,11 +289,13 @@ cd "$ZIGDIR/ci"...@@ -285,11 +289,13 @@ cd "$ZIGDIR/ci"
285"$ZIG" run update-download-page.zig289"$ZIG" run update-download-page.zig
286mv out "$TARBALLS_DIR/out"290mv out "$TARBALLS_DIR/out"
287291
288cd "$WORKDIR/www.ziglang.org"292cd "$WORKDIR"
293git clone --depth=1 git@github.com:ziglang/www.ziglang.org.git
294cd www.ziglang.org
295
289# This is the user when pushing to the website repo.296# This is the user when pushing to the website repo.
290git config user.email "ziggy@ziglang.org"297git config user.email "ziggy@ziglang.org"
291git config user.name "Ziggy"298git config user.name "Ziggy"
292git pull
293299
294cp "$TARBALLS_DIR/out/index.json" data/releases.json300cp "$TARBALLS_DIR/out/index.json" data/releases.json
295git add data/releases.json301git add data/releases.json
ci/linux/build-x86_64-debug.sh+49-35
...@@ -1,56 +1,70 @@...@@ -1,56 +1,70 @@
1#!/bin/sh1#!/bin/sh
22
3# Requires cmake ninja-build
4
3set -x5set -x
4set -e6set -e
57
6ZIGDIR="$(pwd)"
7ARCH="$(uname -m)"8ARCH="$(uname -m)"
8DEPS_LOCAL="$HOME/local"9TARGET="$ARCH-linux-musl"
9OLD_ZIG="$DEPS_LOCAL/bin/zig"10MCPU="baseline"
10TARGET="${ARCH}-linux-musl"11CACHE_BASENAME="zig+llvm+lld+clang-$TARGET-0.11.0-dev.256+271cc52a1"
1112PREFIX="$HOME/deps/$CACHE_BASENAME"
12mkdir -p "$DEPS_LOCAL"13ZIG="$PREFIX/bin/zig"
13cd "$DEPS_LOCAL"
1414
15OLD_ZIG_VERSION="0.11.0-dev.256+271cc52a1"15export PATH="$HOME/deps/wasmtime-v2.0.2-$ARCH-linux:$HOME/deps/qemu-linux-x86_64-6.1.0.1/bin:$PATH"
16wget https://ziglang.org/deps/zig+llvm+lld+clang-x86_64-linux-musl-$OLD_ZIG_VERSION.tar.xz
17tar x --strip-components=1 -f zig+llvm+lld+clang-x86_64-linux-musl-$OLD_ZIG_VERSION.tar.xz
1816
19wget https://ziglang.org/deps/qemu-linux-x86_64-6.1.0.1.tar.xz17# Make the `zig version` number consistent.
20tar x --strip-components=1 -f qemu-linux-x86_64-6.1.0.1.tar.xz18# This will affect the cmake command below.
19git config core.abbrev 9
20git fetch --unshallow || true
21git fetch --tags
2122
22wget https://github.com/bytecodealliance/wasmtime/releases/download/v2.0.2/wasmtime-v2.0.2-x86_64-linux.tar.xz23export CC="$ZIG cc -target $TARGET -mcpu=$MCPU"
23tar x --strip-components=1 -f wasmtime-v2.0.2-x86_64-linux.tar.xz24export CXX="$ZIG c++ -target $TARGET -mcpu=$MCPU"
24rm -f LICENSE README.md
25mv wasmtime bin/
2625
27export PATH=$DEPS_LOCAL/bin:$PATH26rm -rf build-debug
27mkdir build-debug
28cd build-debug
29cmake .. \
30 -DCMAKE_INSTALL_PREFIX="stage3-debug" \
31 -DCMAKE_PREFIX_PATH="$PREFIX" \
32 -DCMAKE_BUILD_TYPE=Debug \
33 -DZIG_TARGET_TRIPLE="$TARGET" \
34 -DZIG_TARGET_MCPU="$MCPU" \
35 -DZIG_STATIC=ON \
36 -GNinja
2837
29cd "$ZIGDIR"38# Now cmake will use zig as the C/C++ compiler. We reset the environment variables
30echo "building stage3-debug with zig version $($OLD_ZIG version)"39# so that installation and testing do not get affected by them.
40unset CC
41unset CXX
3142
32"$OLD_ZIG" build \43ninja install
33 --prefix stage3 \
34 --search-prefix "$DEPS_LOCAL" \
35 --zig-lib-dir lib \
36 -Denable-stage1 \
37 -Dstatic-llvm \
38 -Drelease \
39 -Duse-zig-libcxx \
40 -Dtarget="$TARGET"
4144
42echo "Looking for non-conforming code formatting..."45echo "Looking for non-conforming code formatting..."
43stage3/bin/zig fmt --check . \46stage3-debug/bin/zig fmt --check .. \
44 --exclude test/cases/ \47 --exclude ../test/cases/ \
45 --exclude build48 --exclude ../build-debug \
49 --exclude ../build-release
4650
47# simultaneously test building self-hosted without LLVM and with 32-bit arm51# simultaneously test building self-hosted without LLVM and with 32-bit arm
48stage3/bin/zig build -Dtarget=arm-linux-musleabihf52stage3-debug/bin/zig build -Dtarget=arm-linux-musleabihf
4953
50stage3/bin/zig build test docs \54stage3-debug/bin/zig build test docs \
51 -fqemu \55 -fqemu \
52 -fwasmtime \56 -fwasmtime \
53 -Dstatic-llvm \57 -Dstatic-llvm \
54 -Dtarget=native-native-musl \58 -Dtarget=native-native-musl \
55 --search-prefix "$DEPS_LOCAL" \59 --search-prefix "$PREFIX" \
56 --zig-lib-dir lib60 --zig-lib-dir "$(pwd)/../lib"
61
62# Look for HTML errors.
63tidy --drop-empty-elements no -qe zig-cache/langref.html
64
65# Produce the experimental std lib documentation.
66mkdir -p "stage3-debug/doc/std"
67stage3-debug/bin/zig test ../lib/std/std.zig \
68 -femit-docs=stage3-debug/doc/std \
69 -fno-emit-bin \
70 --zig-lib-dir "$(pwd)/../lib"
ci/linux/build-x86_64-release.sh+47-36
...@@ -1,75 +1,86 @@...@@ -1,75 +1,86 @@
1#!/bin/sh1#!/bin/sh
22
3# Requires cmake ninja-build
4
3set -x5set -x
4set -e6set -e
57
6ZIGDIR="$(pwd)"
7ARCH="$(uname -m)"8ARCH="$(uname -m)"
8DEPS_LOCAL="$HOME/local"9TARGET="$ARCH-linux-musl"
9OLD_ZIG="$DEPS_LOCAL/bin/zig"
10TARGET="${ARCH}-linux-musl"
11MCPU="baseline"10MCPU="baseline"
11CACHE_BASENAME="zig+llvm+lld+clang-$TARGET-0.11.0-dev.256+271cc52a1"
12PREFIX="$HOME/deps/$CACHE_BASENAME"
13ZIG="$PREFIX/bin/zig"
1214
13mkdir -p "$DEPS_LOCAL"15export PATH="$HOME/deps/wasmtime-v2.0.2-$ARCH-linux:$HOME/deps/qemu-linux-x86_64-6.1.0.1/bin:$PATH"
14cd "$DEPS_LOCAL"
15
16OLD_ZIG_VERSION="0.11.0-dev.256+271cc52a1"
17wget https://ziglang.org/deps/zig+llvm+lld+clang-x86_64-linux-musl-$OLD_ZIG_VERSION.tar.xz
18tar x --strip-components=1 -f zig+llvm+lld+clang-x86_64-linux-musl-$OLD_ZIG_VERSION.tar.xz
19
20wget https://ziglang.org/deps/qemu-linux-x86_64-6.1.0.1.tar.xz
21tar x --strip-components=1 -f qemu-linux-x86_64-6.1.0.1.tar.xz
22
23wget https://github.com/bytecodealliance/wasmtime/releases/download/v2.0.2/wasmtime-v2.0.2-x86_64-linux.tar.xz
24tar x --strip-components=1 -f wasmtime-v2.0.2-x86_64-linux.tar.xz
25rm -f LICENSE README.md
26mv wasmtime bin/
27
28export PATH=$DEPS_LOCAL/bin:$PATH
2916
30cd "$ZIGDIR"17# Make the `zig version` number consistent.
31echo "building stage3-release with zig version $($OLD_ZIG version)"18# This will affect the cmake command below.
19git config core.abbrev 9
20git fetch --unshallow || true
21git fetch --tags
3222
33export CC="$OLD_ZIG cc -target $TARGET -mcpu=$MCPU"23export CC="$ZIG cc -target $TARGET -mcpu=$MCPU"
34export CXX="$OLD_ZIG c++ -target $TARGET -mcpu=$MCPU"24export CXX="$ZIG c++ -target $TARGET -mcpu=$MCPU"
3525
36mkdir build26rm -rf build-release
37cd build27mkdir build-release
28cd build-release
38cmake .. \29cmake .. \
39 -DCMAKE_INSTALL_PREFIX="$(pwd)/stage3" \30 -DCMAKE_INSTALL_PREFIX="stage3-release" \
40 -DCMAKE_PREFIX_PATH="$DEPS_LOCAL" \31 -DCMAKE_PREFIX_PATH="$PREFIX" \
41 -DCMAKE_BUILD_TYPE=Release \32 -DCMAKE_BUILD_TYPE=Release \
42 -DZIG_TARGET_TRIPLE="$TARGET" \33 -DZIG_TARGET_TRIPLE="$TARGET" \
43 -DZIG_TARGET_MCPU="$MCPU" \34 -DZIG_TARGET_MCPU="$MCPU" \
44 -DZIG_STATIC=ON35 -DZIG_STATIC=ON \
36 -GNinja
4537
46# Now cmake will use zig as the C/C++ compiler. We reset the environment variables38# Now cmake will use zig as the C/C++ compiler. We reset the environment variables
47# so that installation and testing do not get affected by them.39# so that installation and testing do not get affected by them.
48unset CC40unset CC
49unset CXX41unset CXX
5042
51make -j2 install43ninja install
5244
53"stage3/bin/zig" build test \45echo "Looking for non-conforming code formatting..."
46stage3-release/bin/zig fmt --check .. \
47 --exclude ../test/cases/ \
48 --exclude ../build-debug \
49 --exclude ../build-release
50
51# simultaneously test building self-hosted without LLVM and with 32-bit arm
52stage3-release/bin/zig build -Dtarget=arm-linux-musleabihf
53
54stage3-release/bin/zig build test docs \
54 -fqemu \55 -fqemu \
55 -fwasmtime \56 -fwasmtime \
56 -Dstatic-llvm \57 -Dstatic-llvm \
57 -Dtarget=native-native-musl \58 -Dtarget=native-native-musl \
58 --search-prefix "$DEPS_LOCAL" \59 --search-prefix "$PREFIX" \
60 --zig-lib-dir "$(pwd)/../lib"
61
62# Look for HTML errors.
63tidy --drop-empty-elements no -qe zig-cache/langref.html
64
65# Produce the experimental std lib documentation.
66mkdir -p "stage3-release/doc/std"
67stage3-release/bin/zig test ../lib/std/std.zig \
68 -femit-docs=stage3-release/doc/std \
69 -fno-emit-bin \
59 --zig-lib-dir "$(pwd)/../lib"70 --zig-lib-dir "$(pwd)/../lib"
6071
61"stage3/bin/zig" build \72"stage3/bin/zig" build \
62 --prefix stage4 \73 --prefix stage4-release \
63 -Denable-llvm \74 -Denable-llvm \
64 -Denable-stage1 \75 -Denable-stage1 \
65 -Dno-lib \76 -Dno-lib \
66 -Drelease \77 -Drelease \
67 -Dstrip \78 -Dstrip \
68 -Dtarget=x86_64-linux-musl \79 -Dtarget=$TARGET \
69 -Duse-zig-libcxx \80 -Duse-zig-libcxx \
70 -Dversion-string="$(stage3/bin/zig version)"81 -Dversion-string="$(stage3-release/bin/zig version)"
7182
72# diff returns an error code if the files differ.83# diff returns an error code if the files differ.
73echo "If the following command fails, it means nondeterminism has been"84echo "If the following command fails, it means nondeterminism has been"
74echo "introduced, making stage3 and stage4 no longer byte-for-byte identical."85echo "introduced, making stage3 and stage4 no longer byte-for-byte identical."
75diff stage3/bin/zig stage4/bin/zig86diff stage3-release/bin/zig stage4-release/bin/zig
ci/macos/build-aarch64.sh-2
...@@ -3,8 +3,6 @@...@@ -3,8 +3,6 @@
3set -x3set -x
4set -e4set -e
55
6echo "Running on Version:" $MACOS_VERSION
7
8# Script assumes the presence of the following:6# Script assumes the presence of the following:
9# s3cmd 7# s3cmd
108
ci/macos/build-x86_64.sh+1-3
...@@ -3,8 +3,6 @@...@@ -3,8 +3,6 @@
3set -x3set -x
4set -e4set -e
55
6echo "Running on Version:" $MACOS_VERSION
7
8# Script assumes the presence of the following:6# Script assumes the presence of the following:
9# s3cmd 7# s3cmd
108
...@@ -13,7 +11,7 @@ TARGET="$ARCH-macos-none"...@@ -13,7 +11,7 @@ TARGET="$ARCH-macos-none"
13MCPU="baseline"11MCPU="baseline"
14CACHE_BASENAME="zig+llvm+lld+clang-$TARGET-0.10.0-dev.4560+828735ac0"12CACHE_BASENAME="zig+llvm+lld+clang-$TARGET-0.10.0-dev.4560+828735ac0"
15PREFIX="$HOME/$CACHE_BASENAME"13PREFIX="$HOME/$CACHE_BASENAME"
16JOBS="-j2"14JOBS="-j3"
1715
18rm -rf $PREFIX16rm -rf $PREFIX
19cd $HOME17cd $HOME