[meta-virtualization] [PATCH V2 2/2] runc: add PACKAGECONFIG to allow building as static or not
Bruce Ashfield
bruce.ashfield at gmail.com
Tue Aug 6 19:52:45 PDT 2019
This looks better!
I'm traveling at the moment, and can't test this for a few days, so it will
be later this week, or early next before I can merge it. (Same comment
applies to the k8s patch).
Bruce
On Tue, Aug 6, 2019 at 10:15 PM Chen Qi <Qi.Chen at windriver.com> wrote:
> Add a new PACKAGECONFIG, static, which when enabled will build
> runc as static. Default to enable it.
>
> We need this because we should allow users to build runc as not
> static so that when docker's cgroup driver is set to systemd,
> we don't get error.
>
> Signed-off-by: Chen Qi <Qi.Chen at windriver.com>
> ---
> ...-GOBUILDFLAGS-for-runc-and-remove-re.patch | 35 +++++++++++++++++++
> ...ld-drop-recvtty-and-use-GOBUILDFLAGS.patch | 22 ------------
> recipes-containers/runc/runc-docker_git.bb | 2 +-
> .../runc/runc-opencontainers_git.bb | 1 +
> recipes-containers/runc/runc.inc | 10 ++++--
> 5 files changed, 45 insertions(+), 25 deletions(-)
> create mode 100644
> recipes-containers/runc/files/0001-Makefile-respect-GOBUILDFLAGS-for-runc-and-remove-re.patch
> delete mode 100644
> recipes-containers/runc/runc-docker/0001-build-drop-recvtty-and-use-GOBUILDFLAGS.patch
>
> diff --git
> a/recipes-containers/runc/files/0001-Makefile-respect-GOBUILDFLAGS-for-runc-and-remove-re.patch
> b/recipes-containers/runc/files/0001-Makefile-respect-GOBUILDFLAGS-for-runc-and-remove-re.patch
> new file mode 100644
> index 0000000..94cbb4c
> --- /dev/null
> +++
> b/recipes-containers/runc/files/0001-Makefile-respect-GOBUILDFLAGS-for-runc-and-remove-re.patch
> @@ -0,0 +1,35 @@
> +From d2c47a973f354ffd505bb4e809c59e57b543726d Mon Sep 17 00:00:00 2001
> +From: Chen Qi <Qi.Chen at windriver.com>
> +Date: Tue, 6 Aug 2019 19:01:45 +0800
> +Subject: [PATCH] Makefile: respect GOBUILDFLAGS for runc and remove
> recvtty
> + from static
> +
> +Signed-off-by: Chen Qi <Qi.Chen at windriver.com>
> +---
> + Makefile | 3 +--
> + 1 file changed, 1 insertion(+), 2 deletions(-)
> +
> +diff --git a/Makefile b/Makefile
> +index 0f26a1c8..a0c6b40b 100644
> +--- a/src/import/Makefile
> ++++ b/src/import/Makefile
> +@@ -30,7 +30,7 @@ SHELL := $(shell command -v bash 2>/dev/null)
> + .DEFAULT: runc
> +
> + runc: $(SOURCES)
> +- $(GO) build -buildmode=pie $(EXTRA_FLAGS) -ldflags "-X
> main.gitCommit=${COMMIT} -X main.version=${VERSION} $(EXTRA_LDFLAGS)" -tags
> "$(BUILDTAGS)" -o runc .
> ++ $(GO) build $(GOBUILDFLAGS) $(EXTRA_FLAGS) -ldflags "-X
> main.gitCommit=${COMMIT} -X main.version=${VERSION} $(EXTRA_LDFLAGS)" -tags
> "$(BUILDTAGS)" -o runc .
> +
> + all: runc recvtty
> +
> +@@ -41,7 +41,6 @@ contrib/cmd/recvtty/recvtty: $(SOURCES)
> +
> + static: $(SOURCES)
> + CGO_ENABLED=1 $(GO) build $(EXTRA_FLAGS) -tags "$(BUILDTAGS) netgo
> osusergo static_build" -installsuffix netgo -ldflags "-w -extldflags
> -static -X main.gitCommit=${COMMIT} -X main.version=${VERSION}
> $(EXTRA_LDFLAGS)" -o runc .
> +- CGO_ENABLED=1 $(GO) build $(EXTRA_FLAGS) -tags "$(BUILDTAGS) netgo
> osusergo static_build" -installsuffix netgo -ldflags "-w -extldflags
> -static -X main.gitCommit=${COMMIT} -X main.version=${VERSION}
> $(EXTRA_LDFLAGS)" -o contrib/cmd/recvtty/recvtty ./contrib/cmd/recvtty
> +
> + release:
> + script/release.sh -r release/$(VERSION) -v $(VERSION)
> +--
> +2.17.1
> +
> diff --git
> a/recipes-containers/runc/runc-docker/0001-build-drop-recvtty-and-use-GOBUILDFLAGS.patch
> b/recipes-containers/runc/runc-docker/0001-build-drop-recvtty-and-use-GOBUILDFLAGS.patch
> deleted file mode 100644
> index 9ba9957..0000000
> ---
> a/recipes-containers/runc/runc-docker/0001-build-drop-recvtty-and-use-GOBUILDFLAGS.patch
> +++ /dev/null
> @@ -1,22 +0,0 @@
> -From a9a2b9e72027d0b2357f6dfe8b154762aaa8dd02 Mon Sep 17 00:00:00 2001
> -From: Bruce Ashfield <bruce.ashfield at windriver.com>
> -Date: Thu, 19 Apr 2018 16:39:41 -0400
> -Subject: [PATCH] build: drop recvtty and use GOBUILDFLAGS
> -
> -Signed-off-by: Bruce Ashfield <bruce.ashfield at windriver.com>
> ----
> - Makefile | 3 +--
> - 1 file changed, 1 insertion(+), 2 deletions(-)
> -
> -Index: git/src/import/Makefile
> -===================================================================
> ---- git.orig/src/import/Makefile
> -+++ git/src/import/Makefile
> -@@ -41,7 +41,6 @@
> -
> - static: $(SOURCES)
> - CGO_ENABLED=1 $(GO) build $(EXTRA_FLAGS) -tags "$(BUILDTAGS) netgo
> osusergo static_build" -installsuffix netgo -ldflags "-w -extldflags
> -static -X main.gitCommit=${COMMIT} -X main.version=${VERSION}
> $(EXTRA_LDFLAGS)" -o runc .
> -- CGO_ENABLED=1 $(GO) build $(EXTRA_FLAGS) -tags "$(BUILDTAGS) netgo
> osusergo static_build" -installsuffix netgo -ldflags "-w -extldflags
> -static -X main.gitCommit=${COMMIT} -X main.version=${VERSION}
> $(EXTRA_LDFLAGS)" -o contrib/cmd/recvtty/recvtty ./contrib/cmd/recvtty
> -
> - release:
> - script/release.sh -r release/$(VERSION) -v $(VERSION)
> diff --git a/recipes-containers/runc/runc-docker_git.bb
> b/recipes-containers/runc/runc-docker_git.bb
> index 2bf6222..c9f460b 100644
> --- a/recipes-containers/runc/runc-docker_git.bb
> +++ b/recipes-containers/runc/runc-docker_git.bb
> @@ -5,7 +5,7 @@ include runc.inc
> SRCREV_runc-docker = "425e105d5a03fabd737a126ad93d62a9eeede87f"
> SRC_URI = "git://
> github.com/opencontainers/runc;nobranch=1;name=runc-docker \
> file://0001-runc-Add-console-socket-dev-null.patch \
> - file://0001-build-drop-recvtty-and-use-GOBUILDFLAGS.patch \
> +
> file://0001-Makefile-respect-GOBUILDFLAGS-for-runc-and-remove-re.patch \
> file://0001-runc-docker-SIGUSR1-daemonize.patch \
> "
>
> diff --git a/recipes-containers/runc/runc-opencontainers_git.bb
> b/recipes-containers/runc/runc-opencontainers_git.bb
> index 76ab794..361bc94 100644
> --- a/recipes-containers/runc/runc-opencontainers_git.bb
> +++ b/recipes-containers/runc/runc-opencontainers_git.bb
> @@ -3,5 +3,6 @@ include runc.inc
> SRCREV = "652297c7c7e6c94e8d064ad5916c32891a6fd388"
> SRC_URI = " \
> git://github.com/opencontainers/runc;branch=master \
> +
> file://0001-Makefile-respect-GOBUILDFLAGS-for-runc-and-remove-re.patch \
> "
> RUNC_VERSION = "1.0.0-rc8"
> diff --git a/recipes-containers/runc/runc.inc
> b/recipes-containers/runc/runc.inc
> index 46fd09d..41ea41b 100644
> --- a/recipes-containers/runc/runc.inc
> +++ b/recipes-containers/runc/runc.inc
> @@ -14,8 +14,10 @@ inherit go
> inherit goarch
> inherit pkgconfig
>
> -PACKAGECONFIG ??= ""
> +PACKAGECONFIG ??= "static"
> PACKAGECONFIG[seccomp] = "seccomp,,libseccomp"
> +# This PACKAGECONFIG serves the purpose of whether building runc as
> static or not
> +PACKAGECONFIG[static] = ""
>
> PROVIDES += "virtual/runc"
> RPROVIDES_${PN} = "virtual/runc"
> @@ -54,7 +56,11 @@ do_compile() {
> export CFLAGS=""
> export LDFLAGS=""
>
> - oe_runmake static
> + if ${@bb.utils.contains('PACKAGECONFIG', 'static', 'true',
> 'false', d)}; then
> + oe_runmake static
> + else
> + oe_runmake runc
> + fi
> }
>
> do_install() {
> --
> 2.17.1
>
> --
> _______________________________________________
> meta-virtualization mailing list
> meta-virtualization at yoctoproject.org
> https://lists.yoctoproject.org/listinfo/meta-virtualization
>
--
- Thou shalt not follow the NULL pointer, for chaos and madness await thee
at its end
- "Use the force Harry" - Gandalf, Star Trek II
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.yoctoproject.org/pipermail/meta-virtualization/attachments/20190806/a2937cb0/attachment-0001.html>
More information about the meta-virtualization
mailing list