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:
Mike Blumenkrantz 2014-05-01 18:07:48 -04:00
Родитель 2301c6bc01
Коммит fbc6399107
5 изменённых файлов: 1968 добавлений и 7 удалений

Просмотреть файл

@ -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

1
servo/configure поставляемый
Просмотреть файл

@ -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;

Разница между файлами не показана из-за своего большого размера Загрузить разницу