mirror of
https://github.com/netsurf-browser/netsurf
synced 2024-12-22 20:16:54 +03:00
90 lines
3.7 KiB
Plaintext
90 lines
3.7 KiB
Plaintext
|
--------------------------------------------------------------------------------
|
||
|
Build Instructions for Cocoa NetSurf 13 January 2011
|
||
|
--------------------------------------------------------------------------------
|
||
|
|
||
|
This document provides instructions for building the Cocoa version of NetSurf
|
||
|
and provides guidance on obtaining NetSurf's build dependencies.
|
||
|
|
||
|
Cocoa NetSurf has been tested on Mac OS X 10.6 on Intel and on Mac OS X 10.5
|
||
|
on ppc.
|
||
|
|
||
|
Building and executing NetSurf
|
||
|
================================
|
||
|
|
||
|
After installing the dependencies NetSurf can be built in Xcode using the provided
|
||
|
project file "NetSurf.xcodeproj". This builds a version using only the minimal set
|
||
|
of dependencies (LibParserUtils, LibWapcaplet, Hubbub, LibCSS) and libraries provided
|
||
|
by Mac OS X.
|
||
|
|
||
|
To build a more complete version a local configuration file has to be created. To
|
||
|
do this open a Terminal and change to the "cocoa/config" folder and run this command:
|
||
|
|
||
|
$ sh detect.sh --with-jpeg=<prefix for libjpeg> --with-mng=<prefix for libmng>
|
||
|
|
||
|
You can leave out the options for the JPEG and MNG libraries if you don't have them
|
||
|
installed.
|
||
|
|
||
|
This script uses the "pkg-config" program to find the required libraries and generates
|
||
|
the file "local.xcconfig". After that NetSurf can be built using Xcode.
|
||
|
|
||
|
Obtaining NetSurf's build dependencies
|
||
|
========================================
|
||
|
|
||
|
Many of NetSurf's dependencies are packaged on various operating systems.
|
||
|
The remainder must be installed manually. Currently, some of the libraries
|
||
|
developed as part of the NetSurf project have not had official releases.
|
||
|
Hopefully they will soon be released with downloadable tarballs and packaged
|
||
|
in common distros. For now, you'll have to make do with svn checkouts.
|
||
|
|
||
|
Package installation
|
||
|
----------------------
|
||
|
|
||
|
For building the other NetSurf libraries and for configuring NetSurf the
|
||
|
"pkg-config" tool is required. It can be installed either via fink, macports
|
||
|
or homebrew or from source.
|
||
|
|
||
|
OpenSSL, LibXML2, LibPNG, curl, iconv and zlib are provided by Mac OS X.
|
||
|
|
||
|
LibJPEG and LibMNG can be installed from source or using one of the mentioned
|
||
|
package managers.
|
||
|
|
||
|
|
||
|
The NetSurf project's libraries
|
||
|
---------------------------------
|
||
|
|
||
|
The NetSurf project has developed several libraries which are required by
|
||
|
the browser. These are:
|
||
|
|
||
|
LibParserUtils -- Parser building utility functions
|
||
|
LibWapcaplet -- String internment
|
||
|
Hubbub -- HTML5 compliant HTML parser
|
||
|
LibCSS -- CSS parser and selection engine
|
||
|
LibNSGIF -- GIF format image decoder
|
||
|
LibNSBMP -- BMP and ICO format image decoder
|
||
|
LibROSprite -- RISC OS Sprite format image decoder
|
||
|
|
||
|
To fetch each of these libraries, run the following commands:
|
||
|
|
||
|
$ svn co svn://svn.netsurf-browser.org/trunk/libparserutils
|
||
|
$ svn co svn://svn.netsurf-browser.org/trunk/libwapcaplet
|
||
|
$ svn co svn://svn.netsurf-browser.org/trunk/hubbub
|
||
|
$ svn co svn://svn.netsurf-browser.org/trunk/libcss
|
||
|
$ svn co svn://svn.netsurf-browser.org/trunk/libnsgif
|
||
|
$ svn co svn://svn.netsurf-browser.org/trunk/libnsbmp
|
||
|
$ svn co svn://svn.netsurf-browser.org/trunk/librosprite
|
||
|
|
||
|
To build and install these libraries, simply enter each of their directories
|
||
|
and run:
|
||
|
|
||
|
$ sudo make install
|
||
|
|
||
|
| Note: We advise enabling ivonv() support in libparserutils, which vastly
|
||
|
| increases the number of supported character sets. To do this,
|
||
|
| create a file called Makefile.config.override in the libparserutils
|
||
|
| directory, containing the following line:
|
||
|
|
|
||
|
| CFLAGS += -DWITH_ICONV_FILTER
|
||
|
|
|
||
|
| For more information, consult the libparserutils README file.
|
||
|
|