mirror of
https://github.com/netsurf-browser/netsurf
synced 2024-12-24 04:56:50 +03:00
3938a08bf9
svn path=/trunk/netsurf/; revision=11462
102 lines
4.1 KiB
Plaintext
102 lines
4.1 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:
|
|
|
|
$ make
|
|
$ sudo make install
|
|
|
|
This command builds the libraries only for the active architecture. To build
|
|
universal binaries use those commands:
|
|
|
|
$ make UNIVERSAL="i386 x86_64 ppc ppc64"
|
|
$ sudo make install
|
|
|
|
If you are building NetSurf for using it on only one computer this is not
|
|
necessary, but if you want to distribute your binary you should build universal
|
|
binaries. You can also leave some of the platform names out, if you don't
|
|
require them.
|
|
|
|
| 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.
|
|
|