diff --git a/.gitmodules b/.gitmodules index b06ab75d35b..f52698e0968 100644 --- a/.gitmodules +++ b/.gitmodules @@ -7,3 +7,9 @@ [submodule "src/rust-cocoa"] path = src/rust-cocoa url = git://github.com/pcwalton/rust-cocoa.git +[submodule "src/mozjs"] + path = src/mozjs + url = git://github.com/brson/mozjs.git +[submodule "src/rust-mozjs"] + path = src/rust-mozjs + url = git://github.com/brson/rust-mozjs.git diff --git a/Makefile.in b/Makefile.in index 7846f0b15be..e2e3f21b041 100644 --- a/Makefile.in +++ b/Makefile.in @@ -13,6 +13,7 @@ ifeq ($(UNAME),Linux) endif RUSTFLAGS += \ + -L src/rust-mozjs \ -L src/rust-azure \ -L src/rust-sdl \ -L src/rust-cocoa \ @@ -36,17 +37,20 @@ ifeq ($(OSTYPE),darwin) endif SERVO_DEPS += \ + src/rust-mozjs/libmozjs.dummy \ src/rust-azure/libazure.dummy \ src/rust-sdl/libsdl.dummy \ $(NULL) CHECK_DEPS += \ + check-mozjs \ check-sdl \ check-azure \ check-servo \ $(NULL) CLEAN_DEPS += \ + clean-mozjs \ clean-sdl \ clean-azure \ clean-servo \ @@ -61,6 +65,12 @@ servo: $(SERVO_DEPS) servo-test: $(SERVO_DEPS) $(RUSTC) $(RUSTFLAGS) --test -o $@ $< +src/mozjs/libjs_static.a: + $(MAKE) -C src/mozjs + +src/rust-mozjs/libmozjs.dummy: src/mozjs/libjs_static.a + $(MAKE) -C src/rust-mozjs RUSTFLAGS="-L ../mozjs/" + src/rust-azure/libazure.dummy: $(MAKE) -C src/rust-azure @@ -75,6 +85,10 @@ check: $(CHECK_DEPS) check-servo: servo-test ./servo-test +.PHONY: check-mozjs +check-mozjs: + $(MAKE) check -C src/rust-mozjs RUSTFLAGS="-L ../mozjs/" + .PHONY: check-azure check-azure: $(MAKE) check -C src/rust-azure @@ -90,6 +104,10 @@ check-cocoa: .PHONY: clean clean: $(CLEAN_DEPS) +.PHONY: clean-mozjs +clean-mozjs: + $(MAKE) clean -C src/rust-mozjs + .PHONY: clean-azure clean-azure: $(MAKE) clean -C src/rust-azure diff --git a/configure b/configure index db616357b4b..ec6140c97ed 100755 --- a/configure +++ b/configure @@ -3,10 +3,14 @@ SRCDIR="$(cd $(dirname $0) && pwd)" sed "s#%VPATH%#${SRCDIR}#" ${SRCDIR}/Makefile.in > Makefile +mkdir -p src/mozjs +mkdir -p src/rust-mozjs mkdir -p src/rust-sdl mkdir -p src/rust-azure mkdir -p src/rust-cocoa +(cd src/mozjs && sh ${SRCDIR}/src/mozjs/js/src/configure) +(cd src/rust-mozjs && sh ${SRCDIR}/src/rust-mozjs/configure) (cd src/rust-sdl && sh ${SRCDIR}/src/rust-sdl/configure) (cd src/rust-azure && sh ${SRCDIR}/src/rust-azure/configure) (cd src/rust-cocoa && sh ${SRCDIR}/src/rust-cocoa/configure) diff --git a/src/mozjs b/src/mozjs new file mode 160000 index 00000000000..a971b9dd539 --- /dev/null +++ b/src/mozjs @@ -0,0 +1 @@ +Subproject commit a971b9dd53975db0225bb900c216f2a1f4cd1de9 diff --git a/src/rust-mozjs b/src/rust-mozjs new file mode 160000 index 00000000000..f46084656c1 --- /dev/null +++ b/src/rust-mozjs @@ -0,0 +1 @@ +Subproject commit f46084656c10471438ee5ef2488e514227d3e6d5 diff --git a/src/servo/servo.rc b/src/servo/servo.rc index 5d0eb0fb118..c86bc2be860 100755 --- a/src/servo/servo.rc +++ b/src/servo/servo.rc @@ -9,6 +9,7 @@ use std; use sdl; use azure; +use js; mod dom { mod base;