mirror of
https://github.com/servo/servo.git
synced 2025-08-04 13:10:20 +01:00
Add a canvas create, break script’s dependency on gfx.
The build time on my laptop after touching gfx goes from 1m37s ot 46s.
This commit is contained in:
parent
f5ebd19c01
commit
aa1a5c479a
7 changed files with 29 additions and 14 deletions
1
configure
vendored
1
configure
vendored
|
@ -627,6 +627,7 @@ make_dir ${CFG_BUILD_DIR}src/components/compositing
|
|||
make_dir ${CFG_BUILD_DIR}src/components/embedding
|
||||
make_dir ${CFG_BUILD_DIR}src/components/msg
|
||||
make_dir ${CFG_BUILD_DIR}src/components/net
|
||||
make_dir ${CFG_BUILD_DIR}src/components/canvas
|
||||
make_dir ${CFG_BUILD_DIR}src/components/gfx
|
||||
make_dir ${CFG_BUILD_DIR}src/components/layout
|
||||
make_dir ${CFG_BUILD_DIR}src/components/layout_traits
|
||||
|
|
23
mk/main.mk
23
mk/main.mk
|
@ -288,6 +288,13 @@ DONE_msg = $(B)src/components/msg/libmsg.dummy
|
|||
|
||||
DEPS_msg = $(CRATE_msg) $(SRC_msg) $(DONE_SUBMODULES) $(DONE_util)
|
||||
|
||||
RFLAGS_canvas = $(addprefix -L $(B)src/,$(DEPS_SUBMODULES))
|
||||
SRC_canvas = $(call rwildcard,$(S)src/components/canvas/,*.rs)
|
||||
CRATE_canvas = $(S)src/components/canvas/canvas.rs
|
||||
DONE_canvas = $(B)src/components/canvas/libcanvas.dummy
|
||||
|
||||
DEPS_canvas = $(CRATE_canvas) $(SRC_canvas) $(DONE_SUBMODULES)
|
||||
|
||||
RFLAGS_gfx = $(addprefix -L $(B)src/,$(DEPS_SUBMODULES)) -L $(B)src/components/util -L $(B)src/components/style -L $(B)src/components/net -L $(B)src/components/msg -L$(B)src/components/macros
|
||||
SRC_gfx = $(call rwildcard,$(S)src/components/gfx/,*.rs)
|
||||
CRATE_gfx = $(S)src/components/gfx/gfx.rs
|
||||
|
@ -303,7 +310,7 @@ DONE_script_traits = $(B)src/components/script_traits/libscript_traits.dummy
|
|||
|
||||
DEPS_script_traits = $(CRATE_script_traits) $(SRC_script_traits) $(DONE_msg) $(DONE_net)
|
||||
|
||||
RFLAGS_script = $(addprefix -L $(B)src/,$(DEPS_SUBMODULES)) -L $(B)src/components/util -L $(B)src/components/style -L $(B)src/components/net -L $(B)src/components/msg -L$(B)src/components/macros -L$(B)src/components/gfx -L$(B)src/components/script_traits
|
||||
RFLAGS_script = $(addprefix -L $(B)src/,$(DEPS_SUBMODULES)) -L $(B)src/components/util -L $(B)src/components/style -L $(B)src/components/net -L $(B)src/components/msg -L$(B)src/components/macros -L$(B)src/components/canvas -L$(B)src/components/script_traits
|
||||
|
||||
ifdef TRAVIS
|
||||
# libscript has a habit of taking over 10 minutes while running on Travis,
|
||||
|
@ -323,7 +330,7 @@ SRC_script = $(call rwildcard,$(S)src/components/script/,*.rs) $(AUTOGEN_SRC_scr
|
|||
CRATE_script = $(S)src/components/script/script.rs
|
||||
DONE_script = $(B)src/components/script/libscript.dummy
|
||||
|
||||
DEPS_script = $(CRATE_script) $(SRC_script) $(DONE_SUBMODULES) $(DONE_util) $(DONE_style) $(DONE_net) $(DONE_msg) $(DONE_macros) $(DONE_gfx) $(DONE_script_traits)
|
||||
DEPS_script = $(CRATE_script) $(SRC_script) $(DONE_SUBMODULES) $(DONE_util) $(DONE_style) $(DONE_net) $(DONE_msg) $(DONE_macros) $(DONE_canvas) $(DONE_script_traits)
|
||||
|
||||
RFLAGS_style = $(addprefix -L $(B)src/,$(DEPS_SUBMODULES)) -L $(B)src/components/util -L$(B)src/components/macros
|
||||
MAKO_ZIP = $(S)src/components/style/Mako-0.9.1.zip
|
||||
|
@ -343,7 +350,7 @@ DONE_layout_traits = $(B)src/components/layout_traits/liblayout_traits.dummy
|
|||
|
||||
DEPS_layout_traits = $(CRATE_layout_traits) $(SRC_layout_traits) $(DONE_script_traits) $(DONE_msg) $(DONE_net) $(DONE_gfx) $(DONE_util)
|
||||
|
||||
RFLAGS_layout = $(addprefix -L $(B)src/,$(DEPS_SUBMODULES)) -L $(B)src/components/gfx -L $(B)src/components/util -L $(B)src/components/net -L $(B)src/components/script -L $(B)src/components/style -L $(B)src/components/msg -L$(B)src/components/macros -L$(B)src/components/layout_traits -L $(B)src/components/script_traits
|
||||
RFLAGS_layout = $(addprefix -L $(B)src/,$(DEPS_SUBMODULES)) -L $(B)src/components/gfx -L $(B)src/components/canvas -L $(B)src/components/util -L $(B)src/components/net -L $(B)src/components/script -L $(B)src/components/style -L $(B)src/components/msg -L$(B)src/components/macros -L$(B)src/components/layout_traits -L $(B)src/components/script_traits
|
||||
|
||||
SRC_layout = $(call rwildcard,$(S)src/components/layout/,*.rs)
|
||||
CRATE_layout = $(S)src/components/layout/layout.rs
|
||||
|
@ -359,12 +366,12 @@ DONE_compositing = $(B)src/components/compositing/libcompositing.dummy
|
|||
|
||||
DEPS_compositing = $(CRATE_compositing) $(SRC_compositing) $(DONE_util) $(DONE_msg) $(DONE_gfx) $(DONE_layout_traits) $(DONE_script_traits) $(DONE_style)
|
||||
|
||||
RFLAGS_servo = $(addprefix -L $(B)src/,$(DEPS_SUBMODULES)) -L $(B)src/components/gfx -L $(B)src/components/util -L $(B)src/components/net -L $(B)src/components/script -L $(B)src/components/layout_traits -L $(B)src/components/script_traits -L $(B)src/components/layout -L $(B)src/components/compositing -L $(B)src/components/style -L $(B)src/components/msg -L$(B)src/components/macros
|
||||
RFLAGS_servo = $(addprefix -L $(B)src/,$(DEPS_SUBMODULES)) -L $(B)src/components/gfx -L $(B)src/components/canvas -L $(B)src/components/util -L $(B)src/components/net -L $(B)src/components/script -L $(B)src/components/layout_traits -L $(B)src/components/script_traits -L $(B)src/components/layout -L $(B)src/components/compositing -L $(B)src/components/style -L $(B)src/components/msg -L$(B)src/components/macros
|
||||
|
||||
SRC_servo = $(call rwildcard,$(S)src/components/main/,*.rs)
|
||||
CRATE_servo = $(S)src/components/main/servo.rs
|
||||
|
||||
SERVO_LIB_CRATES = macros util net msg gfx script script_traits style layout layout_traits compositing
|
||||
SERVO_LIB_CRATES = macros util net msg canvas gfx script script_traits style layout layout_traits compositing
|
||||
|
||||
DEPS_servo = $(CRATE_servo) $(SRC_servo) $(DONE_SUBMODULES) $(foreach lib_crate,$(SERVO_LIB_CRATES),$(DONE_$(lib_crate)))
|
||||
|
||||
|
@ -433,7 +440,7 @@ servo: $(DEPS_servo)
|
|||
@$(call E, compile: $@)
|
||||
$(Q)$(RUSTC) $(strip $(TARGET_FLAGS) $(CFG_RUSTC_FLAGS)) $(RFLAGS_servo) -C rpath $< --crate-type bin,dylib,rlib
|
||||
|
||||
RFLAGS_embedding = $(addprefix -L $(B)src/,$(DEPS_SUBMODULES)) -L $(B)src/components/gfx -L $(B)src/components/util -L $(B)src/components/net -L $(B)src/components/script -L $(B)src/components/layout -L $(B)src/components/layout_traits -L $(B)src/components/script_traits -L $(B)src/components/compositing -L $(B)src/components/style -L $(B)src/components/msg -L $(B).. -L $(B)src/components/main -L $(B)src/components/macros -A non_camel_case_types -A unused_variable
|
||||
RFLAGS_embedding = $(addprefix -L $(B)src/,$(DEPS_SUBMODULES)) -L $(B)src/components/gfx -L $(B)src/components/canvas -L $(B)src/components/util -L $(B)src/components/net -L $(B)src/components/script -L $(B)src/components/layout -L $(B)src/components/layout_traits -L $(B)src/components/script_traits -L $(B)src/components/compositing -L $(B)src/components/style -L $(B)src/components/msg -L $(B).. -L $(B)src/components/main -L $(B)src/components/macros -A non_camel_case_types -A unused_variable
|
||||
|
||||
ifeq ($(CFG_OSTYPE),apple-darwin)
|
||||
RFLAGS_embedding += -C link-args="-Wl,-U,_tc_new -Wl,-U,_tc_newarray -Wl,-U,_tc_delete -Wl,-U,_tc_deletearray"
|
||||
|
@ -444,13 +451,13 @@ CRATE_embedding = $(S)src/components/embedding/embedding.rs
|
|||
servo-embedding: servo $(SRC_embedding) $(CRATE_embedding)
|
||||
@$(call E, compile: $@)
|
||||
$(Q)$(RUSTC) $(strip $(TARGET_FLAGS) $(CFG_RUSTC_FLAGS)) $(RFLAGS_embedding) $(CRATE_embedding) -C rpath --crate-type dylib,rlib
|
||||
touch servo-embedding
|
||||
$(Q)touch servo-embedding
|
||||
else
|
||||
all: servo
|
||||
servo: $(DEPS_servo)
|
||||
@$(call E, compile: $@)
|
||||
$(Q)$(RUSTC) $(strip $(TARGET_FLAGS) $(CFG_RUSTC_FLAGS)) $(RFLAGS_servo) $< -o libservo.so --crate-type dylib
|
||||
touch servo
|
||||
$(Q)touch servo
|
||||
endif
|
||||
|
||||
# Darwin app packaging
|
||||
|
|
11
src/components/canvas/canvas.rs
Normal file
11
src/components/canvas/canvas.rs
Normal file
|
@ -0,0 +1,11 @@
|
|||
/* This Source Code Form is subject to the terms of the Mozilla Public
|
||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
||||
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
|
||||
|
||||
#![crate_name = "canvas"]
|
||||
#![crate_type = "rlib"]
|
||||
|
||||
extern crate azure;
|
||||
extern crate geom;
|
||||
|
||||
pub mod canvas_render_task;
|
|
@ -55,10 +55,6 @@ pub mod color;
|
|||
pub mod display_list;
|
||||
pub mod render_task;
|
||||
|
||||
// Canvas Rendering
|
||||
#[allow(dead_code)]
|
||||
pub mod canvas_render_task;
|
||||
|
||||
// Fonts
|
||||
pub mod font;
|
||||
pub mod font_context;
|
||||
|
|
|
@ -14,7 +14,7 @@ use geom::point::Point2D;
|
|||
use geom::rect::Rect;
|
||||
use geom::size::Size2D;
|
||||
|
||||
use gfx::canvas_render_task::{CanvasMsg, CanvasRenderTask, ClearRect, Close, FillRect, Recreate, StrokeRect};
|
||||
use canvas::canvas_render_task::{CanvasMsg, CanvasRenderTask, ClearRect, Close, FillRect, Recreate, StrokeRect};
|
||||
|
||||
#[deriving(Encodable)]
|
||||
pub struct CanvasRenderingContext2D {
|
||||
|
|
|
@ -33,6 +33,7 @@ extern crate net;
|
|||
extern crate rustrt;
|
||||
extern crate serialize;
|
||||
extern crate time;
|
||||
extern crate canvas;
|
||||
extern crate script_traits;
|
||||
#[phase(plugin)]
|
||||
extern crate servo_macros = "macros";
|
||||
|
@ -42,7 +43,6 @@ extern crate style;
|
|||
extern crate sync;
|
||||
extern crate servo_msg = "msg";
|
||||
extern crate url;
|
||||
extern crate gfx;
|
||||
|
||||
pub mod cors;
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue