From 1cab10d8ba0cc92b8b18ea2680dc364a02b61664 Mon Sep 17 00:00:00 2001 From: Brian Anderson Date: Fri, 11 May 2012 14:49:02 -0700 Subject: [PATCH] HarfBuzz bindings, y'all --- .gitmodules | 3 +++ Makefile.in | 24 +++++++++++++++++++++--- configure.in | 2 ++ src/rust-harfbuzz | 1 + src/servo/servo.rc | 1 + 5 files changed, 28 insertions(+), 3 deletions(-) create mode 160000 src/rust-harfbuzz diff --git a/.gitmodules b/.gitmodules index a2cb119f375..db3e6ec53dd 100644 --- a/.gitmodules +++ b/.gitmodules @@ -16,6 +16,9 @@ [submodule "src/harfbuzz"] path = src/harfbuzz url = git://github.com/brson/harfbuzz-servo.git +[submodule "src/rust-harfbuzz"] + path = src/rust-harfbuzz + url = git://github.com/brson/rust-harfbuzz.git [submodule "src/ragel"] path = src/ragel url = git://github.com/brson/ragel-dist.git diff --git a/Makefile.in b/Makefile.in index f1cb1e69ade..a891c37063a 100644 --- a/Makefile.in +++ b/Makefile.in @@ -14,6 +14,7 @@ ifeq ($(UNAME),Linux) endif RUSTFLAGS += \ + -L src/rust-harfbuzz \ -L src/rust-mozjs \ -L src/rust-azure \ -L src/rust-sdl \ @@ -38,13 +39,14 @@ ifeq ($(OSTYPE),darwin) endif SERVO_DEPS += \ - src/harfbuzz/src/libharfbuzz.la \ + src/rust-harfbuzz/libharfbuzz.dummy \ src/rust-mozjs/libmozjs.dummy \ src/rust-azure/libazure.dummy \ src/rust-sdl/libsdl.dummy \ $(NULL) CHECK_DEPS += \ + check-rust-harfbuzz \ check-rust-mozjs \ check-rust-sdl \ check-rust-azure \ @@ -54,6 +56,7 @@ CHECK_DEPS += \ CLEAN_DEPS += \ clean-ragel \ clean-harfbuzz \ + clean-rust-harfbuzz \ clean-rust-mozjs \ clean-rust-sdl \ clean-rust-azure \ @@ -72,12 +75,15 @@ servo-test: $(SERVO_DEPS) src/ragel/ragel/ragel: $(MAKE) -C src/ragel -src/harfbuzz/src/libharfbuzz.la: src/ragel/ragel/ragel - $(MAKE) -C src/harfbuzz PATH=$(PATH):$(BUILD_DIR)/src/ragel/ragel +src/harfbuzz/src/.libs/libharfbuzz.a: src/ragel/ragel/ragel + $(MAKE) -C src/harfbuzz PATH=$(PATH):$(BUILD_DIR)/src/ragel/ragel CXXFLAGS=-fPIC LDFLAGS=-fPIC src/mozjs/libjs_static.a: $(MAKE) -C src/mozjs +src/rust-harfbuzz/libharfbuzz.dummy: src/harfbuzz/src/.libs/libharfbuzz.a + $(MAKE) -C src/rust-harfbuzz RUSTFLAGS="-L ../harfbuzz/src/.libs/" + src/rust-mozjs/libmozjs.dummy: src/mozjs/libjs_static.a $(MAKE) -C src/rust-mozjs RUSTFLAGS="-L ../mozjs/" @@ -95,6 +101,10 @@ check: $(CHECK_DEPS) check-servo: servo-test ./servo-test +.PHONY: check-rust-harfbuzz +check-rust-harfbuzz: src/harfbuzz/src/.libs/libharfbuzz.a + $(MAKE) check -C src/rust-harfbuzz RUSTFLAGS="-L ../harfbuzz/src/.libs/" + .PHONY: check-rust-mozjs check-rust-mozjs: src/mozjs/libjs_static.a $(MAKE) check -C src/rust-mozjs RUSTFLAGS="-L ../mozjs/" @@ -118,6 +128,14 @@ clean: $(CLEAN_DEPS) clean-ragel: $(MAKE) clean -C src/ragel +.PHONY: clean-harfbuzz +clean-harfbuzz: + $(MAKE) clean -C src/harfbuzz + +.PHONY: clean-rust-harfbuzz +clean-rust-harfbuzz: + $(MAKE) clean -C src/rust-harfbuzz + .PHONY: clean-rust-mozjs clean-rust-mozjs: $(MAKE) clean -C src/rust-mozjs diff --git a/configure.in b/configure.in index d385f0f03ed..925588e3669 100755 --- a/configure.in +++ b/configure.in @@ -6,6 +6,7 @@ sed "s#%VPATH%#${SRCDIR}#" ${SRCDIR}/Makefile.in > Makefile mkdir -p src/ragel || exit $? mkdir -p src/harfbuzz || exit $? mkdir -p src/mozjs || exit $? +mkdir -p src/rust-harfbuzz || exit $? mkdir -p src/rust-mozjs || exit $? mkdir -p src/rust-sdl || exit $? mkdir -p src/rust-azure || exit $? @@ -14,6 +15,7 @@ mkdir -p src/rust-cocoa || exit $? (cd src/ragel && sh ${SRCDIR}/src/ragel/configure) || exit $? (cd src/harfbuzz && sh ${SRCDIR}/src/harfbuzz/configure --enable-static) || exit $? (cd src/mozjs && sh ${SRCDIR}/src/mozjs/js/src/configure) || exit $? +(cd src/rust-harfbuzz && sh ${SRCDIR}/src/rust-harfbuzz/configure) || exit $? (cd src/rust-mozjs && sh ${SRCDIR}/src/rust-mozjs/configure) || exit $? (cd src/rust-sdl && sh ${SRCDIR}/src/rust-sdl/configure) || exit $? (cd src/rust-azure && sh ${SRCDIR}/src/rust-azure/configure) || exit $? diff --git a/src/rust-harfbuzz b/src/rust-harfbuzz new file mode 160000 index 00000000000..80272a985fd --- /dev/null +++ b/src/rust-harfbuzz @@ -0,0 +1 @@ +Subproject commit 80272a985fd3ec3cd6430402e25551096eb43722 diff --git a/src/servo/servo.rc b/src/servo/servo.rc index b5d001ed6c1..d11ec3989ca 100755 --- a/src/servo/servo.rc +++ b/src/servo/servo.rc @@ -10,6 +10,7 @@ use std; use sdl; use azure; use js; +use harfbuzz; mod dom { mod base;