Skip to contentSkip to conversation

Fix a few unmet dependencies (branch yem/unmet-deps)

PATCH New Yann E. MORIN 3 participants 8 messages Sep 11, 2016

lore
Share & tools
lore
#0 lore raw

cover Fix a few unmet dependencies (branch yem/unmet-deps)

Hello All!

This series fixes a few unmet direct dependencies, like so:

warning: (BR2_INIT_SYSTEMD) selects BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW which has unmet direct dependencies (BR2_ROOTFS_SKELETON_DEFAULT)

However, there is one such unmet direct dependency I was not able to understand (with this series already applied):

    $ make KCONFIG_SEED=0x9F309288 randconfig
    warning: (BR2_PACKAGE_OPENCV_WITH_GSTREAMER && BR2_PACKAGE_OPENCV3_WITH_GSTREAMER)
    selects BR2_PACKAGE_GST_PLUGINS_BASE which has unmet direct dependencies
    (BR2_PACKAGE_GSTREAMER)
    warning: (BR2_PACKAGE_FREERDP_GSTREAMER && BR2_PACKAGE_QT_WEBKIT &&
    BR2_PACKAGE_OPENCV_WITH_GSTREAMER && BR2_PACKAGE_OPENCV3_WITH_GSTREAMER) selects
    BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_APP which has unmet direct dependencies
    (BR2_PACKAGE_GSTREAMER && BR2_PACKAGE_GST_PLUGINS_BASE)

As far as I can see, the dependencies of gstreamer and gst-plugins-base *are* properly propagated to the offending packages. I think I'm gonna loose my sanity on that one... :-/ If any one feels adventurous...

Regards,
Yann E. MORIN.

The following changes since commit f4918b3a7424bedb0eddf56c713298a78c1160d2

package/x11r7/xserver_xorg-server: glamor depends on libgl (2016-09-08 23:11:05 +0200)

are available in the git repository at:

git://git.buildroot.org/~ymorin/git/buildroot.git

for you to fetch changes up to ff633ea671d650a4be16ff4468579043a5c6e523

system: fix unmet dependencies (2016-09-11 14:33:46 +0200)

----------------------------------------------------------------
Yann E. MORIN (4):
linux/ext: fix Xenomai unmet dependencies package/docker-engine: fix unmet dependencies package/weston: fix unmet dependencies
system: fix unmet dependencies

 linux/Config.ext.in             | 18 ++++++++++--------
 package/docker-engine/Config.in |  1 +
 package/weston/Config.in        |  9 +++++----
 system/Config.in                |  2 +-
 4 files changed, 17 insertions(+), 13 deletions(-)
Signature · 6 lines
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'
#1 lore raw

PATCH 1/4 linux/ext: fix Xenomai unmet dependencies

Properly propagate the Xenomai dependencies to the kernelexternsion, to fix the following unmet dependencies:

warning: (BR2_LINUX_KERNEL_EXT_XENOMAI) selects BR2_PACKAGE_XENOMAI which has unmet direct dependencies (BR2_PACKAGE_XENOMAI_ARCH_SUPPORTS && BR2_TOOLCHAIN_HAS_THREADS && !BR2_TOOLCHAIN_USES_MUSL)

While at it, move the comment lower, after the path option, so that the path option is properly indented in the menuconfig.

Add markers to separate each extension.

---
 linux/Config.ext.in | 18 ++++++++++--------
 1 file changed, 10 insertions(+), 8 deletions(-)
linux/Config.ext.in +10 -8
index 755c23b..da1ebd2 100644
@@ -1,11 +1,12 @@
 menu "Linux Kernel Extensions"
 
+#-------------------------------------------------------------------------------
 # Xenomai
 config BR2_LINUX_KERNEL_EXT_XENOMAI
 	bool "Adeos/Xenomai Real-time patch"
+	depends on BR2_PACKAGE_XENOMAI_ARCH_SUPPORTS
 	depends on BR2_TOOLCHAIN_HAS_THREADS
-	depends on BR2_i386 || BR2_x86_64 || BR2_arm || \
-		   BR2_bfin || BR2_powerpc || BR2_sh4
+	depends on !BR2_TOOLCHAIN_USES_MUSL
 	select BR2_PACKAGE_XENOMAI
 	help
 	  Xenomai is split in two parts: a kernel part and a userspace
@@ -24,19 +25,19 @@ config BR2_LINUX_KERNEL_EXT_XENOMAI
 	  Xenomai is know to support Blackfin, SH4, x86, ARM, NIOS2
 	  and PowerPC architectures.
 
-comment "xenomai needs a toolchain w/ threads"
-	depends on BR2_i386 || BR2_x86_64 || BR2_arm || \
-		   BR2_bfin || BR2_powerpc || BR2_sh4
-	depends on !BR2_TOOLCHAIN_HAS_THREADS
-
 config BR2_LINUX_KERNEL_EXT_XENOMAI_ADEOS_PATCH
-	depends on BR2_LINUX_KERNEL_EXT_XENOMAI
 	string "Path for Adeos patch file"
+	depends on BR2_LINUX_KERNEL_EXT_XENOMAI
 	help
 	  Optionally, explicitly specify the Adeos patch to use.
 	  Download it at http://download.gna.org/adeos/patches
 	  and verify that your kernel version in buildroot matches.
 
+comment "xenomai needs a uClibc or glibc toolchain w/ threads"
+	depends on BR2_PACKAGE_XENOMAI_ARCH_SUPPORTS
+	depends on !BR2_TOOLCHAIN_HAS_THREADS || BR2_TOOLCHAIN_USES_MUSL
+
+#-------------------------------------------------------------------------------
 # RTAI
 config BR2_LINUX_KERNEL_EXT_RTAI
 	bool "RTAI Real-time patch"
@@ -44,6 +45,7 @@ config BR2_LINUX_KERNEL_EXT_RTAI
 	help
 	  RTAI Kernel part.
 
+#-------------------------------------------------------------------------------
 # fbtft
 config BR2_LINUX_KERNEL_EXT_FBTFT
 	bool "FB TFT drivers"
Signature · 1 line
2.7.4
#2 lore raw

PATCH 2/4 package/docker-engine: fix unmet dependencies

In reply to Yann E. MORIN

Properly propagate dependencies from docker-containerd to fix the following unmet dependencies:

    warning: (BR2_PACKAGE_DOCKER_ENGINE_DAEMON) selects
    BR2_PACKAGE_DOCKER_CONTAINERD which has unmet direct dependencies
    (BR2_PACKAGE_HOST_GO_ARCH_SUPPORTS &&
    BR2_PACKAGE_HOST_GO_CGO_LINKING_SUPPORTS && BR2_TOOLCHAIN_HAS_THREADS &&
    BR2_USE_MMU && BR2_USE_WCHAR)
---
 package/docker-engine/Config.in | 1 +
 1 file changed, 1 insertion(+)
package/docker-engine/Config.in +1 -0
index a22786a..b9b9aac 100644
@@ -13,6 +13,7 @@ if BR2_PACKAGE_DOCKER_ENGINE
 
 config BR2_PACKAGE_DOCKER_ENGINE_DAEMON
 	bool "docker daemon"
+	depends on BR2_USE_MMU # docker-containerd
 	depends on BR2_USE_WCHAR # docker-containerd
 	select BR2_PACKAGE_DOCKER_CONTAINERD # runtime dependency
 	select BR2_PACKAGE_SQLITE # runtime dependency
Signature · 1 line
2.7.4
#3 lore raw

PATCH 3/4 package/weston: fix unmet dependencies

In reply to Yann E. MORIN

Properly propagate dependencies from freerdp to fix the following unmet dependencies:

    warning: (BR2_PACKAGE_WESTON_RDP) selects BR2_PACKAGE_FREERDP which has
    unmet direct dependencies (BR2_INSTALL_LIBSTDCPP && BR2_USE_WCHAR &&
    !BR2_STATIC_LIBS && BR2_TOOLCHAIN_HAS_THREADS && BR2_USE_MMU &&
    BR2_TOOLCHAIN_HAS_SYNC_4)

Reorder deps to have architectures deps first.

Remove "broken" dependency from comment; add missing ones.

---
 package/weston/Config.in | 9 +++++----
 1 file changed, 5 insertions(+), 4 deletions(-)
package/weston/Config.in +5 -4
index c1eb7da..6baa24b 100644
@@ -53,9 +53,10 @@ config BR2_PACKAGE_WESTON_FBDEV
 # FreeRDP needs threads and !static, already the case for weston
 config BR2_PACKAGE_WESTON_RDP
 	bool "RDP compositor"
-	depends on BR2_USE_WCHAR # freerdp
 	depends on BR2_USE_MMU # freerdp, libglib2
 	depends on BR2_TOOLCHAIN_HAS_SYNC_4
+	depends on BR2_USE_WCHAR # freerdp
+	depends on BR2_INSTALL_LIBSTDCPP # freerdp
 	select BR2_PACKAGE_FREERDP
 	select BR2_PACKAGE_WESTON_HAS_COMPOSITOR
 	help
@@ -71,10 +72,10 @@ config BR2_PACKAGE_WESTON_RDP
 	  so you may want to change them in a post-build script or a rootfs
 	  overlay.
 
-comment "RDP compositor needs a toolchain w/ wchar"
-	depends on BROKEN # needs FreeRDP master
+comment "RDP compositor needs a toolchain w/ wchar, C++"
+	depends on BR2_USE_MMU
 	depends on BR2_TOOLCHAIN_HAS_SYNC_4
-	depends on !BR2_USE_WCHAR
+	depends on !BR2_USE_WCHAR || !BR2_INSTALL_LIBSTDCPP
 
 # rpi-userland is an EGL/GLES provider, so we can't select it
 config BR2_PACKAGE_WESTON_RPI
Signature · 1 line
2.7.4
#4 lore raw

PATCH 4/4 system: fix unmet dependencies

In reply to Yann E. MORIN

Don't force remounting / read/write when using a customskeleton and systemd as init system, to fix the following unmet dependencies:

warning: (BR2_INIT_SYSTEMD) selects BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW which has unmet direct dependencies (BR2_ROOTFS_SKELETON_DEFAULT)

---
 system/Config.in | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
system/Config.in +1 -1
index 353421a..77c665b 100644
@@ -127,7 +127,7 @@ config BR2_INIT_SYSTEMD
 	depends on BR2_TOOLCHAIN_HEADERS_AT_LEAST_3_10
 	select BR2_ROOTFS_MERGED_USR
 	select BR2_PACKAGE_SYSTEMD
-	select BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW
+	select BR2_TARGET_GENERIC_REMOUNT_ROOTFS_RW if BR2_ROOTFS_SKELETON_DEFAULT
 
 comment "systemd needs a glibc toolchain, headers >= 3.10"
 	depends on !(BR2_TOOLCHAIN_USES_GLIBC \
Signature · 1 line
2.7.4
#5 lore raw

cover Fix a few unmet dependencies (branch yem/unmet-deps)

In reply to Yann E. MORIN

Hello,

Quoted 12 lines · Yann E. MORIN

However, there is one such unmet direct dependency I was not able to understand (with this series already applied):

    $ make KCONFIG_SEED=0x9F309288 randconfig
    warning: (BR2_PACKAGE_OPENCV_WITH_GSTREAMER && BR2_PACKAGE_OPENCV3_WITH_GSTREAMER)
    selects BR2_PACKAGE_GST_PLUGINS_BASE which has unmet direct dependencies
    (BR2_PACKAGE_GSTREAMER)
    warning: (BR2_PACKAGE_FREERDP_GSTREAMER && BR2_PACKAGE_QT_WEBKIT &&
    BR2_PACKAGE_OPENCV_WITH_GSTREAMER && BR2_PACKAGE_OPENCV3_WITH_GSTREAMER) selects
    BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_APP which has unmet direct dependencies
    (BR2_PACKAGE_GSTREAMER && BR2_PACKAGE_GST_PLUGINS_BASE)
Quoted 3 lines

As far as I can see, the dependencies of gstreamer and gst-plugins-base *are* properly propagated to the offending packages. I think I'm gonna loose my sanity on that one... :-/ If any one feels adventurous...

Do you have some sample .config that exhibits those problems? I had a quick look, and it indeed seems weird. opencv is select both gstreamer and gst-plugins-base, so I don't see why the dependency of gst-plugins-base on gstreamer is a problem.

Quoted 4 lines

linux/ext: fix Xenomai unmet dependencies package/docker-engine: fix unmet dependencies package/weston: fix unmet dependencies
system: fix unmet dependencies

All applied, thanks!

Thomas

Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons
Embedded Linux and Kernel engineering
http://free-electrons.com
#6 lore raw

cover Fix a few unmet dependencies (branch yem/unmet-deps)

Thomas, All,

On 2016-09-11 15:49 +0200, Thomas Petazzoni spake thusly:

Quoted 13 lines · Yann E. MORIN
Quoted 12 lines

However, there is one such unmet direct dependency I was not able to understand (with this series already applied):

    $ make KCONFIG_SEED=0x9F309288 randconfig
    warning: (BR2_PACKAGE_OPENCV_WITH_GSTREAMER && BR2_PACKAGE_OPENCV3_WITH_GSTREAMER)
    selects BR2_PACKAGE_GST_PLUGINS_BASE which has unmet direct dependencies
    (BR2_PACKAGE_GSTREAMER)
    warning: (BR2_PACKAGE_FREERDP_GSTREAMER && BR2_PACKAGE_QT_WEBKIT &&
    BR2_PACKAGE_OPENCV_WITH_GSTREAMER && BR2_PACKAGE_OPENCV3_WITH_GSTREAMER) selects
    BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_APP which has unmet direct dependencies
    (BR2_PACKAGE_GSTREAMER && BR2_PACKAGE_GST_PLUGINS_BASE)
Quoted 5 lines
Quoted 3 lines

As far as I can see, the dependencies of gstreamer and gst-plugins-base *are* properly propagated to the offending packages. I think I'm gonna loose my sanity on that one... :-/ If any one feels adventurous...

Do you have some sample .config that exhibits those problems?

As explained above, just run:

    make KCONFIG_SEED=0x9F309288 randconfig

But it may no longer work, since the set of options has changed now. You can reproduce it with:

    $ git checkout f4918b3a
    $ make KCONFIG_SEED=0x9F309288 randconfig

(f4918b3a is master before you applied the last few patches changing the set of options).

Quoted 4 lines

I had a
quick look, and it indeed seems weird. opencv is select both gstreamer and gst-plugins-base, so I don't see why the dependency of gst-plugins-base on gstreamer is a problem.

Neither do I.

And if you run "make olddefconfig" there is no error anymore... :-/

Regards,
Yann E. MORIN.

Signature · 6 lines
.-----------------.--------------------.------------------.--------------------.
|  Yann E. MORIN  | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software  Designer | \ / CAMPAIGN     |  ___               |
| +33 223 225 172 `------------.-------:  X  AGAINST      |  \e/  There is no  |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL    |   v   conspiracy.  |
'------------------------------^-------^------------------^--------------------'
#7 lore raw

cover Fix a few unmet dependencies (branch yem/unmet-deps)

Quoted 35 lines · Yann E. MORIN

Thomas, All,

On 2016-09-11 15:49 +0200, Thomas Petazzoni spake thusly:

Quoted 13 lines · Yann E. MORIN
Quoted 12 lines

However, there is one such unmet direct dependency I was not able to understand (with this series already applied):

    $ make KCONFIG_SEED=0x9F309288 randconfig
    warning: (BR2_PACKAGE_OPENCV_WITH_GSTREAMER && BR2_PACKAGE_OPENCV3_WITH_GSTREAMER)
    selects BR2_PACKAGE_GST_PLUGINS_BASE which has unmet direct dependencies
    (BR2_PACKAGE_GSTREAMER)
    warning: (BR2_PACKAGE_FREERDP_GSTREAMER && BR2_PACKAGE_QT_WEBKIT &&
    BR2_PACKAGE_OPENCV_WITH_GSTREAMER && BR2_PACKAGE_OPENCV3_WITH_GSTREAMER) selects
    BR2_PACKAGE_GST_PLUGINS_BASE_PLUGIN_APP which has unmet direct dependencies
    (BR2_PACKAGE_GSTREAMER && BR2_PACKAGE_GST_PLUGINS_BASE)
Quoted 5 lines
Quoted 3 lines

As far as I can see, the dependencies of gstreamer and gst-plugins-base *are* properly propagated to the offending packages. I think I'm gonna loose my sanity on that one... :-/ If any one feels adventurous...

Do you have some sample .config that exhibits those problems?

As explained above, just run:

    make KCONFIG_SEED=0x9F309288 randconfig

But it may no longer work, since the set of options has changed now. You can reproduce it with:

    $ git checkout f4918b3a
    $ make KCONFIG_SEED=0x9F309288 randconfig

(f4918b3a is master before you applied the last few patches changing the set of options).

Quoted 8 lines
Quoted 4 lines

I had a
quick look, and it indeed seems weird. opencv is select both gstreamer and gst-plugins-base, so I don't see why the dependency of gst-plugins-base on gstreamer is a problem.

Neither do I.

And if you run "make olddefconfig" there is no error anymore... :-/

I guess it must be a weird side-effect of the randconfig. The
BR2_PACKAGE_OPENCV_WITH_GSTREAMER && BR2_PACKAGE_OPENCV3_WITH_GSTREAMER bit is very wrong (opencv3 depends on !opencv).

Regards,
Arnout

Quoted 4 lines

Regards,
Yann E. MORIN.

Signature · 6 lines
Arnout Vandecappelle                          arnout at mind be
Senior Embedded Software Architect            +32-16-286500
Essensium/Mind                                http://www.mind.be
G.Geenslaan 9, 3001 Leuven, Belgium           BE 872 984 063 RPR Leuven
LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle
GPG fingerprint:  7493 020B C7E3 8618 8DEC 222C 82EB F404 F9AC 0DDF