From a7fa6bdb3197ca98bcd1b55665e3bb550888dda1 Mon Sep 17 00:00:00 2001 From: Dan Gohman Date: Wed, 23 Oct 2019 14:05:23 -0700 Subject: [PATCH] Fix fuzz and wasi-c builds (#447) * Fix the wasmtime-wasi-c crate build and upgrade it to Rust 2018. * Fix the fuzz build. --- fuzz/fuzz_targets/compile.rs | 7 ++----- wasmtime-jit/Cargo.toml | 2 +- wasmtime-wasi-c/Cargo.toml | 1 + wasmtime-wasi-c/src/instantiate.rs | 2 +- wasmtime-wasi-c/src/lib.rs | 9 ++------- wasmtime-wasi-c/src/syscalls.rs | 6 +++--- wasmtime-wasi-c/src/translate.rs | 4 ++-- 7 files changed, 12 insertions(+), 19 deletions(-) diff --git a/fuzz/fuzz_targets/compile.rs b/fuzz/fuzz_targets/compile.rs index f6d0b5c32a..77d8785020 100644 --- a/fuzz/fuzz_targets/compile.rs +++ b/fuzz/fuzz_targets/compile.rs @@ -2,11 +2,8 @@ #[macro_use] extern crate libfuzzer_sys; -extern crate cranelift_codegen; -extern crate cranelift_native; -extern crate wasmparser; -extern crate wasmtime_environ; -extern crate wasmtime_jit; +extern crate alloc; +extern crate core; use alloc::rc::Rc; use core::cell::RefCell; diff --git a/wasmtime-jit/Cargo.toml b/wasmtime-jit/Cargo.toml index cc62a7727a..259bb93682 100644 --- a/wasmtime-jit/Cargo.toml +++ b/wasmtime-jit/Cargo.toml @@ -27,7 +27,7 @@ wasmparser = { version = "0.39.2", default-features = false } [features] default = ["std"] -std = ["cranelift-codegen/std", "cranelift-wasm/std", "wasmtime-environ/std", "wasmtime-debug/std", "wasmparser/std"] +std = ["cranelift-codegen/std", "cranelift-wasm/std", "wasmtime-environ/std", "wasmtime-debug/std", "wasmtime-runtime/std", "wasmparser/std"] core = ["hashbrown/nightly", "cranelift-codegen/core", "cranelift-wasm/core", "wasmtime-environ/core", "wasmtime-debug/core", "wasmparser/core"] lightbeam = ["wasmtime-environ/lightbeam"] diff --git a/wasmtime-wasi-c/Cargo.toml b/wasmtime-wasi-c/Cargo.toml index 14c843e878..c68ea132f2 100644 --- a/wasmtime-wasi-c/Cargo.toml +++ b/wasmtime-wasi-c/Cargo.toml @@ -7,6 +7,7 @@ categories = ["wasm"] repository = "https://github.com/CraneStation/wasmtime" license = "Apache-2.0 WITH LLVM-exception" readme = "README.md" +edition = "2018" [dependencies] wasmtime-runtime = { path = "../wasmtime-runtime" } diff --git a/wasmtime-wasi-c/src/instantiate.rs b/wasmtime-wasi-c/src/instantiate.rs index 5df40a33d1..7216e4fed9 100644 --- a/wasmtime-wasi-c/src/instantiate.rs +++ b/wasmtime-wasi-c/src/instantiate.rs @@ -2,6 +2,7 @@ use crate::host::{ argv_environ_init, argv_environ_values, fd_prestats, fd_prestats_init, fd_prestats_insert, fd_table, fd_table_init, fd_table_insert_existing, }; +use crate::syscalls; use alloc::rc::Rc; use core::cell::RefCell; use cranelift_codegen::ir::types; @@ -13,7 +14,6 @@ use std::ffi::CString; use std::fs::File; use std::mem; use std::os::unix::io::AsRawFd; -use syscalls; use target_lexicon::HOST; use wasmtime_environ::{translate_signature, Export, Module}; use wasmtime_runtime::{Imports, InstanceHandle, InstantiationError, VMFunctionBody}; diff --git a/wasmtime-wasi-c/src/lib.rs b/wasmtime-wasi-c/src/lib.rs index 6a4b3b769b..932250f596 100644 --- a/wasmtime-wasi-c/src/lib.rs +++ b/wasmtime-wasi-c/src/lib.rs @@ -1,12 +1,7 @@ -extern crate cranelift_codegen; -extern crate cranelift_entity; -extern crate cranelift_wasm; -extern crate target_lexicon; -extern crate wasmtime_environ; -extern crate wasmtime_jit; -extern crate wasmtime_runtime; #[macro_use] extern crate log; +extern crate alloc; +extern crate core; mod host; mod instantiate; diff --git a/wasmtime-wasi-c/src/syscalls.rs b/wasmtime-wasi-c/src/syscalls.rs index 77dd18db01..ead14401d6 100644 --- a/wasmtime-wasi-c/src/syscalls.rs +++ b/wasmtime-wasi-c/src/syscalls.rs @@ -1,11 +1,11 @@ +use crate::host; use crate::host::{argv_environ_values, fd_prestats, fd_table}; use crate::instantiate::WASIState; +use crate::translate::*; +use crate::wasm32; use core::convert::TryFrom; use cranelift_codegen::ir::types::{Type, I32, I64}; -use host; use std::{mem, ptr, slice, str}; -use translate::*; -use wasm32; use wasmtime_runtime::VMContext; fn str_for_trace<'str>(ptr: *const i8, len: usize) -> Result<&'str str, str::Utf8Error> { diff --git a/wasmtime-wasi-c/src/translate.rs b/wasmtime-wasi-c/src/translate.rs index ccc78c8f00..03e43ef012 100644 --- a/wasmtime-wasi-c/src/translate.rs +++ b/wasmtime-wasi-c/src/translate.rs @@ -1,8 +1,8 @@ +use crate::host; +use crate::wasm32; use core::convert::TryFrom; -use host; use std::mem::{align_of, size_of, zeroed}; use std::slice; -use wasm32; use wasmtime_runtime::{Export, VMContext}; /// Translate a wasm pointer into a native pointer.