[gnome-shell] Build the full GTK+ 3.0 stack



commit e48d119801f68cbd638c2dcda98c6ea1222a2264
Author: Owen W. Taylor <otaylor fishsoup net>
Date:   Mon Jul 5 20:27:26 2010 -0400

    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

 tools/build/gnome-shell-build-setup.sh |   35 +++++++------
 tools/build/gnome-shell.modules        |   88 +++++++++++++++++++++++--------
 2 files changed, 83 insertions(+), 40 deletions(-)
---
diff --git a/tools/build/gnome-shell-build-setup.sh b/tools/build/gnome-shell-build-setup.sh
index b03fd42..b772a7f 100755
--- a/tools/build/gnome-shell-build-setup.sh
+++ b/tools/build/gnome-shell-build-setup.sh
@@ -47,13 +47,14 @@ fi
 # libtool, pkgconfig
 #
 # Devel packages needed by gnome-shell and its deps:
-# dbus-glib, gconf, GL, gnome-menus, gstreamer, gtk, libffi,
-# libgnomeui, librsvg, libwnck, libxml2, python, readline,
-# spidermonkey ({mozilla,firefox,xulrunner}-js), xdamage
+# dbus-glib, GL, gnome-menus, gstreamer, libffi,
+# libjasper, libjpeg, libpng, libtiff, libwnck,
+# libxml2, python,readline, spidermonkey ({mozilla,firefox,xulrunner}-js),
+# startup-notification, xdamage
 #
 # Non-devel packages needed by gnome-shell and its deps:
 # glxinfo, gstreamer-plugins-base, gstreamer-plugins-good,
-# python, pygobject, gnome-python (gconf), gnome-terminal*
+# gvfs, python, pygobject, gnome-python (gconf), gnome-terminal*
 # Xephyr*, zenity
 #
 # (*) only needed for --xephyr
@@ -76,12 +77,12 @@ if test x$system = xUbuntu -o x$system = xDebian -o x$system = xLinuxMint ; then
   reqd=""
   for pkg in \
     build-essential curl \
-    automake bison flex git-core gnome-common gtk-doc-tools \
-    libdbus-glib-1-dev libgconf2-dev libgtk2.0-dev libffi-dev \
-    libgnome-menu-dev libgnome-desktop-dev librsvg2-dev libwnck-dev libgl1-mesa-dev \
-    libreadline5-dev libxml2-dev mesa-common-dev mesa-utils python-dev python-gconf python-gobject \
-    xulrunner-dev xserver-xephyr gnome-terminal libcroco3-dev \
-    libgstreamer0.10-dev gstreamer0.10-plugins-base gstreamer0.10-plugins-good \
+    automake bison flex git-core gnome-common gtk-doc-tools gvfs gvfs-backends \
+    libdbus-glib-1-dev libffi-dev libgnome-menu-dev libgnome-desktop-dev \
+    libjasper-dev libjpeg-dev libpng-dev libstartup-notification0-dev libtiff-dev \
+    libwnck-dev libgl1-mesa-devlibreadline5-dev libxml2-dev mesa-common-dev mesa-utils \
+    python-dev python-gconf python-gobject xulrunner-dev xserver-xephyr gnome-terminal \
+    libcroco3-dev libgstreamer0.10-dev gstreamer0.10-plugins-base gstreamer0.10-plugins-good \
     ; do
       if ! dpkg_is_installed $pkg; then
         reqd="$pkg $reqd"
@@ -98,13 +99,13 @@ if test x$system = xFedora ; then
   reqd=""
   for pkg in \
     binutils curl gcc gcc-c++ make \
-    automake bison flex git gnome-common gnome-doc-utils intltool \
-    libtool pkgconfig \
-    dbus-glib-devel GConf2-devel gnome-menus-devel gnome-python2-gconf gtk2-devel libffi-devel \
-    gnome-desktop-devel librsvg2-devel libwnck-devel mesa-libGL-devel \
+    automake bison flex git gnome-common gnome-doc-utils gvfs intltool \
+    libtool pkgconfig dbus-glib-devel gnome-desktop-devel gnome-menus-devel \
+    gnome-python2-gconf jasper-devel libffi-devel libjpeg-devel \
+    libpng-devel libtiff-devel libwnck-devel mesa-libGL-devel \
     python-devel pygobject2 readline-devel xulrunner-devel libXdamage-devel libcroco-devel \
     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
       if ! rpm -q $pkg > /dev/null 2>&1; then
         reqd="$pkg $reqd"
@@ -120,7 +121,7 @@ if test x$system = xSUSE ; then
   for pkg in \
     curl \
     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 \
     libcroco-devel xorg-x11-devel xorg-x11 xorg-x11-server-extra \
     ; do
@@ -140,7 +141,7 @@ if test x$system = xMandrivaLinux ; then
   for pkg in \
     curl \
     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 \
     libxdamage-devel mesa-demos x11-server-xephyr zenity \
     libcroco0.6-devel \
diff --git a/tools/build/gnome-shell.modules b/tools/build/gnome-shell.modules
index 0a90c7f..18c5db0 100644
--- a/tools/build/gnome-shell.modules
+++ b/tools/build/gnome-shell.modules
@@ -9,6 +9,8 @@
       href="git://git.gnome.org/"/>
   <repository type="git" name="git.moblin.org"
       href="git://git.moblin.org"/>
+  <repository type="tarball" name="cairo.org"
+      href="http://cairographics.org/"/>
 
   <autotools id="gobject-introspection">
     <branch repo="git.gnome.org" module="gobject-introspection"/>
@@ -46,27 +48,56 @@
     </dependencies>
   </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">
     <branch repo="git.gnome.org" module="pango"/>
     <dependencies>
       <dep package="glib"/>
       <dep package="gobject-introspection"/>
+      <dep package="cairo"/>
+    </dependencies>
+  </autotools>
+
+  <autotools id="gdk-pixbuf">
+    <branch repo="git.gnome.org" module="gdk-pixbuf"/>
+    <dependencies>
+      <dep package="glib"/>
+      <dep package="gobject-introspection"/>
     </dependencies>
   </autotools>
 
-  <autotools id="gtk+">
-    <branch repo="git.gnome.org" module="gtk+"/>
+  <autotools id="gtk3">
+    <branch checkoutdir="gtk3" repo="git.gnome.org" module="gtk+"/>
     <dependencies>
       <dep package="glib"/>
       <dep package="pango"/>
       <dep package="atk"/>
+      <dep package="gdk-pixbuf"/>
     </dependencies>
   </autotools>
 
-  <autotools id="gir-repository" autogenargs="--with-skipped-gir-modules=Gst,Poppler,WebKit,GSSDP,Unique,GMenu,Wnck,GooCanvas,Notify,GnomeKeyring">
-    <branch repo="git.gnome.org" module="gir-repository"/>
+  <autotools id="gtk-engines-3">
+    <branch repo="git.gnome.org" module="gtk-engines"/>
     <dependencies>
-        <dep package="gobject-introspection"/>
+      <dep package="gtk3"/>
     </dependencies>
   </autotools>
 
@@ -75,9 +106,6 @@
     <dependencies>
         <dep package="gobject-introspection"/>
     </dependencies>
-    <after>
-      <dep package="gir-repository"/>
-    </after>
   </autotools>
 
   <autotools id="json-glib">
@@ -85,9 +113,6 @@
     <dependencies>
         <dep package="gobject-introspection"/>
     </dependencies>
-    <after>
-      <dep package="gir-repository"/>
-    </after>
   </autotools>
 
   <autotools id="clutter">
@@ -95,11 +120,8 @@
     <dependencies>
         <dep package="json-glib"/>
         <dep package="gobject-introspection"/>
+        <dep package="pango"/>
     </dependencies>
-    <after>
-      <dep package="gir-repository"/>
-      <dep package="pango"/>
-    </after>
   </autotools>
 
   <autotools id="dconf">
@@ -119,15 +141,29 @@
     </dependencies>
   </autotools>
 
-  <autotools id="mutter" autogenargs="--with-clutter">
+  <autotools id="mutter" autogenargs="--with-gtk=3.0">
     <branch repo="git.gnome.org" module="mutter"/>
     <dependencies>
       <dep package="clutter"/>
       <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>
-    <after>
-      <dep package="gtk+"/>
-    </after>
   </autotools>
 
   <autotools id="gnome-shell">
@@ -139,20 +175,26 @@
         <dep package="dconf"/>
         <dep package="gconf"/>
         <dep package="glib"/>
+        <dep package="gnome-desktop-3"/>
     </dependencies>
   </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">
     <dependencies>
-        <dep package="gir-repository"/>
-        <dep package="gnome-shell"/>
+      <dep package="librsvg"/>
+      <dep package="gtk-engines-3"/>
+      <dep package="gnome-shell"/>
     </dependencies>
   </metamodule>
 
   <metamodule id="gnome-shell-full">
     <dependencies>
-        <dep package="gtk+"/>
-        <dep package="gnome-shell"/>
+      <dep package="librsvg"/>
+      <dep package="gtk-engines-3"/>
+      <dep package="gnome-shell"/>
     </dependencies>
   </metamodule>
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]