From 048e1d2d6380aae6c50b92ed9f863855ddf8823d Mon Sep 17 00:00:00 2001 From: Eneas U de Queiroz Date: Sun, 11 Apr 2021 19:36:16 -0300 Subject: [PATCH 1/2] crun: Don't build on arc The package needs libseccomp, which does not currently support arc. In order to avoid a circular dependency, we must avoid arc here as well. Signed-off-by: Eneas U de Queiroz --- utils/crun/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/utils/crun/Makefile b/utils/crun/Makefile index 4a6b75854..5ba58ec22 100644 --- a/utils/crun/Makefile +++ b/utils/crun/Makefile @@ -26,7 +26,7 @@ define Package/crun CATEGORY:=Utilities TITLE:=crun URL:=https://github.com/containers/crun - DEPENDS:=+libseccomp +libcap + DEPENDS:=@!arc +libseccomp +libcap endef define Package/crun/description From 013b1895ed78c9eeef020bdb53bf2784b8a7374d Mon Sep 17 00:00:00 2001 From: Eneas U de Queiroz Date: Sun, 11 Apr 2021 19:38:50 -0300 Subject: [PATCH 2/2] Revert "libseccomp: don't build on ARC" This reverts commit b29e609701987072fbd991a9ffc203103f99b943. Adding DEPENDS+=@!arc will cause a circular dependency, because some packages select libseccomp based on a build option. Commit e29483d7e ("libseccomp: workaround a recursive dependency") added a workaround that was not properly documented, so I'll explain here. The problem arises when libseccomp is selected depending on some config option: define Pakcage/foo DEPENDS=+FOO_SECCOMP:libseccomp Even if the condition is correctly defined, excluding arc, such as: define Package/foo/config config FOO_SECCOMP depends on !arc the config generator will parse libseccomp's DEPENDS variable and generate menuconfig statements like these: config PACKAGE_foo select PACKAGE_libseccomp if FOO_SECCOMP depends on !FOO_SECCOMP || !arc The last condition is always true because FOO_SECCOMP will always be be false when arc is true. The config generator is not able to simplify/optimize the condition. The circular dependecy occurs because FOO_SECCOMP depends on PACKAGE_foo, and the redundant, always true line will make PACKAGE_foo depend on FOO_SECCOMP. As a workaround, we can add the 'depends on !arc' line to Package/libseccomp/config, outside of the DEPENDS variable, so that the redundant depends line line does not get generated. Signed-off-by: Eneas U de Queiroz Cc: Daniel Golle --- libs/libseccomp/Makefile | 1 - 1 file changed, 1 deletion(-) diff --git a/libs/libseccomp/Makefile b/libs/libseccomp/Makefile index 355841df4..e82ec751b 100644 --- a/libs/libseccomp/Makefile +++ b/libs/libseccomp/Makefile @@ -56,7 +56,6 @@ endef define Package/libseccomp $(call Package/libseccomp/Default) TITLE+= (library) - DEPENDS+= @!arc endef define Package/scmp_sys_resolver