2
1
Эх сурвалжийг харах

package/docker-engine: libseccomp is mandatory

libseccomp is mandatory since bump to version 23.0.0 in commit
485b47e025541a58358d8852c600b8e7644b4ec6:
https://github.com/moby/moby/pull/42501

Fixes:
 - https://bugs.buildroot.org/show_bug.cgi?id=15321

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
Fabrice Fontaine 2 жил өмнө
parent
commit
1807ef1049

+ 8 - 2
package/docker-engine/Config.in

@@ -5,9 +5,12 @@ config BR2_PACKAGE_DOCKER_ENGINE
 	depends on BR2_TOOLCHAIN_HAS_THREADS
 	depends on BR2_TOOLCHAIN_HAS_THREADS
 	depends on !BR2_TOOLCHAIN_USES_UCLIBC # containerd -> runc
 	depends on !BR2_TOOLCHAIN_USES_UCLIBC # containerd -> runc
 	depends on BR2_USE_MMU # containerd
 	depends on BR2_USE_MMU # containerd
+	depends on BR2_PACKAGE_LIBSECCOMP_ARCH_SUPPORTS # libseccomp
+	depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_17 # libseccomp
 	select BR2_PACKAGE_CGROUPFS_MOUNT if !BR2_PACKAGE_SYSTEMD # runtime dependency
 	select BR2_PACKAGE_CGROUPFS_MOUNT if !BR2_PACKAGE_SYSTEMD # runtime dependency
 	select BR2_PACKAGE_CONTAINERD # runtime dependency
 	select BR2_PACKAGE_CONTAINERD # runtime dependency
 	select BR2_PACKAGE_IPTABLES # runtime dependency
 	select BR2_PACKAGE_IPTABLES # runtime dependency
+	select BR2_PACKAGE_LIBSECCOMP
 	help
 	help
 	  Docker is a platform to build, ship,
 	  Docker is a platform to build, ship,
 	  and run applications as lightweight containers.
 	  and run applications as lightweight containers.
@@ -48,8 +51,11 @@ config BR2_PACKAGE_DOCKER_ENGINE_DRIVER_VFS
 
 
 endif
 endif
 
 
-comment "docker-engine needs a glibc or musl toolchain w/ threads"
+comment "docker-engine needs a glibc or musl toolchain w/ threads, headers >= 3.17"
 	depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS
 	depends on BR2_PACKAGE_HOST_GO_TARGET_ARCH_SUPPORTS
 	depends on BR2_PACKAGE_HOST_GO_TARGET_CGO_LINKING_SUPPORTS
 	depends on BR2_PACKAGE_HOST_GO_TARGET_CGO_LINKING_SUPPORTS
-	depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_TOOLCHAIN_USES_UCLIBC
+	depends on BR2_PACKAGE_LIBSECCOMP_ARCH_SUPPORTS
+	depends on !BR2_TOOLCHAIN_HAS_THREADS || \
+		BR2_TOOLCHAIN_USES_UCLIBC || \
+		!BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_17
 	depends on BR2_USE_MMU
 	depends on BR2_USE_MMU

+ 1 - 5
package/docker-engine/docker-engine.mk

@@ -10,7 +10,7 @@ DOCKER_ENGINE_SITE = $(call github,moby,moby,v$(DOCKER_ENGINE_VERSION))
 DOCKER_ENGINE_LICENSE = Apache-2.0
 DOCKER_ENGINE_LICENSE = Apache-2.0
 DOCKER_ENGINE_LICENSE_FILES = LICENSE
 DOCKER_ENGINE_LICENSE_FILES = LICENSE
 
 
-DOCKER_ENGINE_DEPENDENCIES = host-pkgconf
+DOCKER_ENGINE_DEPENDENCIES = host-pkgconf libseccomp
 DOCKER_ENGINE_GOMOD = github.com/docker/docker
 DOCKER_ENGINE_GOMOD = github.com/docker/docker
 
 
 DOCKER_ENGINE_CPE_ID_VENDOR = docker
 DOCKER_ENGINE_CPE_ID_VENDOR = docker
@@ -30,10 +30,6 @@ ifeq ($(BR2_PACKAGE_LIBAPPARMOR),y)
 DOCKER_ENGINE_DEPENDENCIES += libapparmor
 DOCKER_ENGINE_DEPENDENCIES += libapparmor
 endif
 endif
 
 
-ifeq ($(BR2_PACKAGE_LIBSECCOMP),y)
-DOCKER_ENGINE_DEPENDENCIES += libseccomp
-endif
-
 ifeq ($(BR2_INIT_SYSTEMD),y)
 ifeq ($(BR2_INIT_SYSTEMD),y)
 DOCKER_ENGINE_DEPENDENCIES += systemd
 DOCKER_ENGINE_DEPENDENCIES += systemd
 DOCKER_ENGINE_TAGS += systemd journald
 DOCKER_ENGINE_TAGS += systemd journald