Skip to content

Commit d78a576

Browse files
committed
Merge branch 'master' into deploy
2 parents aaa954e + e69a436 commit d78a576

62 files changed

Lines changed: 734 additions & 70 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

README.md

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -66,11 +66,12 @@ There are images for various toolchains, they are encoded in the distro name/ver
6666
- `ubuntu@20.04`: Ubuntu 20.04, gcc 9.4.0, binutils 2.34
6767
- `ubuntu@18.04`: Ubuntu 18.04, gcc 7.5.0, binutils 2.30
6868
- `ubuntu@16.04`: Ubuntu 16.04, gcc 5.4.0, binutils 2.26.1
69-
- `fedora@36`: Fedora 36, gcc 12.1.1, binutils 2.37-7
70-
- `fedora@35`: Fedora 35, gcc 11.2.1, binutils 2.37-3
71-
- `fedora@34`: Fedora 34, gcc 11.2.1, binutils 2.35.2
72-
- `fedora@33`: Fedora 33, gcc 10.2.1, binutils 2.35.1
73-
- `fedora@31`: Fedora 31, gcc 9.2.1, binutils 2.32
69+
- `fedora@37`: Fedora 37, gcc 12.2.1, binutils 2.38-5, clang 15.0.7
70+
- `fedora@36`: Fedora 36, gcc 12.1.1, binutils 2.37-7, clang 14.0.5
71+
- `fedora@35`: Fedora 35, gcc 11.2.1, binutils 2.37-3, clang 13.0.1
72+
- `fedora@34`: Fedora 34, gcc 11.2.1, binutils 2.35.2, clang 12.0.1
73+
- `fedora@33`: Fedora 33, gcc 10.2.1, binutils 2.35.1, clang 11.0.0
74+
- `fedora@31`: Fedora 31, gcc 9.2.1, binutils 2.32, clang 9.0.1
7475

7576
Only the Ubuntu toolchains can build the selftests.
7677

build/Makefile

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
all: help
22

3-
export FEDORA_LATEST := 36
3+
export FEDORA_LATEST := 37
44
export UBUNTU_LATEST := 22.04
55

66
# If we're on ppc64le
@@ -12,7 +12,7 @@ ifeq ($(shell uname -m),ppc64le)
1212
endif
1313
endif
1414

15-
FEDORA_DISTROS := fedora@${FEDORA_LATEST} fedora@35 fedora@34 fedora@33 fedora@31 fedora
15+
FEDORA_DISTROS := fedora@${FEDORA_LATEST} fedora@36 fedora@35 fedora@34 fedora@33 fedora@31 fedora
1616
UBUNTU_DISTROS := ubuntu@${UBUNTU_LATEST} ubuntu@20.04 ubuntu@18.04 ubuntu@16.04 ubuntu
1717
KORG_DISTROS := korg@12.1.0 korg@11.3.0 korg@11.1.0 korg@10.3.0 korg@9.4.0 korg@9.3.0 korg@8.5.0 korg@8.1.0 korg@5.5.0
1818
ALL_DISTROS := ${UBUNTU_DISTROS} ${KORG_DISTROS} ${FEDORA_DISTROS}

build/fedora/Dockerfile

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
ARG from
22
FROM ${from}
33

4-
RUN dnf -y install \
4+
RUN dnf -y install --setopt=install_weak_deps=False \
55
bc \
66
bison \
77
bzip2 \
@@ -22,6 +22,8 @@ RUN dnf -y install \
2222
hostname \
2323
kmod \
2424
libmpc-devel \
25+
lld \
26+
llvm \
2527
lz4 \
2628
lzop \
2729
make \

build/scripts/image.sh

Lines changed: 44 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -34,23 +34,61 @@ elif [[ "$task" == "pull-image" ]]; then
3434
exit $?
3535
fi
3636

37+
# Tag the arch specific image with the generic tag
3738
cmd="$DOCKER tag $arch_image $image"
3839
(set -x; $cmd)
40+
if [[ $? -ne 0 ]]; then
41+
echo "Error: tagging $arch_image as $image?" >&2
42+
exit 1
43+
fi
44+
45+
# Remove the arch tag (not the whole image)
46+
cmd="$DOCKER rmi $arch_image"
47+
(set -x; $cmd)
48+
if [[ $? -ne 0 ]]; then
49+
echo "Error: untagging $arch_image?" >&2
50+
exit 1
51+
fi
3952

40-
exit $?
53+
exit 0
4154
elif [[ "$task" == "push-image" ]]; then
4255
if [[ -n "$DOCKER_PASSWORD" && -n "$DOCKER_USER" ]]; then
4356
cmd="$DOCKER login -u $DOCKER_USER -p $DOCKER_PASSWORD"
4457
(set -x; $cmd)
4558
fi
4659

47-
image="$image-$(uname -m)"
48-
cmd="$DOCKER push $image"
60+
# Temporarily tag the image with the arch
61+
arch_image="$image-$(uname -m)"
62+
cmd="$DOCKER tag $image $arch_image"
63+
(set -x; $cmd)
64+
if [[ $? -ne 0 ]]; then
65+
echo "Error: tagging $image as $arch_image?" >&2
66+
exit 1
67+
fi
68+
69+
cmd="$DOCKER push $arch_image"
70+
(set -x; $cmd)
71+
if [[ $? -ne 0 ]]; then
72+
echo "Error: pushing $arch_image?" >&2
73+
exit 1
74+
fi
75+
76+
# Remove the arch tag (not the whole image)
77+
cmd="$DOCKER rmi $arch_image"
4978
(set -x; $cmd)
50-
exit $?
79+
if [[ $? -ne 0 ]]; then
80+
echo "Error: untagging $arch_image?" >&2
81+
exit 1
82+
fi
83+
84+
exit 0
5185
fi
5286

53-
cmd="$DOCKER build --pull -f $distro/Dockerfile "
87+
cmd="$DOCKER build -f $distro/Dockerfile "
88+
89+
if [[ "$distro" != "ubuntu-allcross" ]]; then
90+
cmd+="--pull "
91+
fi
5492

5593
if [[ -n "$http_proxy" ]]; then
5694
cmd+="--build-arg http_proxy=$http_proxy "
@@ -73,7 +111,7 @@ from="${DOCKER_REGISTRY}$distro:$version"
73111
if [[ "$distro" == "docs" ]]; then
74112
from="${DOCKER_REGISTRY}ubuntu:$version"
75113
elif [[ "$distro" == "ubuntu-allcross" ]]; then
76-
from="${DOCKER_REGISTRY}linuxppc/build:ubuntu-$version-$(uname -m)"
114+
from="${DOCKER_REGISTRY}linuxppc/build:ubuntu-$version"
77115
elif [[ "$distro" == "korg" ]]; then
78116
cmd+="--build-arg compiler_version=$version "
79117

@@ -94,7 +132,6 @@ cmd+="--build-arg uid=$UID "
94132
cmd+="--build-arg gid=$GID "
95133
cmd+="--build-arg from=$from "
96134
cmd+="--build-arg apt_mirror=$APT_MIRROR "
97-
cmd+="-t $image-$(uname -m) "
98135
cmd+="-t $image ."
99136

100137
(set -x; $cmd)

build/scripts/lib.sh

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -33,13 +33,9 @@ function get_output_dir()
3333
fi
3434

3535
if [[ -n "$CI_OUTPUT" ]]; then
36-
d="$CI_OUTPUT/$subarch@$distro"
36+
d="$CI_OUTPUT"
3737
else
38-
d="$script_base/../output/$subarch@$distro"
39-
fi
40-
41-
if [[ -n "$version" ]]; then
42-
d="$d@$version"
38+
d="$script_base/../output"
4339
fi
4440

4541
case "$task" in
@@ -68,7 +64,16 @@ function get_output_dir()
6864
esac
6965

7066
if [[ -n "$clang" ]]; then
71-
d="${d}_clang"
67+
# Append "+clang" if it's not already part of the defconfig name
68+
if [[ "$defconfig" != *"+"* ]]; then
69+
d="${d}+clang"
70+
fi
71+
fi
72+
73+
d="$d@$subarch@$distro"
74+
75+
if [[ -n "$version" ]]; then
76+
d="$d@$version"
7277
fi
7378

7479
echo "$d"

build/ubuntu/Dockerfile

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
ARG from
22
FROM ${from}
3+
ARG from
34

45
COPY ubuntu/packages.sh /tmp/packages.sh
56

@@ -8,7 +9,7 @@ ENV apt_mirror=${apt_mirror}
89
RUN [ -n "$apt_mirror" ] && sed -i -e "s|ports.ubuntu.com|$apt_mirror|" /etc/apt/sources.list || true
910

1011
# Deal with Ubuntu 21.10 repos moving to old-releases (ppc64le only)
11-
RUN [ "$from" = "ubuntu:21.10" ] && sed -i -e "s|ports.ubuntu.com/ubuntu-ports|old-releases.ubuntu.com/ubuntu|" /etc/apt/sources.list || true
12+
RUN if echo "$from" | grep -q ".*ubuntu:21.10"; then sed -i -e "s|ports.ubuntu.com/ubuntu-ports|old-releases.ubuntu.com/ubuntu|" /etc/apt/sources.list; fi
1213

1314
RUN apt-get -q -y update && \
1415
DEBIAN_FRONTEND=noninteractive \

etc/configs/4k-pages.config

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
CONFIG_PPC_4K_PAGES=y
2+
CONFIG_PPC_64K_PAGES=n

etc/configs/9p.config

Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
CONFIG_9P_FS_POSIX_ACL=y
2+
CONFIG_9P_FS_SECURITY=y
3+
CONFIG_9P_FS=y
4+
CONFIG_NET_9P_DEBUG=n
5+
CONFIG_NET_9P_FD=y
6+
CONFIG_NET_9P_RDMA=n
7+
CONFIG_NET_9P_VIRTIO=y
8+
CONFIG_NET_9P=y
9+
CONFIG_NETFS_STATS=n
10+
CONFIG_NETWORK_FILESYSTEMS=y
11+
CONFIG_PCI=y
12+
CONFIG_VIRTIO_MENU=y
13+
CONFIG_VIRTIO_PCI=y

etc/configs/criu.config

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
CONFIG_CHECKPOINT_RESTORE=y
2+
CONFIG_MEM_SOFT_DIRTY=y
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
CONFIG_DEBUG_ATOMIC_SLEEP=y

0 commit comments

Comments
 (0)