[OpenWrt-Devel] [PATCH 1/2] scripts: fix recursive dependencies that might be caused by using conditional dependencies.

Yousong Zhou yszhou4tech at gmail.com
Tue Dec 23 08:16:47 EST 2014


On 22 December 2014 at 18:29, Yousong Zhou <yszhou4tech at gmail.com> wrote:
> `kmod-ipt-ipset' has a `DEPENDS' value of `@(!(TARGET_ps3||TARGET_pxcab)||BROKEN)'.
> Recursive dependency will occur if another package conditionally depends
> on it with something like `+PACKAGE_dnsmasq_full_ipset:kmod-ipt-ipset'
> which will produce the following kconfig content.
>
>         config PACKAGE_dnsmasq-full
>                 ...
>                 depends on !(PACKAGE_dnsmasq_full_ipset) || (!(TARGET_ps3||TARGET_pxcab)||BROKEN)
>
>                 if PACKAGE_dnsmasq-full
>                 ...
>                 config PACKAGE_dnsmasq_full_ipset
>                         bool "Build with ipset support."
>                         default y
>                 ...
>                 endif
>
> And mconf will complain with
>
>         tmp/.config-package.in:127:error: recursive dependency detected!
>         tmp/.config-package.in:127:     symbol PACKAGE_dnsmasq-full depends on PACKAGE_dnsmasq_full_ipset
>         tmp/.config-package.in:157:     symbol PACKAGE_dnsmasq_full_ipset depends on PACKAGE_dnsmasq-full
>

Hmm, I think the generated Kconfig and complaints emitted by mconf are fine.

I tried to move the selection of libnettle to
Package/dnsmasq-full/config, but that made the build system Error'ed
with the following.

    Package dnsmasq-full is missing dependencies for the following libraries:
    libgmp.so.10
    libhogweed.so.2
    libnettle.so.4
    make[2]: ***
[/home/yousong/trunk-openwrt/bin/ar71xx/packages/base/dnsmasq-full_2.72-2_ar71xx.ipk]
Error 1

The build system may need some change to accommodate such conditions.
But we can work around the problem for now by removing ipset's
dependency on TARGET_{ps3,pxcab} as they were obsolete for quite a
while.

Regards

               yousong
_______________________________________________
openwrt-devel mailing list
openwrt-devel at lists.openwrt.org
https://lists.openwrt.org/cgi-bin/mailman/listinfo/openwrt-devel



More information about the openwrt-devel mailing list