diff mbox

[LEDE-DEV] uhttpd: fix PKG_BUILD_DEPENDS

Message ID 20170622000707.GA1792@makrotopia.org
State Superseded
Headers show

Commit Message

Daniel Golle June 22, 2017, 12:07 a.m. UTC
uhttpd refered to ustream-ssl as PKG_BUILD_DEPENDS. While this
intuitively seems like the correct thing to do, it turns out not to
have the desired effect: PKG_BUILD_DEPENDS needs to list the resulting
package name (ie. one of libustream-*) and not the source package name.
This seems a bit ugly, as PKG_BUILD_DEPENDS should actually really
reference source package names if you asked me.
However, to fix things for now, use libustream-mbedtls to fix
scripts/feeds and parallel builds which otherwise fail to build uhttpd.

Reported-by: Paul Spooren <paul@spooren.de>
Signed-off-by: Daniel Golle <daniel@makrotopia.org>
---
 package/network/services/uhttpd/Makefile | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Jo-Philipp Wich June 22, 2017, 1:01 p.m. UTC | #1
Hi,

that fix seems wrong to me as build depends must specify source packages. This should be solved in buildroot instead.

~ Jo

> Am 22.06.2017 um 02:07 schrieb Daniel Golle <daniel@makrotopia.org>:
> 
> uhttpd refered to ustream-ssl as PKG_BUILD_DEPENDS. While this
> intuitively seems like the correct thing to do, it turns out not to
> have the desired effect: PKG_BUILD_DEPENDS needs to list the resulting
> package name (ie. one of libustream-*) and not the source package name.
> This seems a bit ugly, as PKG_BUILD_DEPENDS should actually really
> reference source package names if you asked me.
> However, to fix things for now, use libustream-mbedtls to fix
> scripts/feeds and parallel builds which otherwise fail to build uhttpd.
> 
> Reported-by: Paul Spooren <paul@spooren.de>
> Signed-off-by: Daniel Golle <daniel@makrotopia.org>
> ---
> package/network/services/uhttpd/Makefile | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/package/network/services/uhttpd/Makefile b/package/network/services/uhttpd/Makefile
> index 3d483b692d..12896a1bb2 100644
> --- a/package/network/services/uhttpd/Makefile
> +++ b/package/network/services/uhttpd/Makefile
> @@ -18,7 +18,7 @@ PKG_MIRROR_HASH:=2ac4ba8dc0b349d72174aac9ff693a73a214295a9890fe3d2a8eedcad54d06e
> PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
> PKG_LICENSE:=ISC
> 
> -PKG_BUILD_DEPENDS = ustream-ssl
> +PKG_BUILD_DEPENDS = libustream-mbedtls
> 
> include $(INCLUDE_DIR)/package.mk
> include $(INCLUDE_DIR)/cmake.mk
> -- 
> 2.13.1
> 
> 
> _______________________________________________
> Lede-dev mailing list
> Lede-dev@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/lede-dev
Daniel Golle June 22, 2017, 1:24 p.m. UTC | #2
On Thu, Jun 22, 2017 at 03:01:10PM +0200, Jo-Philipp Wich wrote:
> Hi,
> 
> that fix seems wrong to me as build depends must specify source packages. This should be solved in buildroot instead.

I fully agree with you :)
So this needs to be addressed in scripts/feeds and scripts/metadata.pm
and probably in more places.
I'm not familiar with Perl at all. Is there Anyone with more insight
into those scripts willing to have a look at the issue?


> 
> ~ Jo
> 
> > Am 22.06.2017 um 02:07 schrieb Daniel Golle <daniel@makrotopia.org>:
> > 
> > uhttpd refered to ustream-ssl as PKG_BUILD_DEPENDS. While this
> > intuitively seems like the correct thing to do, it turns out not to
> > have the desired effect: PKG_BUILD_DEPENDS needs to list the resulting
> > package name (ie. one of libustream-*) and not the source package name.
> > This seems a bit ugly, as PKG_BUILD_DEPENDS should actually really
> > reference source package names if you asked me.
> > However, to fix things for now, use libustream-mbedtls to fix
> > scripts/feeds and parallel builds which otherwise fail to build uhttpd.
> > 
> > Reported-by: Paul Spooren <paul@spooren.de>
> > Signed-off-by: Daniel Golle <daniel@makrotopia.org>
> > ---
> > package/network/services/uhttpd/Makefile | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> > 
> > diff --git a/package/network/services/uhttpd/Makefile b/package/network/services/uhttpd/Makefile
> > index 3d483b692d..12896a1bb2 100644
> > --- a/package/network/services/uhttpd/Makefile
> > +++ b/package/network/services/uhttpd/Makefile
> > @@ -18,7 +18,7 @@ PKG_MIRROR_HASH:=2ac4ba8dc0b349d72174aac9ff693a73a214295a9890fe3d2a8eedcad54d06e
> > PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
> > PKG_LICENSE:=ISC
> > 
> > -PKG_BUILD_DEPENDS = ustream-ssl
> > +PKG_BUILD_DEPENDS = libustream-mbedtls
> > 
> > include $(INCLUDE_DIR)/package.mk
> > include $(INCLUDE_DIR)/cmake.mk
> > -- 
> > 2.13.1
> > 
> > 
> > _______________________________________________
> > Lede-dev mailing list
> > Lede-dev@lists.infradead.org
> > http://lists.infradead.org/mailman/listinfo/lede-dev
> 
> 
> _______________________________________________
> Lede-dev mailing list
> Lede-dev@lists.infradead.org
> http://lists.infradead.org/mailman/listinfo/lede-dev
Matthias Schiffer July 9, 2017, 11:22 p.m. UTC | #3
On 06/22/2017 02:07 AM, Daniel Golle wrote:
> uhttpd refered to ustream-ssl as PKG_BUILD_DEPENDS. While this
> intuitively seems like the correct thing to do, it turns out not to
> have the desired effect: PKG_BUILD_DEPENDS needs to list the resulting
> package name (ie. one of libustream-*) and not the source package name.
> This seems a bit ugly, as PKG_BUILD_DEPENDS should actually really
> reference source package names if you asked me.
> However, to fix things for now, use libustream-mbedtls to fix
> scripts/feeds and parallel builds which otherwise fail to build uhttpd.
> 
> Reported-by: Paul Spooren <paul@spooren.de>
> Signed-off-by: Daniel Golle <daniel@makrotopia.org>

I just checked tmp/.packagedeps on the current master (after deleting and
regenerating tmp) and the dependencies look fine:

> $(curdir)/network/services/uhttpd/compile += $(curdir)/libs/libubox/compile $(curdir)/libs/toolchain/compile $(curdir)/libs/ustream-ssl/compile $(curdir)/system/ubus/compile $(curdir)/utils/lua/compile $(if $(CONFIG_SSP_SUPPORT),$(curdir)/libs/toolchain/compile) $(if $(CONFIG_USE_GLIBC),$(curdir)/libs/toolchain/compile)

$(curdir)/libs/ustream-ssl/compile is correctly listed as a build
dependency without your patch.

Matthias


> ---
>  package/network/services/uhttpd/Makefile | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/package/network/services/uhttpd/Makefile b/package/network/services/uhttpd/Makefile
> index 3d483b692d..12896a1bb2 100644
> --- a/package/network/services/uhttpd/Makefile
> +++ b/package/network/services/uhttpd/Makefile
> @@ -18,7 +18,7 @@ PKG_MIRROR_HASH:=2ac4ba8dc0b349d72174aac9ff693a73a214295a9890fe3d2a8eedcad54d06e
>  PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
>  PKG_LICENSE:=ISC
>  
> -PKG_BUILD_DEPENDS = ustream-ssl
> +PKG_BUILD_DEPENDS = libustream-mbedtls
>  
>  include $(INCLUDE_DIR)/package.mk
>  include $(INCLUDE_DIR)/cmake.mk
>
diff mbox

Patch

diff --git a/package/network/services/uhttpd/Makefile b/package/network/services/uhttpd/Makefile
index 3d483b692d..12896a1bb2 100644
--- a/package/network/services/uhttpd/Makefile
+++ b/package/network/services/uhttpd/Makefile
@@ -18,7 +18,7 @@  PKG_MIRROR_HASH:=2ac4ba8dc0b349d72174aac9ff693a73a214295a9890fe3d2a8eedcad54d06e
 PKG_MAINTAINER:=Felix Fietkau <nbd@nbd.name>
 PKG_LICENSE:=ISC
 
-PKG_BUILD_DEPENDS = ustream-ssl
+PKG_BUILD_DEPENDS = libustream-mbedtls
 
 include $(INCLUDE_DIR)/package.mk
 include $(INCLUDE_DIR)/cmake.mk