Subversion Repositories Kolibri OS

Rev

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

  1. --------------------------------------------------------------------------------
  2.   Build Instructions for Cocoa NetSurf                         13 January 2011
  3. --------------------------------------------------------------------------------
  4.  
  5.   This document provides instructions for building the Cocoa version of NetSurf
  6.   and provides guidance on obtaining NetSurf's build dependencies.
  7.  
  8.   Cocoa NetSurf has been tested on Mac OS X 10.6 on Intel and on Mac OS X 10.5
  9.   on ppc.
  10.  
  11.  
  12.   Building NetSurf
  13. ==================
  14.  
  15.   After installing the dependencies NetSurf can be built either using the Xcode
  16.   project file 'cocoa/NetSurf.xcodeproj' or on the command line using the
  17.   Makefile:
  18.  
  19.      $ make TARGET=cocoa
  20.  
  21.   In both cases the actual build process is controlled by the Makefile.
  22.  
  23.   Obtaining NetSurf's build dependencies
  24. ========================================
  25.  
  26.   Many of NetSurf's dependencies are packaged on various operating systems.
  27.   The remainder must be installed manually.  Currently, some of the libraries
  28.   developed as part of the NetSurf project have not had official releases.
  29.   Hopefully they will soon be released with downloadable tarballs and packaged
  30.   in common distros.  For now, you'll have to make do with Git checkouts.
  31.  
  32.   Package installation
  33. ----------------------
  34.  
  35.   For building the other NetSurf libraries and for configuring NetSurf the
  36.   "pkg-config" tool is required. It can be installed either via fink, macports
  37.   or homebrew or from source.
  38.  
  39.   OpenSSL, LibPNG, curl, iconv and zlib are provided by Mac OS X.
  40.  
  41.   The curl library provided by Mac OS X 10.6 causes a crash while fetching
  42.   https resources, so you should install version 7.21.4 (or newer) of libcurl
  43.   if you are running on 10.6.
  44.  
  45.   LibJPEG and LibMNG can be installed from source or using one of the mentioned
  46.   package managers.
  47.  
  48.  
  49.   The NetSurf project's libraries
  50. ---------------------------------
  51.  
  52.   The NetSurf project has developed several libraries which are required by
  53.   the browser. These are:
  54.  
  55.   LibParserUtils  --  Parser building utility functions
  56.   LibWapcaplet    --  String internment
  57.   Hubbub          --  HTML5 compliant HTML parser
  58.   LibCSS          --  CSS parser and selection engine
  59.   LibNSGIF        --  GIF format image decoder
  60.   LibNSBMP        --  BMP and ICO format image decoder
  61.   LibROSprite     --  RISC OS Sprite format image decoder
  62.  
  63.   To fetch each of these libraries, run the appropriate commands from the
  64.   Docs/LIBRARIES file.
  65.  
  66.       $ make
  67.       $ sudo make install
  68.  
  69.   This command builds the libraries only for the active architecture. To build
  70.   universal binaries use those commands:
  71.  
  72.       $ make UNIVERSAL="i386 x86_64 ppc ppc64"
  73.       $ sudo make install
  74.  
  75.   If you are building NetSurf for using it on only one computer this is not
  76.   necessary, but if you want to distribute your binary you should build
  77.   universal binaries.  You can also leave some of the platform names out, if
  78.   you don't require them.
  79.  
  80.   | Note: We advise enabling iconv() support in libparserutils, which vastly
  81.   |       increases the number of supported character sets.  To do this,
  82.   |       create a file called Makefile.config.override in the libparserutils
  83.   |       directory, containing the following line:
  84.   |
  85.   |           CFLAGS += -DWITH_ICONV_FILTER
  86.   |
  87.   |       For more information, consult the libparserutils README file.
  88.