Subversion Repositories Kolibri OS

Rev

Go to most recent revision | Blame | Last modification | View Log | Download | RSS feed

  1. --------------------------------------------------------------------------------
  2.   Build Instructions for Monkey NetSurf                            13 March 2011
  3. --------------------------------------------------------------------------------
  4.  
  5.   This document provides instructions for building the Monkey
  6.   automation version of NetSurf and provides guidance on obtaining
  7.   NetSurf's build dependencies.
  8.  
  9.   Monkey NetSurf has been tested on Ubuntu 10.10/amd64.
  10.  
  11.  
  12.   Building and executing NetSurf
  13.   ==============================
  14.  
  15.   First of all, you should examine the contents of Makefile.defaults
  16.   and enable and disable relevant features as you see fit by creating
  17.   a Makefile.config file.  Some of these options can be automatically
  18.   detected and used, and where this is the case they are set to such.
  19.   Others cannot be automatically detected from the Makefile, so you
  20.   will either need to install the dependencies, or set them to NO.
  21.  
  22.   You should then obtain NetSurf's dependencies, keeping in mind which options
  23.   you have enabled in the configuration file.  See the next section for
  24.   specifics.
  25.  
  26.   Once done, to build Monkey NetSurf on a UNIX-like platform, simply run:
  27.  
  28.       $ make TARGET=monkey
  29.  
  30.   If that produces errors, you probably don't have some of NetSurf's
  31.   build dependencies installed. See "Obtaining NetSurf's dependencies"
  32.   below. Or turn off the complaining features in a Makefile.config
  33.   file. You may need to "make clean" before attempting to build after
  34.   installing the dependencies.
  35.  
  36.   Run NetSurf by executing the "nsmonkey" command from within the build tree.
  37.  
  38.       $ ./nsmonkey
  39.  
  40.   If you are packaging NetSurf, do NOT package nsmonkey.  It is a debug tool.
  41.  
  42.  
  43.   Obtaining NetSurf's build dependencies
  44.   ======================================
  45.  
  46.   Many of NetSurf's dependencies are packaged on various operating systems.
  47.   The remainder must be installed manually.  Currently, some of the libraries
  48.   developed as part of the NetSurf project have not had official releases.
  49.   Hopefully they will soon be released with downloadable tarballs and packaged
  50.   in common distros.  For now, you'll have to make do with Git checkouts.
  51.  
  52.   Some of NetSurf's own libraries will be installed in /usr/local/ by default.
  53.   Fedora, and perhaps some other distributions of Linux, do not ship a
  54.   pkg-config that will search here, so you will either need to change where
  55.   these libraries install, or do the following before building NetSurf itself;
  56.  
  57.       $ PKG_CONFIG_PATH=/usr/local/lib/pkgconfig
  58.       $ export PKG_CONFIG_PATH
  59.  
  60.   Package installation
  61. ----------------------
  62.  
  63.   Debian-like OS:
  64.  
  65.       $ apt-get install libcurl3-dev
  66.  
  67.   Recent OS versions might need libcurl4-dev instead of libcurl3-dev but
  68.   note that when it has not been built with OpenSSL, the SSL_CTX is not
  69.   available and results that certification details won't be presented in case
  70.   they are invalid.  But as this is currently unimplemented in the GTK
  71.   flavour of NetSurf, this won't make a difference at all.
  72.  
  73.  
  74.   The NetSurf project's libraries
  75.   -------------------------------
  76.  
  77.   The NetSurf project has developed several libraries which are required by
  78.   the browser. These are:
  79.  
  80.   LibParserUtils  --  Parser building utility functions
  81.   LibWapcaplet    --  String internment
  82.   Hubbub          --  HTML5 compliant HTML parser
  83.   LibCSS          --  CSS parser and selection engine
  84.   LibNSGIF        --  GIF format image decoder
  85.   LibNSBMP        --  BMP and ICO format image decoder
  86.   LibROSprite     --  RISC OS Sprite format image decoder
  87.  
  88.   To fetch each of these libraries, run the appropriate commands from the
  89.   Docs/LIBRARIES file.
  90.  
  91.   To build and install these libraries, simply enter each of their directories
  92.   and run:
  93.  
  94.       $ sudo make install
  95.  
  96.   | Note: We advise enabling iconv() support in libparserutils, which vastly
  97.   |       increases the number of supported character sets.  To do this,
  98.   |       create a file called Makefile.config.override in the libparserutils
  99.   |       directory, containing the following line:
  100.   |
  101.   |           CFLAGS += -DWITH_ICONV_FILTER
  102.   |
  103.   |       For more information, consult the libparserutils README file.
  104.  
  105.