Changes between Version 103 and Version 104 of BuildingGtk


Ignore:
Timestamp:
Mar 13, 2013 12:57:31 PM (8 years ago)
Author:
mrobinson@webkit.org
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • BuildingGtk

    v103 v104  
    99== Dependencies ==
    1010
    11 ''Note: Additional requirements may apply for running tests; see WebKitGtkLayoutTests.''
    12 
    1311    1. '''Install the base WebKitGTK+ dependencies:'''
    1412{{{
    15 $ sudo apt-get install autoconf \
    16                        automake \
    17                        autotools-dev \
    18                        bison \
    19                        flex \
    20                        gail-3.0 \
    21                        gawk \
    22                        gnome-common \
    23                        autopoint \
    24                        gperf \
    25                        ruby \
    26                        gtk-doc-tools \
    27                        libenchant-dev \
    28                        libgail-dev \
    29                        libgail-3-dev \
    30                        libgeoclue-dev \
    31                        libgirepository1.0-dev \
    32                        libgtk-3-dev \
    33                        libgstreamer-plugins-base0.10-dev \
    34                        libgudev-1.0-dev \
    35                        libicu-dev \
    36                        libgl1-mesa-glx \
    37                        libgl1-mesa-dev \
    38                        libjpeg62-dev \
    39                        libpango1.0-dev \
    40                        libpng12-dev \
    41                        libsqlite3-dev \
    42                        libtool \
    43                        libxslt1-dev \
    44                        libxt-dev \
    45                        libxtst-dev \
    46                        libgnutls-dev \
    47                        libvorbis-dev libtheora-dev libfaad-dev libmpg123-dev libpulse-dev libopus-dev \
    48                        libsecret-1-dev \
    49                        libwebp-dev \
    50                        intltool \
    51                        librsvg2-dev
     13$ Tools/gtk/install-dependencies
    5214}}}
    5315
    54     2. '''Install the jhbuild module dependencies:'''
    55 {{{
    56 $ sudo apt-get install gobject-introspection \
    57                        icon-naming-utils \
    58                        libgcrypt11-dev \
    59                        libgpg-error-dev \
    60                        libp11-kit-dev \
    61                        libtiff4-dev \
    62                        libcroco3-dev
    63 
    64 }}}
    65 
    66    3. '''Download and build all jhbuild modules:'''
     16   2. '''Download and build all jhbuild modules:'''
    6717{{{
    6818$ Tools/Scripts/update-webkitgtk-libs
     
    7626
    7727== Notes ==
    78 
    7928    * JHBuild configuration and module files are stored as `Tools/gtk/jhbuildrc` and `Tools/gtk/jhbuild.modules`.
    8029    * If everything builds properly tests should typically pass on your system. Please file a bug if they do not.
    81     * If you get build errors saying a library could not be found but you have the appropriate packages installed make sure you have up-to-date multiarch-support and binutils (or binutils-gold) packages
    82 
    83 == Extending the jhbuild environment ==
    84 
    85 If for some reason you would like to have jhbuild build more modules, or simply newer versions of some of them - which is very useful if you are hacking Epiphany, you can extend the moduleset used by our jhbuild setup with a custom moduleset . To do that create your new moduleset file, set a couple environment variables (discussed bellow), and run ./Tools/Scripts/update-webkitgtk-libs to build and install your new modules. The file may look like this:
    86 
    87 {{{
    88 <?xml version="1.0"?>
    89 <!DOCTYPE moduleset SYSTEM "moduleset.dtd">
    90 <?xml-stylesheet type="text/xsl" href="moduleset.xsl"?>
    91 <moduleset>
    92 
    93   <repository type="git" name="git.gnome.org"
    94       href="git://git.gnome.org/"/>
    95   <repository type="tarball" name="ftp.gnome.org"
    96       href="http://ftp.gnome.org"/>
    97   <repository type="git" name="entropywave"
    98       href="git://code.entropywave.com/git/"/>
    99   <repository type="git" name="gstreamer"
    100       href="git://anongit.freedesktop.org/git/gstreamer/"/>
    101 
    102   <autotools id="gtk+">
    103     <dependencies>
    104       <dep package="glib"/>
    105       <dep package="cairo"/>
    106     </dependencies>
    107     <branch module="/pub/GNOME/sources/gtk+/3.0/gtk+-3.3.10.tar.xz" version="3.3.10"
    108             repo="ftp.gnome.org"
    109             hash="sha256:9808d509bfd42fce692b041a60f3fbb668e43324613c304724e7a727bb44a2a0"
    110             md5sum="5872bacb3778c954d3cc0eaf9cdc53ab"/>
    111   </autotools>
    112 
    113   <autotools id="glib">
    114     <dependencies>
    115       <dep package="libffi"/>
    116     </dependencies>
    117     <branch module="/pub/GNOME/sources/glib/2.31/glib-2.31.8.tar.xz" version="2.31.8"
    118             repo="ftp.gnome.org"
    119             hash="sha256:1ce3d275189000e1c50e92efcdb6447bc260b1e5c41699b7a1959e3e1928fbaa"
    120             md5sum="6909664f29fae2f00cc3181c8c6a6aa7"/>
    121   </autotools>
    122 
    123   <autotools id="libsoup">
    124     <dependencies>
    125       <dep package="glib-networking"/>
    126     </dependencies>
    127     <branch module="libsoup" version="2.37.5"
    128             repo="git.gnome.org"
    129             tag="5eddf1a9d2e041de95012ece3cf97fbc2236306d"/>
    130   </autotools>
    131 
    132   <autotools id="orc">
    133     <branch repo="entropywave" module="orc" checkoutdir="orc" />
    134   </autotools>
    135 
    136   <autotools id="gstreamer">
    137     <branch repo="gstreamer" module="gstreamer" checkoutdir="gstreamer" />
    138   </autotools>
    139 
    140   <autotools id="gst-plugins-base" autogenargs="--disable-examples" makeargs="ERROR_CFLAGS=">
    141     <dependencies>
    142       <dep package="gstreamer"/>
    143       <dep package="orc"/>
    144     </dependencies>
    145     <branch repo="gstreamer" module="gst-plugins-base" checkoutdir="gst-plugins-base"/>
    146   </autotools>
    147 
    148   <autotools id="gst-plugins-good" autogenargs="--disable-examples">
    149     <dependencies>
    150       <dep package="gstreamer"/>
    151       <dep package="gst-plugins-base"/>
    152       <dep package="libsoup"/>
    153     </dependencies>
    154     <branch repo="gstreamer" module="gst-plugins-good" checkoutdir="gst-plugins-good"/>
    155   </autotools>
    156 
    157 </moduleset>
    158 }}}
    159 
    160 To let the WebKit jhbuild environment know about the new files set the '''WEBKIT_EXTRA_MODULESETS''' to a file:// URI pointing to your file, like this:
    161 
    162 {{{
    163 $ export WEBKIT_EXTRA_MODULESETS=file:///home/user/my.modules
    164 }}}
    165 
    166 If you added new modules, set the '''WEBKIT_EXTRA_MODULES''' variable to a comma-separated list with their names. '''Please note:''' you have to run '''./Tools/Scripts/update-webkitgtk-libs''' with these environment variables set for the modules to be taken into consideration.
     30    * If you get build errors saying a library could not be found but you have the appropriate packages installed make sure you have up-to-date multiarch-support and binutils (or binutils-gold) packages.
     31    * You can also [wiki:WebKitGtkExtendingJHBuild add more modules to the default WebKit JHBuild].
    16732
    16833== Installation ==