1*4882a593Smuzhiyun################################################################################ 2*4882a593Smuzhiyun# 3*4882a593Smuzhiyun# docker-engine 4*4882a593Smuzhiyun# 5*4882a593Smuzhiyun################################################################################ 6*4882a593Smuzhiyun 7*4882a593SmuzhiyunDOCKER_ENGINE_VERSION = 20.10.9 8*4882a593SmuzhiyunDOCKER_ENGINE_SITE = $(call github,moby,moby,v$(DOCKER_ENGINE_VERSION)) 9*4882a593Smuzhiyun 10*4882a593SmuzhiyunDOCKER_ENGINE_LICENSE = Apache-2.0 11*4882a593SmuzhiyunDOCKER_ENGINE_LICENSE_FILES = LICENSE 12*4882a593Smuzhiyun 13*4882a593SmuzhiyunDOCKER_ENGINE_DEPENDENCIES = host-pkgconf 14*4882a593SmuzhiyunDOCKER_ENGINE_GOMOD = github.com/docker/docker 15*4882a593Smuzhiyun 16*4882a593SmuzhiyunDOCKER_ENGINE_CPE_ID_VENDOR = docker 17*4882a593SmuzhiyunDOCKER_ENGINE_CPE_ID_PRODUCT = docker 18*4882a593Smuzhiyun 19*4882a593SmuzhiyunDOCKER_ENGINE_LDFLAGS = \ 20*4882a593Smuzhiyun -X $(DOCKER_ENGINE_GOMOD)/dockerversion.BuildTime="" \ 21*4882a593Smuzhiyun -X $(DOCKER_ENGINE_GOMOD)/dockerversion.GitCommit="buildroot" \ 22*4882a593Smuzhiyun -X $(DOCKER_ENGINE_GOMOD)/dockerversion.IAmStatic="false" \ 23*4882a593Smuzhiyun -X $(DOCKER_ENGINE_GOMOD)/dockerversion.InitCommitID="" \ 24*4882a593Smuzhiyun -X $(DOCKER_ENGINE_GOMOD)/dockerversion.Version="$(DOCKER_ENGINE_VERSION)" 25*4882a593Smuzhiyun 26*4882a593SmuzhiyunDOCKER_ENGINE_TAGS = cgo exclude_graphdriver_zfs 27*4882a593SmuzhiyunDOCKER_ENGINE_BUILD_TARGETS = cmd/dockerd 28*4882a593Smuzhiyun 29*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_LIBAPPARMOR),y) 30*4882a593SmuzhiyunDOCKER_ENGINE_DEPENDENCIES += libapparmor 31*4882a593SmuzhiyunDOCKER_ENGINE_TAGS += apparmor 32*4882a593Smuzhiyunendif 33*4882a593Smuzhiyun 34*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_LIBSECCOMP),y) 35*4882a593SmuzhiyunDOCKER_ENGINE_TAGS += seccomp 36*4882a593SmuzhiyunDOCKER_ENGINE_DEPENDENCIES += libseccomp 37*4882a593Smuzhiyunendif 38*4882a593Smuzhiyun 39*4882a593Smuzhiyunifeq ($(BR2_INIT_SYSTEMD),y) 40*4882a593SmuzhiyunDOCKER_ENGINE_DEPENDENCIES += systemd 41*4882a593SmuzhiyunDOCKER_ENGINE_TAGS += systemd journald 42*4882a593Smuzhiyunendif 43*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_DOCKER_ENGINE_EXPERIMENTAL),y) 44*4882a593SmuzhiyunDOCKER_ENGINE_TAGS += experimental 45*4882a593Smuzhiyunendif 46*4882a593Smuzhiyun 47*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_DOCKER_ENGINE_DRIVER_BTRFS),y) 48*4882a593SmuzhiyunDOCKER_ENGINE_DEPENDENCIES += btrfs-progs 49*4882a593Smuzhiyunelse 50*4882a593SmuzhiyunDOCKER_ENGINE_TAGS += exclude_graphdriver_btrfs 51*4882a593Smuzhiyunendif 52*4882a593Smuzhiyun 53*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_DOCKER_ENGINE_DRIVER_DEVICEMAPPER),y) 54*4882a593SmuzhiyunDOCKER_ENGINE_DEPENDENCIES += lvm2 55*4882a593Smuzhiyunelse 56*4882a593SmuzhiyunDOCKER_ENGINE_TAGS += exclude_graphdriver_devicemapper 57*4882a593Smuzhiyunendif 58*4882a593Smuzhiyun 59*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_DOCKER_ENGINE_DRIVER_VFS),y) 60*4882a593SmuzhiyunDOCKER_ENGINE_DEPENDENCIES += gvfs 61*4882a593Smuzhiyunelse 62*4882a593SmuzhiyunDOCKER_ENGINE_TAGS += exclude_graphdriver_vfs 63*4882a593Smuzhiyunendif 64*4882a593Smuzhiyun 65*4882a593SmuzhiyunDOCKER_ENGINE_INSTALL_BINS = $(notdir $(DOCKER_ENGINE_BUILD_TARGETS)) 66*4882a593Smuzhiyun 67*4882a593Smuzhiyundefine DOCKER_ENGINE_INSTALL_INIT_SYSTEMD 68*4882a593Smuzhiyun $(INSTALL) -D -m 0644 $(@D)/contrib/init/systemd/docker.service \ 69*4882a593Smuzhiyun $(TARGET_DIR)/usr/lib/systemd/system/docker.service 70*4882a593Smuzhiyun $(INSTALL) -D -m 0644 $(@D)/contrib/init/systemd/docker.socket \ 71*4882a593Smuzhiyun $(TARGET_DIR)/usr/lib/systemd/system/docker.socket 72*4882a593Smuzhiyunendef 73*4882a593Smuzhiyun 74*4882a593Smuzhiyundefine DOCKER_ENGINE_INSTALL_INIT_SYSV 75*4882a593Smuzhiyun $(INSTALL) -D -m 755 package/docker-engine/S60dockerd \ 76*4882a593Smuzhiyun $(TARGET_DIR)/etc/init.d/S60dockerd 77*4882a593Smuzhiyunendef 78*4882a593Smuzhiyun 79*4882a593Smuzhiyundefine DOCKER_ENGINE_USERS 80*4882a593Smuzhiyun - - docker -1 * - - - Docker Application Container Framework 81*4882a593Smuzhiyunendef 82*4882a593Smuzhiyun 83*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_DOCKER_ENGINE_DRIVER_BTRFS),y) 84*4882a593Smuzhiyundefine DOCKER_ENGINE_DRIVER_BTRFS_LINUX_CONFIG_FIXUPS 85*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_BTRFS_FS) 86*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_BTRFS_FS_POSIX_ACL) 87*4882a593Smuzhiyunendef 88*4882a593Smuzhiyunendif 89*4882a593Smuzhiyun 90*4882a593Smuzhiyunifeq ($(BR2_PACKAGE_DOCKER_ENGINE_DRIVER_DEVICEMAPPER),y) 91*4882a593Smuzhiyundefine DOCKER_ENGINE_DRIVER_DM_LINUX_CONFIG_FIXUPS 92*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_MD) 93*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_BLK_DEV_DM) 94*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_MD_THIN_PROVISIONING) 95*4882a593Smuzhiyunendef 96*4882a593Smuzhiyunendif 97*4882a593Smuzhiyun 98*4882a593Smuzhiyun# based on contrib/check-config.sh 99*4882a593Smuzhiyundefine DOCKER_ENGINE_LINUX_CONFIG_FIXUPS 100*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_POSIX_MQUEUE) 101*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_CGROUPS) 102*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_MEMCG) 103*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_CGROUP_SCHED) 104*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_CGROUP_FREEZER) 105*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_CPUSETS) 106*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_CGROUP_DEVICE) 107*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_CGROUP_CPUACCT) 108*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_NAMESPACES) 109*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_UTS_NS) 110*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_IPC_NS) 111*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_PID_NS) 112*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_NET_NS) 113*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_NETFILTER) 114*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_NETFILTER_ADVANCED) 115*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_BRIDGE_NETFILTER) 116*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_NF_CONNTRACK) 117*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_NETFILTER_XTABLES) 118*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_NETFILTER_XT_MATCH_ADDRTYPE) 119*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_NETFILTER_XT_MATCH_CONNTRACK) 120*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_NETFILTER_XT_MATCH_IPVS) 121*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_IP_NF_IPTABLES) 122*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_IP_NF_FILTER) 123*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_IP_NF_NAT) 124*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_IP_NF_TARGET_MASQUERADE) 125*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_BRIDGE) 126*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_NET_CORE) 127*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_DUMMY) 128*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_MACVLAN) 129*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_IPVLAN) 130*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_VXLAN) 131*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_VETH) 132*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_OVERLAY_FS) 133*4882a593Smuzhiyun $(call KCONFIG_ENABLE_OPT,CONFIG_KEYS) 134*4882a593Smuzhiyun $(DOCKER_ENGINE_DRIVER_BTRFS_LINUX_CONFIG_FIXUPS) 135*4882a593Smuzhiyun $(DOCKER_ENGINE_DRIVER_DM_LINUX_CONFIG_FIXUPS) 136*4882a593Smuzhiyunendef 137*4882a593Smuzhiyun 138*4882a593Smuzhiyun$(eval $(golang-package)) 139