Date: 30 Jan 2003 22:38:26 -0500 From: Joe Marcus Clarke <marcus@FreeBSD.org> To: gnome@FreeBSD.org Subject: HEADS UP, RFC, and all that jazz: New GNOMENG updates Message-ID: <1043984306.30324.45.camel@shumai.marcuscom.com>
next in thread | raw e-mail | index | archive | help
--=-TfuDRVsLB817dvG6SXPo Content-Type: multipart/mixed; boundary="=-Jg6iCZv2IYfGIC633PZy" --=-Jg6iCZv2IYfGIC633PZy Content-Type: text/plain Content-Transfer-Encoding: quoted-printable With GNOME 2.2 closing in, it's becoming more and more evident we need GNOME 2 support in GNOMENG. Also, it would be nice to eradicate the old GNOME infrastructure from the tree entirely. Attached is my first round draft of a GNOMENG that supports GNOME 2 (2.0 right now), as well as adds some hooks for old-style GNOME ports to function in GNOMENG, and adds some knowledge about GNOME desktop versions. I would really appreciate if people could look this over, test it, and send me your feedback. I'm not 100% convinced this is the best way to test for the GNOME desktops, but it seems to work in my tests. This patch adds one new variable: WITH_GNOME_DESKTOP This variable can take one of two values: 1 or 2. If you're using the GNOME 2 desktop, define this to be 2 (in /etc/make.conf, for example).=20 Of course, define this to be 1 if you're using the GNOME 1 desktop.=20 This comes into play especially if the port in question _can_ use libpanel (e.g. gaim). If you define WITH_GNOME_DESKTOP to be 2, gaim won't build the applet. For ports that _use_ libpanel, they will be marked as BROKEN if WITH_GNOME_DESKTOP is set to 2. Again, this is just a first draft, but I would like to at least commit the GNOME 2 additions relatively soon assuming no objections. Thanks! Joe --=20 Joe Marcus Clarke FreeBSD GNOME Team :: marcus@FreeBSD.org http://www.FreeBSD.org/gnome --=-Jg6iCZv2IYfGIC633PZy Content-Disposition: attachment; filename=bsd.gnomeng.mk.diff Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; name=bsd.gnomeng.mk.diff; charset=ISO-8859-1 --- bsd.gnomeng.mk.orig Thu Jan 30 22:29:09 2003 +++ bsd.gnomeng.mk Thu Jan 30 22:28:37 2003 @@ -25,6 +25,15 @@ gnomecanvas oaf gnomemimedata gconf gnomevfs libcapplet \ gnomeprint bonobo libgda gnomedb libglade gal glibwww gtkhtml \ libpanel +_USE_GNOME_ALL+=3Dglib20 atk pango gtk20 linc libidl orbit2 libglade2 libx= ml2 \ + libxslt bonoboactivation libbonobo gconf2 gnomevfs2 gail \ + libgnomecanvas libartlgpl2 libgnomeprint libgnomeprintui \ + libgnome libbonoboui libgnomeui atspi libgailgnome \ + libgtkhtml gnomedesktop libwnck vte libzvt librsvg2 eel2 \ + gnomepanel + +# Set a reasonable (overrideable) configure target for GNOME apps. +CONFIGURE_TARGET?=3D --target=3D${MACHINE_ARCH}-unknown-freebsd${OSREL} =20 SCROLLKEEPER_DIR=3D /var/db/scrollkeeper gnomehack_PRE_PATCH=3D ${FIND} ${WRKSRC} -name "Makefile.in*" | ${XARGS} $= {REINPLACE_CMD} -e \ @@ -189,6 +198,146 @@ libpanel_LIB_DEPENDS=3D panel_applet.5:${PORTSDIR}/x11/libpanel libpanel_DETECT=3D ${X11BASE}/etc/appletsConf.sh libpanel_USE_GNOME_IMPL=3Dgnomelibs +libpanel_GNOME_DESKTOP=3D1 + +glib20_LIB_DEPENDS=3D glib-2.0.0:${PORTSDIR}/devel/glib20 +glib20_DETECT=3D ${LOCALBASE}/libdata/pkgconfig/glib-2.0.pc + +atk_LIB_DEPENDS=3D atk-1.0.0:${PORTSDIR}/devel/atk +atk_DETECT=3D ${LOCALBASE}/libdata/pkgconfig/atk.pc +atk_USE_GNOME_IMPL=3D glib20 + +pango_LIB_DEPENDS=3D pango-1.0.0:${PORTSDIR}/x11-toolkits/pango +pango_DETECT=3D ${X11BASE}/libdata/pkgconfig/pango.pc +pango_USE_GNOME_IMPL=3D glib20 + +gtk20_LIB_DEPENDS=3D gtk-x11-2.0.0:${PORTSDIR}/x11-toolkits/gtk20 +gtk20_DETECT=3D ${X11BASE}/libdata/pkgconfig/gtk+-x11-2.0.pc +gtk20_USE_GNOME_IMPL=3D atk pango + +linc_LIB_DEPENDS=3D linc.1:${PORTSDIR}/net/linc +linc_DETECT=3D ${LOCALBASE}/libdata/pkgconfig/linc.pc +linc_USE_GNOME_IMPL=3D glib20 + +libidl_LIB_DEPENDS=3D IDL-2.0:${PORTSDIR}/devel/libIDL +libidl_DETECT=3D ${LOCALBASE}/libdata/pkgconfig/libIDL-2.0.pc +libidl_USE_GNOME_IMPL=3D glib20 + +orbit2_LIB_DEPENDS=3D ORBit-2.0:${PORTSDIR}/devel/ORBit2 +orbit2_DETECT=3D ${LOCALBASE}/libdata/pkgconfig/ORBit-2.0.pc +orbit2_USE_GNOME_IMPL=3D libidl linc + +libglade2_LIB_DEPENDS=3D glade-2.0.0:${PORTSDIR}/devel/libglade2 +libglade2_DETECT=3D ${X11BASE}/libdata/pkgconfig/libglade-2.0.pc +libglade2_USE_GNOME_IMPL=3Dlibxml2 gtk20 + +libxml2_LIB_DEPENDS=3D xml2.5:${PORTSDIR}/textproc/libxml2 +libxml2_DETECT=3D ${LOCALBASE}/libdata/pkgconfig/libxml-2.0.pc + +libxslt_LIB_DEPENDS=3D xslt.1:${PORTSDIR}/textproc/libxslt +libxslt_DETECT=3D ${LOCALBASE}/libdata/pkgconfig/libxslt.pc +libxslt_USE_GNOME_IMPL=3D libxml2 + +bonoboactivation_LIB_DEPENDS=3D bonobo-activation.4:${PORTSDIR}/devel/bono= bo-activation +bonoboactivation_DETECT=3D ${LOCALBASE}/libdata/pkgconfig/bonobo-activatio= n-2.0.pc +bonoboactivation_USE_GNOME_IMPL=3Dlibxml2 orbit2 + +libbonobo_LIB_DEPENDS=3D bonobo-2.0:${PORTSDIR}/devel/libbonobo +libbonobo_DETECT=3D ${LOCALBASE}/libdata/pkgconfig/libbonobo-2.0.pc +libbonobo_USE_GNOME_IMPL=3Dbonoboactivation + +gconf2_LIB_DEPENDS=3D gconf-2.5:${PORTSDIR}/devel/gconf2 +gconf2_DETECT=3D ${X11BASE}/libdata/pkgconfig/gconf-2.0.pc +gconf2_USE_GNOME_IMPL=3D orbit2 libxml2 gtk20 + +gnomevfs2_LIB_DEPENDS=3D gnomevfs-2.0:${PORTSDIR}/devel/gnomevfs2 +gnomevfs2_DETECT=3D ${X11BASE}/libdata/pkgconfig/gnome-vfs-2.0.pc +gnomevfs2_USE_GNOME_IMPL=3Dgconf2 libbonobo + +gail_LIB_DEPENDS=3D gailutil.17:${PORTSDIR}/x11-toolkits/gail +gail_DETECT=3D ${X11BASE}/libdata/pkgconfig/gail.pc +gail_USE_GNOME_IMPL=3D libgnomecanvas + +libgnomecanvas_LIB_DEPENDS=3D gnomecanvas-2.0:${PORTSDIR}/graphics/libgnom= ecanvas +libgnomecanvas_DETECT=3D ${X11BASE}/libdata/pkgconfig/libgnomecanvas-2.0.= pc +libgnomecanvas_USE_GNOME_IMPL=3D libglade2 libartlgpl2 + +libartlgpl2_LIB_DEPENDS=3D art_lgpl_2.5:${PORTSDIR}/graphics/libart_lgpl2 +libartlgpl2_DETECT=3D ${LOCALBASE}/libdata/pkgconfig/libart-2.0.pc + +libgnomeprint_LIB_DEPENDS=3D gnomeprint-2.0:${PORTSDIR}/print/libgnomeprin= t +libgnomeprint_DETECT=3D ${X11BASE}/libdata/pkgconfig/libgnomeprint-2.0.pc +libgnomeprint_USE_GNOME_IMPL=3D libbonobo libartlgpl2 gtk20 + +libgnomeprintui_LIB_DEPENDS=3D gnomeprintui-2.0:${PORTSDIR}/x11-toolkits/l= ibgnomeprintui +libgnomeprintui_DETECT=3D ${X11BASE}/libdata/pkgconfig/libgnomeprintui-2.= 0.pc +libgnomeprintui_USE_GNOME_IMPL=3D libgnomeprint libgnomecanvas + +libgnome_LIB_DEPENDS=3D gnome-2.0:${PORTSDIR}/x11/libgnome +libgnome_DETECT=3D ${X11BASE}/libdata/pkgconfig/libgnome-2.0.pc +libgnome_USE_GNOME_IMPL=3Dlibxslt gnomevfs2 + +libbonoboui_LIB_DEPENDS=3D bonoboui-2.0:${PORTSDIR}/x11-toolkits/libbonobo= ui +libbonoboui_DETECT=3D ${X11BASE}/libdata/pkgconfig/libbonoboui-2.0.pc +libbonoboui_USE_GNOME_IMPL=3D libgnomecanvas libgnome + +libgnomeui_LIB_DEPENDS=3D gnomeui-2.0:${PORTSDIR}/x11-toolkits/libgnomeui +libgnomeui_DETECT=3D ${X11BASE}/libdata/pkgconfig/libgnomeui-2.0.pc +libgnomeui_USE_GNOME_IMPL=3D libbonoboui + +atspi_LIB_DEPENDS=3D spi.1:${PORTSDIR}/x11-toolkits/at-spi +atspi_DETECT=3D ${X11BASE}/libdata/pkgconfig/cspi-1.0.pc +atspi_USE_GNOME_IMPL=3D gail libbonobo + +libgailgnome_RUN_DEPENDS=3D ${X11BASE}/lib/gtk-2.0/modules/libgail-gnome.s= o +libgailgnome_DETECT=3D ${X11BASE}/libdata/pkgconfig/libgail-gnome.pc +libgailgnome_USE_GNOME_IMPL=3D libgnomeui atspi + +libgtkhtml_LIB_DEPENDS=3D gtkhtml-2.0:${PORTSDIR}/www/libgtkhtml +libgtkhtml_DETECT=3D ${X11BASE}/libdata/pkgconfig/libgtkhtml-2.0.pc +libgtkhtml_USE_GNOME_IMPL=3Dlibxslt gnomevfs2 gail + +gnomedesktop_LIB_DEPENDS=3D gnome-desktop-2.0:${PORTSDIR}/x11/gnomedesktop +gnomedesktop_DETECT=3D ${X11BASE}/libdata/pkgconfig/gnome-desktop-2.0.pc +gnomedesktop_USE_GNOME_IMPL=3D libgnomeui +gnomedesktop_GNOME_DESKTOP=3D 2 + +libwnck_LIB_DEPENDS=3D wnck-1.4:${PORTSDIR}/x11-toolkits/libwnck +libwnck_DETECT=3D ${X11BASE}/libdata/pkgconfig/libwnck-1.0.pc +libwnck_USE_GNOME_IMPL=3D gtk20 + +vte_LIB_DEPENDS=3D vte.4:${PORTSDIR}/x11-toolkits/vte +vte_DETECT=3D ${X11BASE}/libdata/pkgconfig/vte.pc +vte_USE_GNOME_IMPL=3D gtk20 + +libzvt_LIB_DEPENDS=3D zvt-2.0.0:${PORTSDIR}/x11-toolkits/libzvt +libzvt_DETECT=3D ${X11BASE}/libdata/pkgconfig/libzvt-2.0.pc +libzvt_USE_GNOME_IMPL=3D gtk20 + +librsvg2_LIB_DEPENDS=3D rsvg-2.2:${PORTSDIR}/graphics/librsvg2 +librsvg2_DETECT=3D ${X11BASE}/libdata/pkgconfig/librsvg-2.0.pc +librsvg2_USE_GNOME_IMPL=3Dlibartlgpl2 libxml2 gtk20 + +eel2_LIB_DEPENDS=3D eel-2.2:${PORTSDIR}/x11-toolkits/eel2 +eel2_DETECT=3D ${X11BASE}/libdata/pkgconfig/eel-2.0.pc +eel2_USE_GNOME_IMPL=3D gnomevfs2 libgnomeui gail + +gnomepanel_LIB_DEPENDS=3D panel-applet-2.0:${PORTSDIR}/x11/gnomepanel +gnomepanel_DETECT=3D ${X11BASE}/libdata/pkgconfig/libpanelapplet-2.0.pc +gnomepanel_USE_GNOME_IMPL=3Dlibwnck gnomedesktop +gnomepanel_GNOME_DESKTOP=3D2 + +# End component definition section + +# Hack USE_GNOME to the new GNOMENG style for port mataintainers that +# didn't do so themselves. This will allow us to get rid of the old +# GNOME porting infrastructure more quickly. + +.if defined(USE_GNOME) +. if ${USE_GNOME}=3D=3D"yes" +USE_GNOME=3Dgnomeprefix gnomehack gtkhtml libpanel +. endif +.endif =20 # This section defines tests for optional software. These work off four # types of variables: WANT_GNOME, WITH_GNOME, HAVE_GNOME and USE_GNOME. @@ -225,18 +374,28 @@ # ... Do some other things ... # .endif =20 +# We also check each component to see if it has a desktop requirement. If +# it does, and its requirement disagrees with the user's chosen desktop, +# do not add the component to the HAVE_GNOME list. + _USE_GNOME_SAVED:=3D${USE_GNOME} HAVE_GNOME?=3D .if (defined(WANT_GNOME) && !defined(WITHOUT_GNOME)) . for component in ${_USE_GNOME_ALL} -. if exists(${${component}_DETECT}) +. if defined(WITH_GNOME_DESKTOP) && defined(${component}_GNOME_DESKTO= P) +. if ${WITH_GNOME_DESKTOP}=3D=3D${${component}_GNOME_DESKTOP} HAVE_GNOME+=3D ${component} -. elif defined(WITH_GNOME) -. if ${WITH_GNOME}=3D=3D"yes" || ${WITH_GNOME:M${component}}!=3D"" ||= \ - ${WITH_GNOME}=3D=3D"1" +. endif +. else +. if exists(${${component}_DETECT}) HAVE_GNOME+=3D ${component} -. endif -. endif +. elif defined(WITH_GNOME) +. if ${WITH_GNOME}=3D=3D"yes" || ${WITH_GNOME:M${component}}!= =3D"" || \ + ${WITH_GNOME}=3D=3D"1" +HAVE_GNOME+=3D ${component} +. endif +. endif +. endif . endfor .elif defined(WITHOUT_GNOME) . if ${WITHOUT_GNOME}!=3D"yes" && ${WITHOUT_GNOME}!=3D"1" @@ -263,8 +422,17 @@ . endfor . endfor =20 -# Then use already expanded USE_GNOME_IMPL to expand USE_GNOME +# Then use already expanded USE_GNOME_IMPL to expand USE_GNOME. +# Also, check to see if each component has a desktop requirement. If it d= oes, +# and if the user's chosen desktop is not of the same version, mark the +# port as broken. . for component in ${USE_GNOME} +. if defined(WITH_GNOME_DESKTOP) && defined(${component}_GNOME_DESKTO= P) +. if ${WITH_GNOME_DESKTOP}!=3D${${component}_GNOME_DESKTOP} +BROKEN=3D ${PORTNAME} wants to use the GNOME ${${component}_GNOME_DESKTOP}= =20 +BROKEN+=3Ddesktop, but you wish to use the GNOME ${WITH_GNOME_DESKTOP} des= ktop +. endif +. endif . if ${_USE_GNOME_ALL:M${component}}=3D=3D"" BROKEN=3D "Unknown component ${component}" . endif --=-Jg6iCZv2IYfGIC633PZy-- --=-TfuDRVsLB817dvG6SXPo Content-Type: application/pgp-signature; name=signature.asc Content-Description: This is a digitally signed message part -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.1 (FreeBSD) iD8DBQA+Oe+yb2iPiv4Uz4cRAgasAJ98Dgjsv0zBNER2IJSO1Z+wXGdkngCcCW49 Jk6G4UTs7cExgOi3Nzjc8qM= =EFWc -----END PGP SIGNATURE----- --=-TfuDRVsLB817dvG6SXPo-- To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-gnome" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1043984306.30324.45.camel>