From owner-freebsd-gecko@freebsd.org Sat Jun 29 00:50:54 2019 Return-Path: Delivered-To: freebsd-gecko@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 4ED6315D0570 for ; Sat, 29 Jun 2019 00:50:54 +0000 (UTC) (envelope-from jbeich@freebsd.org) Received: from mailman.ysv.freebsd.org (mailman.ysv.freebsd.org [IPv6:2001:1900:2254:206a::50:5]) by mx1.freebsd.org (Postfix) with ESMTP id DF4979033F for ; Sat, 29 Jun 2019 00:50:53 +0000 (UTC) (envelope-from jbeich@freebsd.org) Received: by mailman.ysv.freebsd.org (Postfix) id 9A25915D056E; Sat, 29 Jun 2019 00:50:53 +0000 (UTC) Delivered-To: gecko@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id 5AE9B15D056D for ; Sat, 29 Jun 2019 00:50:53 +0000 (UTC) (envelope-from jbeich@freebsd.org) Received: from freefall.freebsd.org (freefall.freebsd.org [96.47.72.132]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) server-signature RSA-PSS (4096 bits) client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "freefall.freebsd.org", Issuer "Let's Encrypt Authority X3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id F2A6290338; Sat, 29 Jun 2019 00:50:52 +0000 (UTC) (envelope-from jbeich@freebsd.org) Received: by freefall.freebsd.org (Postfix, from userid 1354) id DA44813E72; Sat, 29 Jun 2019 00:50:52 +0000 (UTC) From: Jan Beich To: Steve Wills Cc: gecko@FreeBSD.org Subject: Re: Firefox and GTK2 References: <7536c5cf-f8a0-fe5c-661f-b7909b9d57aa@FreeBSD.org> <491275b9-47ef-58b4-ab0c-bdaf1bed13b4@FreeBSD.org> <5d74ebf9-49cd-04bc-d6b5-aa156491f29f@FreeBSD.org> Date: Sat, 29 Jun 2019 02:50:47 +0200 In-Reply-To: (Steve Wills's message of "Fri, 28 Jun 2019 19:01:16 -0400") Message-ID: MIME-Version: 1.0 Content-Type: text/plain X-Rspamd-Queue-Id: F2A6290338 X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org X-Spamd-Result: default: False [-2.96 / 15.00]; local_wl_from(0.00)[freebsd.org]; NEURAL_HAM_MEDIUM(-0.99)[-0.991,0]; NEURAL_HAM_SHORT(-0.97)[-0.968,0]; ASN(0.00)[asn:11403, ipnet:96.47.64.0/20, country:US]; NEURAL_HAM_LONG(-1.00)[-1.000,0] X-BeenThere: freebsd-gecko@freebsd.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gecko Rendering Engine issues List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sat, 29 Jun 2019 00:50:54 -0000 Steve Wills writes: > Hi, > > On 6/28/19 5:56 PM, Jan Beich wrote: >> Steve Wills writes: >> > [snip] >> >> How does libcanberra decide which gtk to use? >> > > Wouldn't that be based on how it's built and what it's linked against? We're back then. libcanberra.so.0 doesn't depend on gtk unlike libcanberra-gtk.so.0 or libcanberra-gtk3.so.0. And Firefox doesn't depend on libcanberra-gtk.so.0 or libcanberra-gtk3.so.0. >>>> GTK3 is still optional in www/seamonkey and not supported in www/palemoon. >>> >>> Maybe the libcanberra dep could be moved out of bsd.gecko.mk and into >>> the ports? >> >> Right. To Mk/Uses/gnome.mk where USE_GNOME=canberra can decide whether >> to pull -gtk3 slave or not. > > USE_GNOME=canberra might make sense, yeah, although I'm not sure how > it would decide which to use. Maybe that would have to specified. Here's an ugly example: $ make WITH=CANBERRA -V RUN_DEPENDS:M\*canberra\* -C www/firefox /usr/local/lib/libcanberra-gtk3.so:audio/libcanberra-gtk3 $ make WITH=CANBERRA -V RUN_DEPENDS:M\*canberra\* -C www/palemoon /usr/local/lib/libcanberra.so:audio/libcanberra $ make WITH=CANBERRA -V RUN_DEPENDS:M\*canberra\* -C www/seamonkey /usr/local/lib/libcanberra-gtk3.so:audio/libcanberra-gtk3 $ make WITH=CANBERRA\ GTK2 WITHOUT=GTK3 -V RUN_DEPENDS:M\*canberra\* -C www/seamonkey /usr/local/lib/libcanberra.so:audio/libcanberra diff --git a/Mk/Uses/gnome.mk b/Mk/Uses/gnome.mk index 1d2b418fbe8d..3fbe55dfbc77 100644 --- a/Mk/Uses/gnome.mk +++ b/Mk/Uses/gnome.mk @@ -77,7 +77,7 @@ _USE_GNOME_ALL+= atk cairo \ gnomedocutils gnomesharp20 \ gnomevfs2 gtk-update-icon-cache gtk20 gtkhtml3 \ gtksharp20 gtksourceview2 gvfs libartlgpl2 libbonobo \ - libbonoboui libglade2 libgnome \ + libbonoboui libcanberra libglade2 libgnome \ libgnomecanvas libgnomekbd libgnomeprint libgnomeprintui \ libgnomeui libgsf libgtkhtml libidl librsvg2 libwnck \ libxml2 libxslt \ @@ -87,7 +87,7 @@ _USE_GNOME_ALL+= atk cairo \ # GNOME 3 components _USE_GNOME_ALL+=dconf evolutiondataserver3 gnomecontrolcenter3 gnomedesktop3 \ gnomemenus3 gsound gtk30 gtkhtml4 gtksourceview3 \ - gtksourceview4 libgda5 \ + gtksourceview4 libcanberra-gtk3 libgda5 \ libgda5-ui libwnck3 metacity nautilus3 \ pygobject3 vte3 @@ -121,6 +121,13 @@ gnomeprefix_CONFIGURE_ARGS=--localstatedir=${GNOME_LOCALSTATEDIR} \ atkmm_LIB_DEPENDS= libatkmm-1.6.so:accessibility/atkmm atkmm_USE_GNOME_IMPL= glibmm atk +libcanberra_BUILD_DEPENDS= ${LOCALBASE}/include/canberra.h:audio/libcanberra +libcanberra_LIB_DEPENDS= libcanberra.so:audio/libcanberra +libcanberra_RUN_DEPENDS= ${LOCALBASE}/lib/libcanberra.so:audio/libcanberra +libcanberra-gtk3_BUILD_DEPENDS= libcanberra-gtk3>0:audio/libcanberra-gtk3 +libcanberra-gtk3_LIB_DEPENDS= libcanberra-gtk3.so:audio/libcanberra-gtk3 +libcanberra-gtk3_RUN_DEPENDS= ${LOCALBASE}/lib/libcanberra-gtk3.so:audio/libcanberra-gtk3 + libxml++26_LIB_DEPENDS= libxml++-2.6.so:textproc/libxml++26 libxml++26_USE_GNOME_IMPL= glibmm libxml2 @@ -393,6 +400,14 @@ IGNORE= cannot install: Unknown component ${component} _USE_GNOME+= ${${component}_USE_GNOME_IMPL} ${component} . endfor +# XXX _USE_GNOME_IMPL cannot be used due to recursion e.g., +# libcanberra_USE_GNOME_IMPL+=${_USE_GNOME:S/gtk30/libcanberra-gtk3/} +# gtk30_USE_GNOME_IMPL+=${_USE_GNOME:S/libcanberra/&-gtk3/} +.if ${_USE_GNOME:Mgtk30} +USE_GNOME:= ${USE_GNOME:S/libcanberra/&-gtk3/} +_USE_GNOME:= ${_USE_GNOME:S/libcanberra/&-gtk3/} +.endif + # Setup the GTK+ API version for pixbuf loaders, input method modules, # and theme engines. PLIST_SUB+= GTK2_VERSION="${GTK2_VERSION}" \ diff --git a/Mk/bsd.gecko.mk b/Mk/bsd.gecko.mk index 28cd910ae90a..cbe2f74d844e 100644 --- a/Mk/bsd.gecko.mk +++ b/Mk/bsd.gecko.mk @@ -274,7 +274,7 @@ LDFLAGS+= -B${LOCALBASE}/bin .endif .if ${PORT_OPTIONS:MCANBERRA} -RUN_DEPENDS+= libcanberra>0:audio/libcanberra +USE_GNOME+= libcanberra:run .endif .if ${PORT_OPTIONS:MDBUS}