Build the full GTK+ 3.0 stack

Now that we are targetting GTK+ 3.0, always build the full GTK+ stack,
along with librsvg and gtk-engines (so we have an SVG loader, and maybe
the user's GTK+ theme engine.)

New modules:

 gtk+-3, gtk-engines-3, gnome-desktop-3, gdk-pixbuf, pixman, cairo, librsvg

Removed modules:

 gir-repository

Add new requirements to gnome-shell-build-setup.sh and remove some
older requirements we no longer need.

Based on a patch from Colin Walters

https://bugzilla.gnome.org/show_bug.cgi?id=621845
This commit is contained in:
Owen W. Taylor 2010-07-05 20:27:26 -04:00
parent 643c7fdb3a
commit e48d119801
2 changed files with 83 additions and 40 deletions

View File

@ -47,13 +47,14 @@ fi
# libtool, pkgconfig # libtool, pkgconfig
# #
# Devel packages needed by gnome-shell and its deps: # Devel packages needed by gnome-shell and its deps:
# dbus-glib, gconf, GL, gnome-menus, gstreamer, gtk, libffi, # dbus-glib, GL, gnome-menus, gstreamer, libffi,
# libgnomeui, librsvg, libwnck, libxml2, python, readline, # libjasper, libjpeg, libpng, libtiff, libwnck,
# spidermonkey ({mozilla,firefox,xulrunner}-js), xdamage # libxml2, python,readline, spidermonkey ({mozilla,firefox,xulrunner}-js),
# startup-notification, xdamage
# #
# Non-devel packages needed by gnome-shell and its deps: # Non-devel packages needed by gnome-shell and its deps:
# glxinfo, gstreamer-plugins-base, gstreamer-plugins-good, # glxinfo, gstreamer-plugins-base, gstreamer-plugins-good,
# python, pygobject, gnome-python (gconf), gnome-terminal* # gvfs, python, pygobject, gnome-python (gconf), gnome-terminal*
# Xephyr*, zenity # Xephyr*, zenity
# #
# (*) only needed for --xephyr # (*) only needed for --xephyr
@ -76,12 +77,12 @@ if test x$system = xUbuntu -o x$system = xDebian -o x$system = xLinuxMint ; then
reqd="" reqd=""
for pkg in \ for pkg in \
build-essential curl \ build-essential curl \
automake bison flex git-core gnome-common gtk-doc-tools \ automake bison flex git-core gnome-common gtk-doc-tools gvfs gvfs-backends \
libdbus-glib-1-dev libgconf2-dev libgtk2.0-dev libffi-dev \ libdbus-glib-1-dev libffi-dev libgnome-menu-dev libgnome-desktop-dev \
libgnome-menu-dev libgnome-desktop-dev librsvg2-dev libwnck-dev libgl1-mesa-dev \ libjasper-dev libjpeg-dev libpng-dev libstartup-notification0-dev libtiff-dev \
libreadline5-dev libxml2-dev mesa-common-dev mesa-utils python-dev python-gconf python-gobject \ libwnck-dev libgl1-mesa-devlibreadline5-dev libxml2-dev mesa-common-dev mesa-utils \
xulrunner-dev xserver-xephyr gnome-terminal libcroco3-dev \ python-dev python-gconf python-gobject xulrunner-dev xserver-xephyr gnome-terminal \
libgstreamer0.10-dev gstreamer0.10-plugins-base gstreamer0.10-plugins-good \ libcroco3-dev libgstreamer0.10-dev gstreamer0.10-plugins-base gstreamer0.10-plugins-good \
; do ; do
if ! dpkg_is_installed $pkg; then if ! dpkg_is_installed $pkg; then
reqd="$pkg $reqd" reqd="$pkg $reqd"
@ -98,13 +99,13 @@ if test x$system = xFedora ; then
reqd="" reqd=""
for pkg in \ for pkg in \
binutils curl gcc gcc-c++ make \ binutils curl gcc gcc-c++ make \
automake bison flex git gnome-common gnome-doc-utils intltool \ automake bison flex git gnome-common gnome-doc-utils gvfs intltool \
libtool pkgconfig \ libtool pkgconfig dbus-glib-devel gnome-desktop-devel gnome-menus-devel \
dbus-glib-devel GConf2-devel gnome-menus-devel gnome-python2-gconf gtk2-devel libffi-devel \ gnome-python2-gconf jasper-devel libffi-devel libjpeg-devel \
gnome-desktop-devel librsvg2-devel libwnck-devel mesa-libGL-devel \ libpng-devel libtiff-devel libwnck-devel mesa-libGL-devel \
python-devel pygobject2 readline-devel xulrunner-devel libXdamage-devel libcroco-devel \ python-devel pygobject2 readline-devel xulrunner-devel libXdamage-devel libcroco-devel \
libxml2-devel gstreamer-devel gstreamer-plugins-base gstreamer-plugins-good \ libxml2-devel gstreamer-devel gstreamer-plugins-base gstreamer-plugins-good \
glx-utils xorg-x11-server-Xephyr gnome-terminal zenity \ glx-utils startup-notification-devel xorg-x11-server-Xephyr gnome-terminal zenity \
; do ; do
if ! rpm -q $pkg > /dev/null 2>&1; then if ! rpm -q $pkg > /dev/null 2>&1; then
reqd="$pkg $reqd" reqd="$pkg $reqd"
@ -120,7 +121,7 @@ if test x$system = xSUSE ; then
for pkg in \ for pkg in \
curl \ curl \
bison flex gnome-doc-utils-devel \ bison flex gnome-doc-utils-devel \
gconf2-devel libffi-devel gnome-desktop-devel librsvg-devel libwnck-devel \ libffi-devel gnome-desktop-devel libwnck-devel \
xorg-x11-proto-devel readline-devel mozilla-xulrunner190-devel \ xorg-x11-proto-devel readline-devel mozilla-xulrunner190-devel \
libcroco-devel xorg-x11-devel xorg-x11 xorg-x11-server-extra \ libcroco-devel xorg-x11-devel xorg-x11 xorg-x11-server-extra \
; do ; do
@ -140,7 +141,7 @@ if test x$system = xMandrivaLinux ; then
for pkg in \ for pkg in \
curl \ curl \
bison flex gnome-common gnome-doc-utils gtk-doc intltool \ bison flex gnome-common gnome-doc-utils gtk-doc intltool \
libGConf2-devel ffi5-devel libgnomeui2-devel librsvg2-devel \ ffi5-devel \
libwnck-1-devel GL-devel readline-devel libxulrunner-devel \ libwnck-1-devel GL-devel readline-devel libxulrunner-devel \
libxdamage-devel mesa-demos x11-server-xephyr zenity \ libxdamage-devel mesa-demos x11-server-xephyr zenity \
libcroco0.6-devel \ libcroco0.6-devel \

View File

@ -9,6 +9,8 @@
href="git://git.gnome.org/"/> href="git://git.gnome.org/"/>
<repository type="git" name="git.moblin.org" <repository type="git" name="git.moblin.org"
href="git://git.moblin.org"/> href="git://git.moblin.org"/>
<repository type="tarball" name="cairo.org"
href="http://cairographics.org/"/>
<autotools id="gobject-introspection"> <autotools id="gobject-introspection">
<branch repo="git.gnome.org" module="gobject-introspection"/> <branch repo="git.gnome.org" module="gobject-introspection"/>
@ -46,27 +48,56 @@
</dependencies> </dependencies>
</autotools> </autotools>
<autotools id="pixman" autogenargs="--disable-gtk">
<branch module="releases/pixman-0.18.2.tar.gz" version="0.18.2"
repo="cairo.org"
hash="sha256:80aee833b429d105d2c7593ef96993da04441b3b747084f1f3bfd7be594e1c45"
md5sum="5d1378fa61610dd5d3c7e0111b2c5253" size="510704">
</branch>
</autotools>
<autotools id="cairo">
<branch module="snapshots/cairo-1.9.10.tar.gz" version="1.9.10"
repo="cairo.org"
hash="sha256:0341190e16e40670503fb2bd815692ebbe66a2843241c3d8e02f75bfb1b76ff4"
md5sum="737d533e15302ae355ff9a3cf16bc467" size="23153906">
</branch>
<dependencies>
<dep package="pixman"/>
</dependencies>
</autotools>
<autotools id="pango"> <autotools id="pango">
<branch repo="git.gnome.org" module="pango"/> <branch repo="git.gnome.org" module="pango"/>
<dependencies> <dependencies>
<dep package="glib"/> <dep package="glib"/>
<dep package="gobject-introspection"/> <dep package="gobject-introspection"/>
<dep package="cairo"/>
</dependencies> </dependencies>
</autotools> </autotools>
<autotools id="gtk+"> <autotools id="gdk-pixbuf">
<branch repo="git.gnome.org" module="gtk+"/> <branch repo="git.gnome.org" module="gdk-pixbuf"/>
<dependencies>
<dep package="glib"/>
<dep package="gobject-introspection"/>
</dependencies>
</autotools>
<autotools id="gtk3">
<branch checkoutdir="gtk3" repo="git.gnome.org" module="gtk+"/>
<dependencies> <dependencies>
<dep package="glib"/> <dep package="glib"/>
<dep package="pango"/> <dep package="pango"/>
<dep package="atk"/> <dep package="atk"/>
<dep package="gdk-pixbuf"/>
</dependencies> </dependencies>
</autotools> </autotools>
<autotools id="gir-repository" autogenargs="--with-skipped-gir-modules=Gst,Poppler,WebKit,GSSDP,Unique,GMenu,Wnck,GooCanvas,Notify,GnomeKeyring"> <autotools id="gtk-engines-3">
<branch repo="git.gnome.org" module="gir-repository"/> <branch repo="git.gnome.org" module="gtk-engines"/>
<dependencies> <dependencies>
<dep package="gobject-introspection"/> <dep package="gtk3"/>
</dependencies> </dependencies>
</autotools> </autotools>
@ -75,9 +106,6 @@
<dependencies> <dependencies>
<dep package="gobject-introspection"/> <dep package="gobject-introspection"/>
</dependencies> </dependencies>
<after>
<dep package="gir-repository"/>
</after>
</autotools> </autotools>
<autotools id="json-glib"> <autotools id="json-glib">
@ -85,9 +113,6 @@
<dependencies> <dependencies>
<dep package="gobject-introspection"/> <dep package="gobject-introspection"/>
</dependencies> </dependencies>
<after>
<dep package="gir-repository"/>
</after>
</autotools> </autotools>
<autotools id="clutter"> <autotools id="clutter">
@ -95,11 +120,8 @@
<dependencies> <dependencies>
<dep package="json-glib"/> <dep package="json-glib"/>
<dep package="gobject-introspection"/> <dep package="gobject-introspection"/>
</dependencies>
<after>
<dep package="gir-repository"/>
<dep package="pango"/> <dep package="pango"/>
</after> </dependencies>
</autotools> </autotools>
<autotools id="dconf"> <autotools id="dconf">
@ -119,15 +141,29 @@
</dependencies> </dependencies>
</autotools> </autotools>
<autotools id="mutter" autogenargs="--with-clutter"> <autotools id="mutter" autogenargs="--with-gtk=3.0">
<branch repo="git.gnome.org" module="mutter"/> <branch repo="git.gnome.org" module="mutter"/>
<dependencies> <dependencies>
<dep package="clutter"/> <dep package="clutter"/>
<dep package="gconf"/> <dep package="gconf"/>
<dep package="gtk3"/>
</dependencies>
</autotools>
<autotools id="librsvg" supports-non-srcdir-builds="no">
<branch repo="git.gnome.org" module="librsvg"/>
<dependencies>
<dep package="gtk3"/>
</dependencies>
</autotools>
<autotools id="gnome-desktop-3">
<branch repo="git.gnome.org" checkoutdir="gnome-desktop-3" module="gnome-desktop"/>
<dependencies>
<dep package="glib"/>
<dep package="gtk3"/>
<dep package="gconf"/>
</dependencies> </dependencies>
<after>
<dep package="gtk+"/>
</after>
</autotools> </autotools>
<autotools id="gnome-shell"> <autotools id="gnome-shell">
@ -139,19 +175,25 @@
<dep package="dconf"/> <dep package="dconf"/>
<dep package="gconf"/> <dep package="gconf"/>
<dep package="glib"/> <dep package="glib"/>
<dep package="gnome-desktop-3"/>
</dependencies> </dependencies>
</autotools> </autotools>
<!-- This doesn't actually use gir-repository anymore,
kept just for compatibility to avoid having everyone
change their ~/.jhbuildrc -->
<metamodule id="gnome-shell-using-gir-repository"> <metamodule id="gnome-shell-using-gir-repository">
<dependencies> <dependencies>
<dep package="gir-repository"/> <dep package="librsvg"/>
<dep package="gtk-engines-3"/>
<dep package="gnome-shell"/> <dep package="gnome-shell"/>
</dependencies> </dependencies>
</metamodule> </metamodule>
<metamodule id="gnome-shell-full"> <metamodule id="gnome-shell-full">
<dependencies> <dependencies>
<dep package="gtk+"/> <dep package="librsvg"/>
<dep package="gtk-engines-3"/>
<dep package="gnome-shell"/> <dep package="gnome-shell"/>
</dependencies> </dependencies>
</metamodule> </metamodule>