The Servo Browser Engine
Find a file
Brian Burg 754deea2d9 Merge pull request #53 from burg/fix-readme
Add build instructions and cairo workaround for OSX MacPorts
2012-08-22 11:50:10 -07:00
src Move content task onto its own schedule. 2012-08-22 10:55:48 -07:00
.gitignore Require running autogen.sh 2012-05-10 16:17:08 -07:00
.gitmodules Fix .gitmodules 2012-08-21 15:47:42 -07:00
autogen.sh Support autoconf's named autoconf-2.13 2012-05-21 14:02:17 -07:00
configure.in Create src/test/ref in configure.in 2012-08-21 16:32:06 -07:00
Info.plist Build an app bundle on OS X 2012-04-23 17:43:45 -07:00
Makefile.in Add check-ref build target 2012-08-21 16:02:04 -07:00
README.md Add build instructions and cairo workaround for OSX MacPorts 2012-08-21 16:54:09 -07:00

The Servo Parallel Browser Project

Servo is a web browser engine written in the Rust language. It is currently developed on OS X and Linux.

Note: Servo requires a bleeding-edge version of Rust. Sometimes this means working off of the Rust master branch; sometimes this means the incoming branch. Because Rust is still undergoing major changes the Servo build is very often broken. Somebody in #servo or #rust will usually know what magic is required to make Servo build on any given day. Good luck!

Prerequisites

On OS X (homebrew):

brew install https://raw.github.com/Homebrew/homebrew-versions/master/autoconf213.rb
brew install sdl cairo

On OS X (MacPorts):

sudo port install autoconf213 libsdl cairo +x11 +quartz

On Debian-based Linuxes:

sudo apt-get install libsdl1.2-dev libcairo2-dev libpango1.0-dev autoconf2.13 freeglut3-dev

Building

git clone git://github.com/mozilla/servo.git
cd servo
git submodule init
git submodule update
./autogen.sh
mkdir -p build && cd build
../configure
make check && make
./servo ../src/test/test.html

Build Workarounds

MacPorts

Currently, the Makefile for the rust-azure submodule has a hardcoded library path that assumes cairo has been installed with homebrew. If you have installed with MacPorts, you will need to change the library path to cairo. The following command should apply a patch with the fix:

cd src/rust-azure && git diff 1e811d44^1 1e811d44 | patch -p1

This problem should go away once Issue #40 is fixed, and an externally-built cairo is no longer needed.