I tried to build yelp from git sources against --enable-gecko=libxul-embedding, which fails prominently due to prtypes.h missing from nscore.h The yelp ebuild seems to be patched against that bug, but actually xulrunner should be patched or modified that the pkg-config file contains that right dependency. Reproducible: Always Steps to Reproduce: Build your own yelp-2.30.2 from git repository against xulrunner-1.9.2.9-r1 with use flags: Installed versions: 1.9.2.9-r1(1.9)(23:25:09 23.09.2010)(alsa cups dbus gnome ipc libnotify -custom-optimization -debug -elibc_FreeBSD -java -startup-notification -system-sqlite -wifi) ./configure --prefix=/usr --enable-gecko=libxul-embedding make Actual Results: make[3]: Entering directory `/home/ingo/Software/gtk-devel/yelp/src' g++ -DHAVE_CONFIG_H -I. -I.. -I.. -I../src -DG_LOG_DOMAIN=\"Yelp\" -DPREFIX=\""/usr"\" -DSYSCONFDIR=\""/usr/etc"\" -DDATADIR=\""/usr/share"\" -DLIBDIR=\""/usr/lib"\" -DIMAGEDIR=\""/usr/share/images/yelp"\" -DSERVERDIR=\"/usr/libexec\" -DBINDIR=\""/usr/bin"\" -DSHAREDIR=\""/usr/share/yelp"\" -DMOZILLA_HOME=\""\"" -DGDU_ICON_PATH=\"/usr/share/gnome-doc-utils/icons\" -DXPCOM_GLUE -fshort-wchar -I/usr/include/xulrunner-1.9.2 -DXPCOM_GLUE -fshort-wchar -I/usr/include/xulrunner-1.9.2 -DXPCOM_GLUE -fshort-wchar -I/usr/include/xulrunner-1.9.2 -I/usr/include/xulrunner-1.9.2/unstable/. -I/usr/include/xulrunner-1.9.2/unstable/commandhandler -I/usr/include/xulrunner-1.9.2/unstable/content -I/usr/include/xulrunner-1.9.2/unstable/docshell -I/usr/include/xulrunner-1.9.2/unstable/dom -I/usr/include/xulrunner-1.9.2/unstable/fastfind -I/usr/include/xulrunner-1.9.2/unstable/find -I/usr/include/xulrunner-1.9.2/unstable/gtkembedmoz -I/usr/include/xulrunner-1.9.2/unstable/gfx -I/usr/include/xulrunner-1.9.2/unstable/layout -I/usr/include/xulrunner-1.9.2/unstable/necko -I/usr/include/xulrunner-1.9.2/unstable/pref -I/usr/include/xulrunner-1.9.2/unstable/string -I/usr/include/xulrunner-1.9.2/unstable/uriloader -I/usr/include/xulrunner-1.9.2/unstable/webbrwsr -I/usr/include/xulrunner-1.9.2/unstable/webshell -I/usr/include/xulrunner-1.9.2/unstable/widget -DEGG_SM_CLIENT_BACKEND_XSMP -pthread -DORBIT2=1 -DQT_SHARED -I/usr/include/glib-2.0 -I/usr/lib64/glib-2.0/include -I/usr/include/gconf/2 -I/usr/include/orbit-2.0 -I/usr/include/dbus-1.0 -I/usr/lib64/dbus-1.0/include -I/usr/include/gtk-unix-print-2.0 -I/usr/include/gtk-2.0 -I/usr/include/atk-1.0 -I/usr/include/cairo -I/usr/include/pango-1.0 -I/usr/lib64/gtk-2.0/include -I/usr/include/pixman-1 -I/usr/include/freetype2 -I/usr/include/libpng14 -I/usr/include/qt4 -I/usr/include/qt4/QtGui -I/usr/include/libdrm -I/usr/include/qt4/QtCore -I/usr/include/libxml2 -I/usr/include/startup-notification-1.0 -I/usr/include/rarian -DXPCOM_GLUE -fshort-wchar -I/usr/include/xulrunner-1.9.2 -DXPCOM_GLUE -fshort-wchar -I/usr/include/xulrunner-1.9.2 -DXPCOM_GLUE -fshort-wchar -I/usr/include/xulrunner-1.9.2 -fno-rtti -fshort-wchar -g -O2 -Wall -Wno-unused -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -g -O2 -MT yelp-Yelper.o -MD -MP -MF .deps/yelp-Yelper.Tpo -c -o yelp-Yelper.o `test -f 'Yelper.cpp' || echo './'`Yelper.cpp In file included from /usr/include/xulrunner-1.9.2/nsXPCOMStrings.h:42, from /usr/include/xulrunner-1.9.2/nsStringAPI.h:53, from Yelper.cpp:28: /usr/include/xulrunner-1.9.2/nscore.h:51:21: error: prtypes.h: No such file or directory In file included from Yelper.cpp:28: /usr/include/xulrunner-1.9.2/nsStringAPI.h:55:19: error: prlog.h: No such file or directory In file included from Yelper.cpp:30: /usr/include/xulrunner-1.9.2/gtkmozembed.h:57:1: warning: "NS_HIDDEN" redefined In file included from /usr/include/xulrunner-1.9.2/nsXPCOMStrings.h:42, from /usr/include/xulrunner-1.9.2/nsStringAPI.h:53, from Yelper.cpp:28: [and so on ...] Expected Results: beautiful silence and happiness about a running make that error simply comes from missing -I/usr/include/nspr which should be contained in libxul-embedding.pc --cflags.
All that needs to be done is adding Requires: nspr to the libxul-embedding.pc
Yelp needs to depend on nspr, there is nothing specific about embedding needing to depend on nspr.
I don't think that this is true, as yelp just includes nscore.h from xulrunner, that again depends on prtypes.h (as seen in the error log), that prtypes.h is again from nspr, so finally yelp just depends on nspr because the xulrunner file depends on it. I really cannot understand how you can close a bug with such a lapidar message, without going deeper into that topic. Please explain why yelp might still depend directly on nspr and no other package that include nscore.h from xulrunner does.
Please do not reopen this, we have already had this discussion upstream and will not change our decision in the distro. Nothing about libxul-embedding depends on nspr being avaliable hense there is no reason for it to be required. Yelp needs to check for the libs that it needs, not depend on packages providing them for it.
Ok I will leave this bug closed then, but I assume now you came to the wrong solution in your discussion with upstream.