Browse Source

Revert "libseccomp: don't build on ARC"

This reverts commit b29e609701.

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 <cotequeiroz@gmail.com>
Cc: Daniel Golle <daniel@makrotopia.org>
lilik-openwrt-22.03
Eneas U de Queiroz 4 years ago
parent
commit
013b1895ed
No known key found for this signature in database GPG Key ID: 5FB9FAF260B80AEA
1 changed files with 0 additions and 1 deletions
  1. +0
    -1
      libs/libseccomp/Makefile

+ 0
- 1
libs/libseccomp/Makefile View File

@ -56,7 +56,6 @@ endef
define Package/libseccomp define Package/libseccomp
$(call Package/libseccomp/Default) $(call Package/libseccomp/Default)
TITLE+= (library) TITLE+= (library)
DEPENDS+= @!arc
endef endef
define Package/scmp_sys_resolver define Package/scmp_sys_resolver


Loading…
Cancel
Save