Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update to SpiderMonkey 66 #172

Merged
merged 20 commits into from
May 6, 2019
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
The diff you're trying to view is too large. We only load the first 3000 changed files.
5 changes: 5 additions & 0 deletions .cargo/config
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
[target.x86_64-pc-windows-msvc]
linker = "lld-link.exe"

[target.i686-pc-windows-msvc]
linker = "lld-link.exe"
6 changes: 5 additions & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,10 @@ addons:
- gcc-6
- g++-6
- clang-5.0
homebrew:
packages:
- python
- python@2

env:
- FEATURES=""
Expand All @@ -31,7 +35,7 @@ before_script:

script:
- ccache -z
- CCACHE=$(which ccache) travis_wait cargo build --verbose $FEATURES
- CCACHE=$(which ccache) travis_wait 30 cargo build --verbose $FEATURES
- CCACHE=$(which ccache) RUST_BACKTRACE=1 cargo test --lib --verbose $FEATURES
- ccache -s

Expand Down
5 changes: 4 additions & 1 deletion Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
name = "mozjs_sys"
description = "System crate for the Mozilla SpiderMonkey JavaScript engine."
repository = "https://github.com/servo/mozjs/"
version = "0.61.13"
version = "0.66.0"
authors = ["Mozilla"]
links = "mozjs"
build = "build.rs"
Expand All @@ -21,6 +21,9 @@ profilemozjs = []

[lib]
name = "mozjs_sys"
# The generated jsapi.rs contains #[doc] strings which look like
# doctests but are definitely not.
doctest = false

[dependencies]
libc = "0.2"
Expand Down
2 changes: 2 additions & 0 deletions appveyor.yml
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,8 @@ matrix:
fast_finish: true

environment:
LINKER: "lld-link.exe"
PYTHON3: "C:\\Python37-x64\\python.exe"
# The appveyor image we use has a pretty huge set of things installed... we make the
# initial PATH something sane so we know what to expect
PATH: "C:\\windows\\system32;\
Expand Down
36 changes: 4 additions & 32 deletions build.rs
Original file line number Diff line number Diff line change
Expand Up @@ -19,32 +19,6 @@ fn main() {
panic!("Rustc doesn't support MSVC debug runtime.");
}

if target.contains("windows") && host != target {
assert_eq!(host, "x86_64-pc-windows-msvc",
"Only cross-compiling from x64 is supported");
assert_eq!(target, "i686-pc-windows-msvc",
"Only cross-compiling to x86 is supported");
assert!(env::var("VSINSTALLDIR").is_err());
// When cross-compiling on Windows, we need to ensure that the PATH is
// set up appropriately for the target before invoking make.
if env::var("VCVARSALL_PATH").is_err() {
panic!("Need to provide VCVARSALL_PATH value with path to \
vcvarsall.bat from Visual Studio installation");
}

let vcvars = Command::new("vcvars.bat").output().unwrap();
assert!(vcvars.status.success());
let output = str::from_utf8(&vcvars.stdout).unwrap();
for line in output.lines() {
let mut parts = line.splitn(2, '=');
if let Some(name) = parts.next() {
if let Some(value) = parts.next() {
env::set_var(name, value);
}
}
}
}

build_jsapi();
build_jsglue();
build_jsapi_bindings();
Expand Down Expand Up @@ -91,6 +65,7 @@ fn cc_flags() -> Vec<&'static str> {
"-fno-sized-deallocation",
"-Wno-unused-parameter",
"-Wno-invalid-offsetof",
"-Wno-unused-private-field",
]);
}

Expand Down Expand Up @@ -142,8 +117,6 @@ fn build_jsapi() {
assert!(result.success());
println!("cargo:rustc-link-search=native={}/js/src/build", out_dir);
println!("cargo:rustc-link-lib=static=js_static"); // Must come before c++
println!("cargo:rustc-link-search=native={}/mozglue/build", out_dir);
println!("cargo:rustc-link-lib=static=mozglue");
if target.contains("windows") {
println!("cargo:rustc-link-search=native={}/dist/bin", out_dir);
println!("cargo:rustc-link-lib=winmm");
Expand All @@ -161,6 +134,7 @@ fn build_jsapi() {
println!("cargo:rustc-link-lib=stdc++");
}
println!("cargo:outdir={}", out_dir);
println!("cargo:rerun-if-changed=makefile.cargo");
}


Expand Down Expand Up @@ -312,7 +286,6 @@ const WHITELIST_VARS: &'static [&'static str] = &[
"JSCLASS_.*",
"JSFUN_.*",
"JSITER_.*",
"JSID_VOID",
"JSPROP_.*",
"JS_.*",
];
Expand Down Expand Up @@ -340,13 +313,13 @@ const OPAQUE_TYPES: &'static [&'static str] = &[
"JS::ReadOnlyCompileOptions",
"JS::Rooted<JS::Auto.*Vector.*>",
"JS::detail::CallArgsBase.*",
"js::HashMap.*",
"js::detail::UniqueSelector.*",
"js::detail::HashTable.*",
"mozilla::BufferList",
"mozilla::Maybe.*",
"mozilla::UniquePtr.*",
"mozilla::Variant",
"mozilla::Hash.*",
"mozilla::detail::Hash.*",
"RefPtr_Proxy.*",
];

Expand All @@ -372,5 +345,4 @@ const MODULE_RAW_LINES: &'static [(&'static str, &'static str)] = &[
("root", "pub type JSJitInfo = ::jsjit::JSJitInfo;"),
("root::JS", "pub type Heap<T> = ::jsgc::Heap<T>;"),
("root::JS", "pub type Rooted<T> = ::jsgc::Rooted<T>;"),
("root::JS", "pub type AutoGCRooterTag = AutoGCRooter__bindgen_ty_1;"),
];
2 changes: 1 addition & 1 deletion etc/COMMIT
Original file line number Diff line number Diff line change
@@ -1 +1 @@
ac4fbb7aaca0
9c35dcbaa8999f989f14f1e98a4a40a43f234131
Loading