Преглед на файлове

Fix `make cross` target

When changing the various cross targets in the Dockerfile I neglected
some `;`.
Instead of dealing with that now this just sets `--platform` on the
cross specific targets which only work on linux/amd64 anyway.

Signed-off-by: Brian Goff <cpuguy83@gmail.com>
Brian Goff преди 5 години
родител
ревизия
e5bfaf19b1
променени са 1 файла, в които са добавени 17 реда и са изтрити 21 реда
  1. 17 21
      Dockerfile

+ 17 - 21
Dockerfile

@@ -89,19 +89,17 @@ RUN /download-frozen-image-v2.sh /build \
 
 
 FROM base AS cross-false
 FROM base AS cross-false
 
 
-FROM base AS cross-true
+FROM --platform=linux/amd64 base AS cross-true
 ARG DEBIAN_FRONTEND
 ARG DEBIAN_FRONTEND
 RUN dpkg --add-architecture armhf
 RUN dpkg --add-architecture armhf
 RUN dpkg --add-architecture arm64
 RUN dpkg --add-architecture arm64
 RUN dpkg --add-architecture armel
 RUN dpkg --add-architecture armel
 RUN --mount=type=cache,sharing=locked,id=moby-cross-true-aptlib,target=/var/lib/apt \
 RUN --mount=type=cache,sharing=locked,id=moby-cross-true-aptlib,target=/var/lib/apt \
 	--mount=type=cache,sharing=locked,id=moby-cross-true-aptcache,target=/var/cache/apt \
 	--mount=type=cache,sharing=locked,id=moby-cross-true-aptcache,target=/var/cache/apt \
-		if [ "$(go env GOHOSTARCH)" = "amd64" ]; then \
-			apt-get update && apt-get install -y --no-install-recommends \
-			crossbuild-essential-armhf \
-			crossbuild-essential-arm64 \
-			crossbuild-essential-armel \
-		fi
+		apt-get update && apt-get install -y --no-install-recommends \
+		crossbuild-essential-armhf \
+		crossbuild-essential-arm64 \
+		crossbuild-essential-armel
 
 
 FROM cross-${CROSS} as dev-base
 FROM cross-${CROSS} as dev-base
 
 
@@ -113,7 +111,7 @@ RUN --mount=type=cache,sharing=locked,id=moby-cross-false-aptlib,target=/var/lib
 		libapparmor-dev \
 		libapparmor-dev \
 		libseccomp-dev
 		libseccomp-dev
 
 
-FROM cross-true AS runtime-dev-cross-true
+FROM --platform=linux/amd64 cross-true AS runtime-dev-cross-true
 ARG DEBIAN_FRONTEND
 ARG DEBIAN_FRONTEND
 # These crossbuild packages rely on gcc-<arch>, but this doesn't want to install
 # These crossbuild packages rely on gcc-<arch>, but this doesn't want to install
 # on non-amd64 systems.
 # on non-amd64 systems.
@@ -121,19 +119,17 @@ ARG DEBIAN_FRONTEND
 # other architectures cannnot crossbuild amd64.
 # other architectures cannnot crossbuild amd64.
 RUN --mount=type=cache,sharing=locked,id=moby-cross-true-aptlib,target=/var/lib/apt \
 RUN --mount=type=cache,sharing=locked,id=moby-cross-true-aptlib,target=/var/lib/apt \
 	--mount=type=cache,sharing=locked,id=moby-cross-true-aptcache,target=/var/cache/apt \
 	--mount=type=cache,sharing=locked,id=moby-cross-true-aptcache,target=/var/cache/apt \
-		if [ "$(go env GOHOSTARCH)" = "amd64" ]; then \
-			apt-get update && apt-get install -y --no-install-recommends \
-				libseccomp-dev:armhf \
-				libseccomp-dev:arm64 \
-				libseccomp-dev:armel \
-				libapparmor-dev:armhf \
-				libapparmor-dev:arm64 \
-				libapparmor-dev:armel \
-				# install this arches seccomp here due to compat issues with the v0 builder
-				# This is as opposed to inheriting from runtime-dev-cross-false
-				libapparmor-dev \
-				libseccomp-dev \
-		fi
+		apt-get update && apt-get install -y --no-install-recommends \
+			libseccomp-dev:armhf \
+			libseccomp-dev:arm64 \
+			libseccomp-dev:armel \
+			libapparmor-dev:armhf \
+			libapparmor-dev:arm64 \
+			libapparmor-dev:armel \
+			# install this arches seccomp here due to compat issues with the v0 builder
+			# This is as opposed to inheriting from runtime-dev-cross-false
+			libapparmor-dev \
+			libseccomp-dev
 
 
 
 
 FROM runtime-dev-cross-${CROSS} AS runtime-dev
 FROM runtime-dev-cross-${CROSS} AS runtime-dev