Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 503802 - app-text/calibre-1.20 fails to compile - missing dependence dev-libs/boost
Summary: app-text/calibre-1.20 fails to compile - missing dependence dev-libs/boost
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Zac Medico
URL: http://thread.gmane.org/gmane.linux.g...
Whiteboard:
Keywords: InVCS
: 484662 (view as bug list)
Depends on:
Blocks:
 
Reported: 2014-03-08 01:30 UTC by Vicente Olivert Riera (RETIRED)
Modified: 2014-10-16 21:03 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Vicente Olivert Riera (RETIRED) gentoo-dev 2014-03-08 01:30:41 UTC
In file included from /usr/include/podofo/podofo-base.h:27:0,
                 from /usr/include/podofo/podofo.h:34,
                 from /var/tmp/portage/app-text/calibre-1.20/work/calibre/src/calibre/utils/podofo/podofo.cpp:6:
/usr/include/podofo/base/PdfDefines.h:66:28: fatal error: boost/config.hpp: No such file or directory
compilation terminated.


boost/config.hpp is provided by dev-libs/boost, but calibre doesn't have that package in it's DEPEND variable.
Comment 1 Ben de Groot (RETIRED) gentoo-dev 2014-03-21 10:48:08 UTC
isn't this rather a podofo issue? or should calibre depend on podofo[boost]?
Comment 2 Vicente Olivert Riera (RETIRED) gentoo-dev 2014-03-27 09:04:32 UTC
podofo installs the package "dev-util/boost-build", but, in one of the headers files that it installs (PdfDefines.h) there is an include of "boost/config.hpp", which is provided by dev-libs/boost. And that header file (PdfDefines.h) is included in others 96 podifo headers, so yes, I think podofo should RDEPEND on dev-libs/boost.

---------------

# cd /usr/include/podofo/ && grep -R boost *
base/PdfDefines.h:#include <boost/config.hpp>

# cd /usr/include/podofo/ && grep -R "PdfDefines.h" * | wc -l
96
Comment 3 Zac Medico gentoo-dev 2014-10-12 02:02:19 UTC
How about if we add a virtual/podofo-build meta-package that pulls in podofo and boost. Then packages like calibre can put virtual/podofo-build in DEPEND and app-text/podofo in RDEPEND. This will make it possible to use a command like `emerge --depclean --with-bdeps=n` to remove the build-time only boost package (and virtual/podofo-build).
Comment 4 Zac Medico gentoo-dev 2014-10-13 19:01:42 UTC
*** Bug 484662 has been marked as a duplicate of this bug. ***
Comment 5 Zac Medico gentoo-dev 2014-10-16 20:55:24 UTC
(In reply to Zac Medico from comment #3)
> How about if we add a virtual/podofo-build meta-package that pulls in podofo
> and boost. Then packages like calibre can put virtual/podofo-build in DEPEND
> and app-text/podofo in RDEPEND. This will make it possible to use a command
> like `emerge --depclean --with-bdeps=n` to remove the build-time only boost
> package (and virtual/podofo-build).

Following discussion on the gentoo-dev mailing list, I've created virtual/podofo-build and added DEPEND of all calibre ebuilds. Conclusions from discussion:

1) We don't want calibre to DEPEND directly on boost, since it would be unfortunate to pull in boost if not needed (suppose that podofo was built with USE=boost disabled).

2) Virtuals are more flexible than the BADEPEND suggested in bug #392239. If we later find that virtual/podofo-build works for calibre but not some other reverse dependency of podofo, then we can always create a different virtual to put in DEPEND of said reverse-dependency.