2012-10-18 10:24:02 +04:00
|
|
|
# The Servo Parallel Browser Project
|
2012-02-08 23:29:12 +04:00
|
|
|
|
2012-10-18 10:24:02 +04:00
|
|
|
Servo is a prototype web browser engine written in the [Rust]
|
|
|
|
language. It is currently developed on OS X and Linux.
|
2012-08-18 06:41:22 +04:00
|
|
|
|
2012-10-18 10:24:02 +04:00
|
|
|
**Note:** Servo always requires a specific version of Rust - building
|
|
|
|
against a released version of Rust will not work, nor will the Rust
|
|
|
|
'master' branch. The commit below will *probably* work. If it does not
|
|
|
|
then the topic in #servo might know better.
|
2012-09-18 22:26:04 +04:00
|
|
|
|
2012-12-23 22:42:24 +04:00
|
|
|
* Last known-good Rust commit: 3ee1d3ebb81de199fc630a86933ac18c0a869482
|
2012-05-11 02:20:26 +04:00
|
|
|
|
2012-10-18 10:24:02 +04:00
|
|
|
[rust]: http://www.rust-lang.org
|
|
|
|
|
|
|
|
## Prerequisites
|
|
|
|
|
|
|
|
First, you need the Rust compiler, built from the exact commit listed
|
|
|
|
above.
|
2012-05-11 02:20:26 +04:00
|
|
|
|
2012-08-22 22:50:10 +04:00
|
|
|
On OS X (homebrew):
|
2012-05-11 02:20:26 +04:00
|
|
|
|
2012-05-11 04:17:02 +04:00
|
|
|
brew install https://raw.github.com/Homebrew/homebrew-versions/master/autoconf213.rb
|
2012-09-18 19:07:51 +04:00
|
|
|
brew install cairo
|
2012-05-11 02:20:26 +04:00
|
|
|
|
2012-08-22 22:50:10 +04:00
|
|
|
On OS X (MacPorts):
|
|
|
|
|
2012-09-18 19:07:51 +04:00
|
|
|
sudo port install autoconf213 cairo +x11 +quartz
|
2012-08-22 22:50:10 +04:00
|
|
|
|
2012-05-11 02:20:26 +04:00
|
|
|
On Debian-based Linuxes:
|
|
|
|
|
2012-09-18 19:07:51 +04:00
|
|
|
sudo apt-get install libcairo2-dev libpango1.0-dev autoconf2.13 freeglut3-dev
|
2012-05-11 02:20:26 +04:00
|
|
|
|
2012-10-18 10:24:02 +04:00
|
|
|
## Building
|
2012-05-06 03:51:26 +04:00
|
|
|
|
|
|
|
git clone git://github.com/mozilla/servo.git
|
|
|
|
cd servo
|
2012-06-29 22:30:51 +04:00
|
|
|
mkdir -p build && cd build
|
2012-05-06 03:51:26 +04:00
|
|
|
../configure
|
2012-09-18 22:26:04 +04:00
|
|
|
make check-servo && make
|
2012-10-18 10:24:02 +04:00
|
|
|
./servo ../src/test/hello.html
|
|
|
|
|
|
|
|
If `rustc` is not installed then add `RUSTC=/path/to/rustc` to your
|
|
|
|
`make` commands.
|
2012-08-22 22:50:10 +04:00
|
|
|
|
|
|
|
|
2012-10-18 10:24:02 +04:00
|
|
|
## Build Workarounds
|
2012-08-22 22:50:10 +04:00
|
|
|
|
2012-10-18 10:24:02 +04:00
|
|
|
### MacPorts
|
2012-08-22 22:50:10 +04:00
|
|
|
|
2012-09-18 22:26:04 +04:00
|
|
|
Currently, the Makefile for the `rust-azure` submodule has hardcoded
|
|
|
|
library paths that assumes cairo has been installed with homebrew or
|
|
|
|
MacPorts. If you have installed cairo via another methods or a
|
|
|
|
different version, you will need to change the library path.
|
2012-08-22 22:50:10 +04:00
|
|
|
|
|
|
|
This problem should go away once Issue #40 is fixed, and an
|
|
|
|
externally-built cairo is no longer needed.
|