From 2bfe9295be04bce32fad0e0c963caacfd95f92a0 Mon Sep 17 00:00:00 2001 From: Geoff Levand Date: Mon, 4 Apr 2016 19:31:49 +0000 Subject: [PATCH] flannel: new package Flannel is a virtual network that gives a subnet to each host for use with container runtimes. Cc: Brandon Philips Signed-off-by: Geoff Levand [Thomas: - Don't select BR2_PACKAGE_HOST_GO since this option was removed. - Take into account the rename of BR2_PACKAGE_GO_ARCH_SUPPORTS to BR2_PACKAGE_HOST_GO_ARCH_SUPPORTS. - Rewrap Config.in help text, it was slightly too large. - Don't use the github function (the link was anyway incorrect), but instead a direct link to the tarball, since the tarballs are uploaded by the maintainers. - Update the hash accordingly. - Use $() to reference make variables and not ${}. - Call the go compiler from $(HOST_DIR)/usr/bin, rather than from HOST_GO_ROOT.] Signed-off-by: Thomas Petazzoni --- package/Config.in | 1 + package/flannel/Config.in | 8 +++++++ package/flannel/flannel.hash | 2 ++ package/flannel/flannel.mk | 43 ++++++++++++++++++++++++++++++++++++ 4 files changed, 54 insertions(+) create mode 100644 package/flannel/Config.in create mode 100644 package/flannel/flannel.hash create mode 100644 package/flannel/flannel.mk diff --git a/package/Config.in b/package/Config.in index ecaf1645b7..5103621512 100644 --- a/package/Config.in +++ b/package/Config.in @@ -1380,6 +1380,7 @@ endif source "package/faifa/Config.in" source "package/fastd/Config.in" source "package/fcgiwrap/Config.in" + source "package/flannel/Config.in" source "package/fmc/Config.in" source "package/fping/Config.in" source "package/freeswitch/Config.in" diff --git a/package/flannel/Config.in b/package/flannel/Config.in new file mode 100644 index 0000000000..c6a84ef148 --- /dev/null +++ b/package/flannel/Config.in @@ -0,0 +1,8 @@ +config BR2_PACKAGE_FLANNEL + bool "flannel" + depends on BR2_PACKAGE_HOST_GO_ARCH_SUPPORTS + help + Flannel is a virtual network that gives a subnet to each + host for use with container runtimes. + + https://github.com/coreos/flannel diff --git a/package/flannel/flannel.hash b/package/flannel/flannel.hash new file mode 100644 index 0000000000..3e0b25cb4d --- /dev/null +++ b/package/flannel/flannel.hash @@ -0,0 +1,2 @@ +# Locally computed: +sha256 dbbcb08c0e70713b0c920387a9967e5b30ef833c8118c847edbbca4f68ff0562 v0.5.5.tar.gz diff --git a/package/flannel/flannel.mk b/package/flannel/flannel.mk new file mode 100644 index 0000000000..876efe69a7 --- /dev/null +++ b/package/flannel/flannel.mk @@ -0,0 +1,43 @@ +################################################################################ +# +# flannel +# +################################################################################ + +FLANNEL_VERSION = v0.5.5 +FLANNEL_SITE = https://github.com/coreos/flannel/archive +FLANNEL_SOURCE = $(FLANNEL_VERSION).tar.gz + +FLANNEL_LICENSE = Apache-2.0 +FLANNEL_LICENSE_FILES = LICENSE + +FLANNEL_DEPENDENCIES = host-go + +FLANNEL_MAKE_ENV = \ + GOBIN="$(@D)/bin" \ + GOPATH="$(@D)/gopath" \ + GOARCH=$(GO_GOARCH) \ + CGO_ENABLED=1 + +FLANNEL_GLDFLAGS = \ + -X github.com/coreos/flannel/version.Version=$(FLANNEL_VERSION) \ + -extldflags '-static' + +define FLANNEL_CONFIGURE_CMDS + # Put sources at prescribed GOPATH location. + mkdir -p $(@D)/gopath/src/github.com/coreos + ln -s $(@D) $(@D)/gopath/src/github.com/coreos/flannel +endef + +define FLANNEL_BUILD_CMDS + cd $(@D) && $(FLANNEL_MAKE_ENV) $(HOST_DIR)/usr/bin/go \ + build -v -o $(@D)/bin/flanneld -ldflags "$(FLANNEL_GLDFLAGS)" . +endef + +define FLANNEL_INSTALL_TARGET_CMDS + # Install flannel to its well known location. + $(INSTALL) -D -m 0755 $(@D)/bin/flanneld $(TARGET_DIR)/opt/bin/flanneld + $(INSTALL) -D -m 0755 $(@D)/dist/mk-docker-opts.sh $(TARGET_DIR)/opt/bin/mk-docker-opts.sh +endef + +$(eval $(generic-package)) -- 2.30.2