Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Why is IcedTea Dependent on CUPS ?
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Portage & Programming
View previous topic :: View next topic  
Author Message
system_exit
n00b
n00b


Joined: 07 Jul 2011
Posts: 22

PostPosted: Thu Jul 07, 2011 10:25 pm    Post subject: Why is IcedTea Dependent on CUPS ? Reply with quote

Can someone explain me why icedtea depends on CUPS?

It kind of irritates me because I had only problems wit CUPS and I am pretty much happy running LPRng - what I do no need is to screw my settings with CUPS installation. Can I get rid of the thing somehow ?
Back to top
View user's profile Send private message
aCOSwt
Bodhisattva
Bodhisattva


Joined: 19 Oct 2007
Posts: 2537
Location: Hilbert space

PostPosted: Thu Jul 07, 2011 10:45 pm    Post subject: Reply with quote

Well I cannot explain why the OpenJDK builder dev-java/icedtea depends on CUPS, even less that dev/java/icedtea6-bin, that is the Gentoo binary build, does not depends on CUPS.
Would then mean that CUPS is a dependency required by the tools needed to build icedtea.

Anyway... while waiting for the exact reason... you might want to try CUPS-free icedtea6-bin.
Back to top
View user's profile Send private message
sera
Retired Dev
Retired Dev


Joined: 29 Feb 2008
Posts: 1017
Location: CET

PostPosted: Fri Jul 08, 2011 6:35 am    Post subject: Reply with quote

aCOSwt wrote:
Well I cannot explain why the OpenJDK builder dev-java/icedtea depends on CUPS, even less that dev/java/icedtea6-bin, that is the Gentoo binary build, does not depends on CUPS.


Cups is an optional runtime dependency. If it's there java applications can print. If not an exception is raised attempting to do so. To be able to optionally use cups at runtime the headers need to be available at build time. That's why the binaries get away without this dependency.

aCOSwt wrote:
Would then mean that CUPS is a dependency required by the tools needed to build icedtea.

Would be an ebuild bug.

aCOSwt wrote:
Anyway... while waiting for the exact reason... you might want to try CUPS-free icedtea6-bin.

Or just install icedtea and don't bother configuring cups.
Back to top
View user's profile Send private message
aCOSwt
Bodhisattva
Bodhisattva


Joined: 19 Oct 2007
Posts: 2537
Location: Hilbert space

PostPosted: Fri Jul 08, 2011 7:20 am    Post subject: Reply with quote

sera wrote:
Cups is an optional runtime dependency. If it's there java applications can print. If not an exception is raised attempting to do so. To be able to optionally use cups at runtime the headers need to be available at build time. That's why the binaries get away without this dependency.

8) This makes sense. Thank you sera for this explanation.
Back to top
View user's profile Send private message
Sigma Kappa
n00b
n00b


Joined: 04 Mar 2012
Posts: 45

PostPosted: Fri Jun 28, 2013 6:29 am    Post subject: Reply with quote

My laptop faces and issue of a circular dependency icedtea-bin <---> cups. Personally, I don't need either of them. I thought of breaking this cycle with building icedtea-bin, and could find a formula so that emerge does not complain: USE="-jpeg -cups -java" emerge icedtea-bin.
However, building icedtea without Java support (as suggested by the -java USE-flag) seems absurd.
Any comments on this?

Thank you.
Back to top
View user's profile Send private message
Slippery Jim
Apprentice
Apprentice


Joined: 08 Jan 2005
Posts: 264

PostPosted: Sun Jan 04, 2015 2:38 am    Post subject: Reply with quote

I don't know, something seems wonky about this CUPS dependency. When I build icedtea, it requires that I build ghostscript[+cups], even if I have icedtea[-cups]. After building icedtea, running "emerge -cv --with-bdeps=n" removes cups (and ghostscript), but icedtea still has libcups linked. Running "emerge @preserved-rebuild" wants to rebuild icedtea, with ghostscript[+cups] again.

Shouldn't the cups headers be a build dependency of icedtea only, with no linkage of libcups if the USE flag is off?
Back to top
View user's profile Send private message
Ant P.
Watchman
Watchman


Joined: 18 Apr 2009
Posts: 6920

PostPosted: Sun Jan 04, 2015 2:56 am    Post subject: Reply with quote

Yep, it's idiotic, but upstream imposes this problem on everyone. IIRC the ebuild used to patch that dep out but it was unreliable (assumptions that you'd want to connect a parallel printer to your phone are baked in at all levels of Java...)

Good timing though, I've been cleaning up use flags this week and I've already figured out config files to minimise the amount of crap icedtea pulls in; one for desktop, one for headless.

In both cases I've only got it installed at all for the sake of minecraft/minecraft-server, so YMMV:
/etc/portage/package.use/desktop-java.conf:
# +jbootstrap allows us to unmerge icedtea-bin after building icedtea
dev-java/icedtea jbootstrap -alsa -cups -nsplugin -nss -source -webstart

# Minimize the damage CUPS does by turning everything we can off:
# Be warned that net-print/cups has a terrible QA track record, and -threads usually results in compile errors.
# The current ebuild as of this writing should work, however.
net-print/cups -ssl -threads LINGUAS: -*

# These are all unavoidable CUPS dependencies. + flags are mandatory, - flags are because we can.
app-text/ghostscript-gpl cups
app-text/poppler cxx lcms utils -introspection -jpeg
net-print/cups-filters -foomatic

/etc/portage/package.use/server-java.conf:
dev-java/icedtea jbootstrap -X -alsa -cups -nsplugin -nss -source -webstart

# Mostly complete list of every unconditional dependency icedtea demands of us.
# USE flags removed where possible. For a server, this is kind of ridiculous...
app-arch/cpio -nls
app-arch/unzip -bzip2 -unicode
app-arch/zip -bzip2 -crypt -unicode
#dev-java/ant-core
dev-libs/atk -introspection
dev-libs/glib -mime
#dev-util/systemtap
#media-libs/alsa-lib
#media-libs/fontconfig
media-libs/freetype -adobe-cff -bzip2
#media-libs/giflib
media-libs/lcms -threads -zlib
#media-libs/libpng
net-print/cups -ssl -threads LINGUAS: -*
sys-apps/attr -nls
#sys-apps/lsb-release
#virtual/jpeg
#x11-libs/cairo
x11-libs/gdk-pixbuf -introspection
x11-libs/gtk+ -introspection
x11-libs/libX11 -ipv6
#x11-libs/libXau
#x11-libs/libXdmcp
#x11-libs/libXext
#x11-libs/libXi
#x11-libs/libXinerama
#x11-libs/libXrender
#x11-libs/libXt
#x11-libs/libXtst
x11-libs/pango -introspection
#x11-proto/inputproto
#x11-proto/xextproto
#x11-proto/xineramaproto
#x11-proto/xproto

# Forced dependencies of the above list. Enabled useflags where mandatory, disabled where possible.
# From net-print/cups:
app-text/ghostscript-gpl cups
app-text/poppler cxx lcms utils -introspection -jpeg
net-print/cups-filters -foomatic
# From x11-libs/gtk+:
x11-libs/cairo X svg -glib
# From x11-libs/pango:
media-libs/harfbuzz glib truetype -cairo -graphite -introspection
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Portage & Programming All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum