diff mbox series

[1/1] package/fontconfig: break circular dependency

Message ID 20201107155250.427556-1-fontaine.fabrice@gmail.com
State Accepted
Headers show
Series [1/1] package/fontconfig: break circular dependency | expand

Commit Message

Fabrice Fontaine Nov. 7, 2020, 3:52 p.m. UTC
Build fails because of the following circular dependency:

fontconfig -> util-linux -> udev -> systemd -> polkit ->
gobject-introspection -> cairo -> fontconfig

which results in the following build failure:

checking for UUID... no
checking where uuid functions comes from... configure: error:
*** uuid is required. install util-linux.

To break it, apply the same ugly workaround that was applied for
libglib2 and cryptsetup until a better solution is found:
https://patchwork.ozlabs.org/project/buildroot/patch/20201101150619.1709959-1-fontaine.fabrice@gmail.com/

Fixes:
 - http://autobuild.buildroot.org/results/2c6ef073e7e98e13daa409e1ea6130e9abd32c87

Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
 package/fontconfig/fontconfig.mk | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Comments

Arnout Vandecappelle Aug. 17, 2021, 7:47 p.m. UTC | #1
On 07/11/2020 16:52, Fabrice Fontaine wrote:
> Build fails because of the following circular dependency:
> 
> fontconfig -> util-linux -> udev -> systemd -> polkit ->
> gobject-introspection -> cairo -> fontconfig
> 
> which results in the following build failure:
> 
> checking for UUID... no
> checking where uuid functions comes from... configure: error:
> *** uuid is required. install util-linux.
> 
> To break it, apply the same ugly workaround that was applied for
> libglib2 and cryptsetup until a better solution is found:
> https://patchwork.ozlabs.org/project/buildroot/patch/20201101150619.1709959-1-fontaine.fabrice@gmail.com/
> 
> Fixes:
>  - http://autobuild.buildroot.org/results/2c6ef073e7e98e13daa409e1ea6130e9abd32c87
> 
> Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>

 I found this old patch because your other fontconfig patch didn't apply... It's
still failing in the autobuilders, so applied to master, thanks.

 I'm not sure if the workaround really needs to be called "ugly". This is what
util-linux-libs is for, right? Perhaps it would be a little cleaner to
unconditionally depend on util-linux-libs instead, but this is fine as well.

 Regards,
 Arnout

> ---
>  package/fontconfig/fontconfig.mk | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/package/fontconfig/fontconfig.mk b/package/fontconfig/fontconfig.mk
> index ee82cc1de3..018a28556e 100644
> --- a/package/fontconfig/fontconfig.mk
> +++ b/package/fontconfig/fontconfig.mk
> @@ -10,7 +10,8 @@ FONTCONFIG_SOURCE = fontconfig-$(FONTCONFIG_VERSION).tar.bz2
>  # 0002-add-pthread-as-a-dependency-of-a-static-lib.patch
>  FONTCONFIG_AUTORECONF = YES
>  FONTCONFIG_INSTALL_STAGING = YES
> -FONTCONFIG_DEPENDENCIES = freetype expat host-pkgconf host-gperf util-linux
> +FONTCONFIG_DEPENDENCIES = freetype expat host-pkgconf host-gperf \
> +	$(if $(BR2_PACKAGE_UTIL_LINUX_LIBS),util-linux-libs,util-linux)
>  HOST_FONTCONFIG_DEPENDENCIES = \
>  	host-freetype host-expat host-pkgconf host-gperf host-util-linux
>  FONTCONFIG_LICENSE = fontconfig license
>
Peter Korsgaard Sept. 4, 2021, 9:37 p.m. UTC | #2
>>>>> "Arnout" == Arnout Vandecappelle <arnout@mind.be> writes:

 > On 07/11/2020 16:52, Fabrice Fontaine wrote:
 >> Build fails because of the following circular dependency:
 >> 
 >> fontconfig -> util-linux -> udev -> systemd -> polkit ->
 >> gobject-introspection -> cairo -> fontconfig
 >> 
 >> which results in the following build failure:
 >> 
 >> checking for UUID... no
 >> checking where uuid functions comes from... configure: error:
 >> *** uuid is required. install util-linux.
 >> 
 >> To break it, apply the same ugly workaround that was applied for
 >> libglib2 and cryptsetup until a better solution is found:
 >> https://patchwork.ozlabs.org/project/buildroot/patch/20201101150619.1709959-1-fontaine.fabrice@gmail.com/
 >> 
 >> Fixes:
 >> - http://autobuild.buildroot.org/results/2c6ef073e7e98e13daa409e1ea6130e9abd32c87
 >> 
 >> Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>

 >  I found this old patch because your other fontconfig patch didn't apply... It's
 > still failing in the autobuilders, so applied to master, thanks.

 >  I'm not sure if the workaround really needs to be called "ugly". This is what
 > util-linux-libs is for, right? Perhaps it would be a little cleaner to
 > unconditionally depend on util-linux-libs instead, but this is fine as well.

Committed to 2021.02.x and 2021.05.x, thanks.
diff mbox series

Patch

diff --git a/package/fontconfig/fontconfig.mk b/package/fontconfig/fontconfig.mk
index ee82cc1de3..018a28556e 100644
--- a/package/fontconfig/fontconfig.mk
+++ b/package/fontconfig/fontconfig.mk
@@ -10,7 +10,8 @@  FONTCONFIG_SOURCE = fontconfig-$(FONTCONFIG_VERSION).tar.bz2
 # 0002-add-pthread-as-a-dependency-of-a-static-lib.patch
 FONTCONFIG_AUTORECONF = YES
 FONTCONFIG_INSTALL_STAGING = YES
-FONTCONFIG_DEPENDENCIES = freetype expat host-pkgconf host-gperf util-linux
+FONTCONFIG_DEPENDENCIES = freetype expat host-pkgconf host-gperf \
+	$(if $(BR2_PACKAGE_UTIL_LINUX_LIBS),util-linux-libs,util-linux)
 HOST_FONTCONFIG_DEPENDENCIES = \
 	host-freetype host-expat host-pkgconf host-gperf host-util-linux
 FONTCONFIG_LICENSE = fontconfig license