Bug 214992 - devel/dbus: make dependency loop
Summary: devel/dbus: make dependency loop
Status: New
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Many People
Assignee: freebsd-gnome mailing list
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-12-02 06:06 UTC by Keizo Shimizu
Modified: 2018-03-08 15:58 UTC (History)
2 users (show)

See Also:
bugzilla: maintainer-feedback? (gnome)


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Keizo Shimizu 2016-12-02 06:06:56 UTC
When installing some ports on 11.0-RELEASE-p1, I met 
"Cannot fork: Resource temporarily unavailable" message.
I investigated log and found following make dependency loop.

===>   dbus-glib-0.104 depends on shared library: libdbus-1.so - not found
===>   dbus-1.8.20 depends on executable: xmlto - not found
===>   xmlto-0.0.28 depends on executable: w3m - not found
===>   w3m-0.5.3_5 depends on shared library: libgtk-x11-2.0.so - not found
===>   gtk2-2.24.29_2 depends on shared library: libcups.so - not found
===>   cups-2.1.4 depends on shared library: libavahi-client.so - not found
===>   avahi-app-0.6.31_5 depends on shared library: libdbus-glib-1.so - not found
===>   dbus-glib-0.104 depends on shared library: libdbus-1.so - not found
===>   dbus-1.8.20 depends on executable: xmlto - not found
===>   xmlto-0.0.28 depends on executable: w3m - not found
===>   w3m-0.5.3_5 depends on shared library: libgtk-x11-2.0.so - not found
===>   gtk2-2.24.29_2 depends on shared library: libcups.so - not found
===>   cups-2.1.4 depends on shared library: libavahi-client.so - not found
===>   avahi-app-0.6.31_5 depends on shared library: libdbus-glib-1.so - not found

It seems devel/dbus requires xmlto to install MANPAGES and xmlto itself requires dbus.
Comment 1 w.schwarzenfeld freebsd_triage 2018-01-12 11:02:07 UTC
Maintainer feedback?
Comment 2 w.schwarzenfeld freebsd_triage 2018-03-05 01:43:53 UTC
I think the dependency of xmlto on w3m is not necessairy
(configure --help: --with-webbrowser=[w3m|lynx|links|any]).
The questions is needs xmlto a browser?
Comment 3 Ting-Wei Lan 2018-03-08 13:49:01 UTC
(In reply to w.schwarzenfeld from comment #2)
I guess that xmlto needs it because it wants to hard-code the path to w3m in the generated script during the build. I don't know what is the best solution, but I think installing w3m without INLINE_IMAGE option is a simple workaround. After xmlto is installed, you can rebuild w3m with INLINE_IMAGE option.

Since xmlto uses autotools to build, it may be possible to pass the path to w3m to the configure script from command line to override the check result of configure and move w3m to RUN_DEPENDS. But this still looks like a workaround ...
Comment 4 w.schwarzenfeld freebsd_triage 2018-03-08 15:14:07 UTC
And why not lynx instead of w3m?
Comment 5 Ting-Wei Lan 2018-03-08 15:58:14 UTC
(In reply to w.schwarzenfeld from comment #4)
I don't know why the maintainer picked w3m instead of lynx, but switching to another web browser still looks like a workaround. If a future version of lynx gains an optional feature which causes it to have an optional dependency on a graphical toolkit, the same dependency loop problem will happen again.