[meta-virtualization] [PATCH] netns: New recipe
Paul Barker
paul at paulbarker.me.uk
Sun Jun 19 01:48:46 PDT 2016
netns is a runc hook for setting up simple bridge networking within containers.
See README.md (or https://github.com/jfrazelle/netns/blob/master/README.md) for
instructions on how to use netns.
Signed-off-by: Paul Barker <paul at paulbarker.me.uk>
---
recipes-networking/netns/netns_git.bb | 44 +++++++++++++++++++++++++++++++++++
1 file changed, 44 insertions(+)
create mode 100644 recipes-networking/netns/netns_git.bb
diff --git a/recipes-networking/netns/netns_git.bb b/recipes-networking/netns/netns_git.bb
new file mode 100644
index 0000000..073022e
--- /dev/null
+++ b/recipes-networking/netns/netns_git.bb
@@ -0,0 +1,44 @@
+HOMEPAGE = "https://github.com/jfrazelle/netns"
+SUMMARY = "Runc hook for setting up default bridge networking."
+LICENSE = "MIT"
+LIC_FILES_CHKSUM = "file://LICENSE;md5=20ce4c6a4f32d6ee4a68e3a7506db3f1"
+DEPENDS = "go-cross"
+
+SRC_URI = "git://github.com/jfrazelle/netns;branch=master"
+SRCREV = "2804050eeab661bfa75c3aa06bdcf60273b02ca7"
+PV = "0.1.0+git${SRCPV}"
+
+S = "${WORKDIR}/git"
+
+inherit go-osarchmap
+
+do_compile() {
+ export GOARCH="${TARGET_GOARCH}"
+
+ # Setup vendor directory so that it can be used in GOPATH.
+ #
+ # Go looks in a src directory under any directory in GOPATH but netns
+ # uses 'vendor' instead of 'vendor/src'. We can fix this with a symlink.
+ #
+ # We also need to link in the ipallocator directory as that is not under
+ # a src directory.
+ ln -sfn . "${S}/vendor/src"
+ mkdir -p "${S}/vendor/src/github.com/jfrazelle/netns"
+ ln -sfn "${S}/ipallocator" "${S}/vendor/src/github.com/jfrazelle/netns/ipallocator"
+ export GOPATH="${S}/vendor"
+
+ # Pass the needed cflags/ldflags so that cgo
+ # can find the needed headers files and libraries
+ export CGO_ENABLED="1"
+ export CFLAGS=""
+ export LDFLAGS=""
+ export CGO_CFLAGS="${BUILDSDK_CFLAGS} --sysroot=${STAGING_DIR_TARGET}"
+ export CGO_LDFLAGS="${BUILDSDK_LDFLAGS} --sysroot=${STAGING_DIR_TARGET}"
+
+ oe_runmake static
+}
+
+do_install() {
+ install -d ${D}/${sbindir}
+ install ${S}/netns ${D}/${sbindir}/netns
+}
--
2.1.4
More information about the meta-virtualization
mailing list