summaryrefslogtreecommitdiff
path: root/Docs
diff options
context:
space:
mode:
authorFran├žois Revel <mmu_man@netsurf-browser.org>2008-06-07 01:00:47 +0000
committerFran├žois Revel <mmu_man@netsurf-browser.org>2008-06-07 01:00:47 +0000
commit6cfdcb7b3cd5579e4e345fbd305bd2873149b718 (patch)
treeb856582e9e798b422211cb78f1a0c6ccf003a0a1 /Docs
parent461e520077347186ff87ad92d831c699b0d18090 (diff)
downloadnetsurf-6cfdcb7b3cd5579e4e345fbd305bd2873149b718.tar.gz
netsurf-6cfdcb7b3cd5579e4e345fbd305bd2873149b718.tar.bz2
Detailed the needed steps and deps for the BeOS build.
svn path=/trunk/netsurf/; revision=4290
Diffstat (limited to 'Docs')
-rw-r--r--Docs/BUILDING-BeOS108
1 files changed, 107 insertions, 1 deletions
diff --git a/Docs/BUILDING-BeOS b/Docs/BUILDING-BeOS
index 44ec4b80c..6a2fbfcde 100644
--- a/Docs/BUILDING-BeOS
+++ b/Docs/BUILDING-BeOS
@@ -6,8 +6,114 @@
of NetSurf and provides guidance on obtaining NetSurf's build dependencies.
BeOS NetSurf has been tested on Zeta only for now. There are still some
- issues to sort out for other BeOs versions.
+ issues to sort out for other BeOS versions.
There are still pending fixes against SVN before it can be build from BeOS
or Haiku.
+
+
+ Building and executing NetSurf
+=================================
+
+ To build NetSurf on a BeOS or Haiku, provided you have the relevant
+ build dependencies installed, simply run:
+
+ $ make
+
+ If that produces errors, you probably don't have some of NetSurf's build
+ dependencies installed. See "Obtaining NetSurf's dependencies" below. You
+ may need to "make clean" before attempting to build after installing the
+ dependencies. Also note BeOS has an old make command that won't work, see
+ below.
+
+
+ Obtaining NetSurf's dependencies
+==================================
+
+ Many of NetSurf's dependencies are either installed or available for BeOS and
+ Haiku. The remainder must be installed manually.
+
+ TODO: add some more here.
+
+ rc
+----
+
+ Building NetSurf needs the Haiku resource compiler (rc), that allows
+ importing files from resource definitions (.rdef).
+
+ $ cd <haiku-trunk-directory>
+ $ TARGET_PLATFORM=r5 jam -q rc
+ $ cp generated/objects/dano/x86/release/tools/rc/rc /boot/home/config/bin/
+
+
+ GNU make 3.81
+---------------
+
+ BeOS has an old make tool, which won't work when building NetSurf.
+ Haiku has 3.81 which is the one that works. For BeOS, one has to replace
+ the original make with one built from the Haiku tree, or install it as gmake:
+
+ $ cd <haiku-trunk-directory>
+ $ TARGET_PLATFORM=r5 jam -q make
+ $ cp generated/objects/r5/x86/release/bin/make/make /boot/home/config/bin/gmake
+
+
+ Lemon
+-------
+
+ BeOS doesn't come with the lemon parser generator, you'll need to download
+ it and build it yourself.
+
+ TODO: fix paths
+ $ wget http://www.sqlite.org/cvstrac/getfile/sqlite/tool/lemon.c
+ $ wget http://www.sqlite.org/cvstrac/getfile/sqlite/tool/lempar.c
+ $ gcc -o lemon lemon.c
+ $ cp lemon lempar.c /boot/home/config/bin/
+
+
+ cURL
+------
+
+ NetSurf uses cURL to fetch files from the network.
+ There is a patch against the official version on HaikuPorts.
+
+ TODO
+
+
+ libmng
+--------
+
+ NetSurf uses libMNG to display MNG and PNG files.
+ It should build just fine on BeOS.
+
+
+ libjpeg
+---------
+
+ NetSurf uses libjpeg to display JPEG files.
+ It should already be available in your dev kit.
+
+
+ OpenSSL
+----------
+
+ NetSurf uses OpenSSL for encrypted transfers.
+
+
+ General requirements
+----------------------
+
+ There is currently an issue on stdbool.h (unsigned char bool vs enum bool)
+ which needs to be fixed, for now one can use the Haiku version of the header
+ and copy it over the gcc-provided one.
+ $ cd <haiku-trunk-directory>
+ $ cp headers/build/gcc-2.95.3/stdbool.h /boot/develop/tools/gnupro/lib/gcc-lib/i586-pc-beos/2.95.3-beos-060710/include/stdbool.h
+
+
+ NetSurf might build on BeOS R5 but probably won't work on anything else than
+ BONE.
+
+ This will pull in loads of things, like all the GTK dev libraries, the PNG
+ and JPEG libraries, colour management libraries, zlib, OpenSSL etc that
+ NetSurf also depends on.