зеркало из https://github.com/mozilla/gecko-dev.git
servo: Merge #2257 - add start of embedding crate: build system with CEF types (from zmike:embedding-base); r=larsbergstrom
Another attempt at the merginating of my long-dormant embedding work for #441 This adds the basics for the embedding crate: build rules and 1800+ lines of CEF types r? @larsbergstrom Source-Repo: https://github.com/servo/servo Source-Revision: 96382eed42835c49398b4f1bf1f95e51348fffc7
This commit is contained in:
Родитель
2301c6bc01
Коммит
fbc6399107
|
@ -287,7 +287,6 @@ include $(S)mk/clean.mk
|
||||||
|
|
||||||
.DEFAULT_GOAL := all
|
.DEFAULT_GOAL := all
|
||||||
.PHONY: all
|
.PHONY: all
|
||||||
all: servo
|
|
||||||
|
|
||||||
# Servo helper libraries
|
# Servo helper libraries
|
||||||
|
|
||||||
|
@ -338,16 +337,22 @@ $(BINDINGS_SRC)/ParserResults.pkl: $(globalgen_dependencies) \
|
||||||
# Servo binaries
|
# Servo binaries
|
||||||
|
|
||||||
ifneq ($(CFG_OSTYPE),linux-androideabi)
|
ifneq ($(CFG_OSTYPE),linux-androideabi)
|
||||||
|
all: servo servo-embedding
|
||||||
servo: $(DEPS_servo)
|
servo: $(DEPS_servo)
|
||||||
@$(call E, compile: $@)
|
@$(call E, compile: $@)
|
||||||
$(Q)$(RUSTC) $(RFLAGS_servo) -o $@ $<
|
$(Q)$(RUSTC) $(RFLAGS_servo) -o servo $< --crate-type bin
|
||||||
|
|
||||||
libservo.dummy: $(DEPS_servo)
|
|
||||||
@$(call E, compile: $@)
|
|
||||||
$(Q)$(RUSTC) $(RFLAGS_servo) $< --crate-type dylib,rlib
|
$(Q)$(RUSTC) $(RFLAGS_servo) $< --crate-type dylib,rlib
|
||||||
touch libservo.dummy
|
|
||||||
|
|
||||||
|
RFLAGS_embedding = $(strip $(CFG_RUSTC_FLAGS)) $(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).. -L $(B)src/components/main -L $(B)src/components/macros -A non_camel_case_types -A unused_variable
|
||||||
|
SRC_embedding = $(call rwildcard,$(S)src/components/embedding/,*.rs)
|
||||||
|
CRATE_embedding = $(S)src/components/embedding/embedding.rs
|
||||||
|
|
||||||
|
servo-embedding: servo $(SRC_embedding) $(CRATE_embedding)
|
||||||
|
@$(call E, compile: $@)
|
||||||
|
$(Q)$(RUSTC) $(RFLAGS_embedding) $(CRATE_embedding)
|
||||||
|
touch servo-embedding
|
||||||
else
|
else
|
||||||
|
all: servo
|
||||||
servo: $(DEPS_servo)
|
servo: $(DEPS_servo)
|
||||||
@$(call E, compile: $@)
|
@$(call E, compile: $@)
|
||||||
$(Q)$(RUSTC) $(RFLAGS_servo) $< -o libservo.so --crate-type dylib
|
$(Q)$(RUSTC) $(RFLAGS_servo) $< -o libservo.so --crate-type dylib
|
||||||
|
|
|
@ -582,6 +582,7 @@ done
|
||||||
|
|
||||||
make_dir ${CFG_BUILD_DIR}src/components/macros
|
make_dir ${CFG_BUILD_DIR}src/components/macros
|
||||||
make_dir ${CFG_BUILD_DIR}src/components/util
|
make_dir ${CFG_BUILD_DIR}src/components/util
|
||||||
|
make_dir ${CFG_BUILD_DIR}src/components/embedding
|
||||||
make_dir ${CFG_BUILD_DIR}src/components/msg
|
make_dir ${CFG_BUILD_DIR}src/components/msg
|
||||||
make_dir ${CFG_BUILD_DIR}src/components/net
|
make_dir ${CFG_BUILD_DIR}src/components/net
|
||||||
make_dir ${CFG_BUILD_DIR}src/components/gfx
|
make_dir ${CFG_BUILD_DIR}src/components/gfx
|
||||||
|
|
|
@ -29,6 +29,10 @@ clean-util:
|
||||||
@$(call E, "cleaning util")
|
@$(call E, "cleaning util")
|
||||||
$(Q)cd $(B)/src/components/util/ && rm -rf libutil*.dylib libutil*.rlib libutil*.dSYM libutil*.so $(DONE_util)
|
$(Q)cd $(B)/src/components/util/ && rm -rf libutil*.dylib libutil*.rlib libutil*.dSYM libutil*.so $(DONE_util)
|
||||||
|
|
||||||
|
clean-embedding:
|
||||||
|
@$(call E, "cleaning embedding")
|
||||||
|
$(Q)cd $(B)/src/components/embedding/ && rm -rf libembedding*.dylib libembedding*.dSYM libembedding*.so $(DONE_embedding)
|
||||||
|
|
||||||
clean-msg:
|
clean-msg:
|
||||||
@$(call E, "cleaning msg")
|
@$(call E, "cleaning msg")
|
||||||
$(Q)cd $(B)/src/components/msg/ && rm -rf libmsg*.dylib libmsg*.rlib libmsg*.dSYM libmsg*.so $(DONE_msg)
|
$(Q)cd $(B)/src/components/msg/ && rm -rf libmsg*.dylib libmsg*.rlib libmsg*.dSYM libmsg*.so $(DONE_msg)
|
||||||
|
@ -53,7 +57,7 @@ clean-wpt:
|
||||||
$(Q)rm -r _virtualenv
|
$(Q)rm -r _virtualenv
|
||||||
$(Q)rm $(S)/src/test/wpt/metadata/MANIFEST.json
|
$(Q)rm $(S)/src/test/wpt/metadata/MANIFEST.json
|
||||||
|
|
||||||
clean-servo: clean-gfx clean-util clean-net clean-script clean-msg clean-style
|
clean-servo: clean-gfx clean-util clean-embedding clean-net clean-script clean-msg clean-style
|
||||||
@$(call E, "cleaning servo")
|
@$(call E, "cleaning servo")
|
||||||
$(Q)rm -f servo servo-test $(foreach lib_crate,$(SERVO_LIB_CRATES),servo-test-$(lib_crate)) libservo*.so libservo*.a
|
$(Q)rm -f servo servo-test $(foreach lib_crate,$(SERVO_LIB_CRATES),servo-test-$(lib_crate)) libservo*.so libservo*.a
|
||||||
$(Q)cd $(BINDINGS_SRC) && rm -f *.pkl *.rs
|
$(Q)cd $(BINDINGS_SRC) && rm -f *.pkl *.rs
|
||||||
|
|
|
@ -0,0 +1,50 @@
|
||||||
|
/* 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_id = "github.com/mozilla/servo#embedding:0.1"]
|
||||||
|
#![crate_type = "lib"]
|
||||||
|
|
||||||
|
#![feature(globs, macro_rules, phase, thread_local)]
|
||||||
|
|
||||||
|
#![feature(phase)]
|
||||||
|
#[phase(syntax, link)]
|
||||||
|
extern crate log;
|
||||||
|
|
||||||
|
extern crate rustuv;
|
||||||
|
|
||||||
|
extern crate servo_macros = "macros";
|
||||||
|
extern crate servo;
|
||||||
|
|
||||||
|
extern crate alert;
|
||||||
|
extern crate azure;
|
||||||
|
extern crate geom;
|
||||||
|
extern crate gfx;
|
||||||
|
#[cfg(not(target_os="android"))]
|
||||||
|
extern crate glfw;
|
||||||
|
#[cfg(target_os="android")]
|
||||||
|
extern crate glut;
|
||||||
|
extern crate js;
|
||||||
|
extern crate layers;
|
||||||
|
extern crate opengles;
|
||||||
|
extern crate png;
|
||||||
|
extern crate script;
|
||||||
|
|
||||||
|
extern crate servo_net = "net";
|
||||||
|
extern crate servo_msg = "msg";
|
||||||
|
extern crate servo_util = "util";
|
||||||
|
extern crate style;
|
||||||
|
extern crate sharegl;
|
||||||
|
extern crate stb_image;
|
||||||
|
|
||||||
|
extern crate green;
|
||||||
|
extern crate native;
|
||||||
|
extern crate libc;
|
||||||
|
extern crate std_url = "url";
|
||||||
|
|
||||||
|
#[cfg(target_os="macos")]
|
||||||
|
extern crate core_graphics;
|
||||||
|
#[cfg(target_os="macos")]
|
||||||
|
extern crate core_text;
|
||||||
|
|
||||||
|
pub mod types;
|
Разница между файлами не показана из-за своего большого размера
Загрузить разницу
Загрузка…
Ссылка в новой задаче