mirror of
https://github.com/fluencelabs/wasmer
synced 2024-12-13 06:15:33 +00:00
Runs on linux and also hopefully ci
This commit is contained in:
parent
13850929d7
commit
48b36a3b01
@ -15,7 +15,6 @@ jobs:
|
|||||||
sudo apt-get install -y cmake
|
sudo apt-get install -y cmake
|
||||||
curl -O https://releases.llvm.org/7.0.0/clang+llvm-7.0.0-x86_64-linux-gnu-ubuntu-16.04.tar.xz
|
curl -O https://releases.llvm.org/7.0.0/clang+llvm-7.0.0-x86_64-linux-gnu-ubuntu-16.04.tar.xz
|
||||||
tar xf clang+llvm-7.0.0-x86_64-linux-gnu-ubuntu-16.04.tar.xz
|
tar xf clang+llvm-7.0.0-x86_64-linux-gnu-ubuntu-16.04.tar.xz
|
||||||
export PATH=$PATH:`pwd`/clang+llvm-7.0.0-x86_64-linux-gnu-ubuntu-16.04/bin/
|
|
||||||
- run:
|
- run:
|
||||||
name: Install lint deps
|
name: Install lint deps
|
||||||
command: |
|
command: |
|
||||||
@ -23,7 +22,9 @@ jobs:
|
|||||||
rustup component add clippy
|
rustup component add clippy
|
||||||
- run:
|
- run:
|
||||||
name: Execute lints
|
name: Execute lints
|
||||||
command: make lint
|
command: |
|
||||||
|
export LLVM_SYS_70_PREFIX="`pwd`/clang+llvm-7.0.0-x86_64-linux-gnu-ubuntu-16.04/"
|
||||||
|
make lint
|
||||||
- save_cache:
|
- save_cache:
|
||||||
paths:
|
paths:
|
||||||
- /usr/local/cargo/registry
|
- /usr/local/cargo/registry
|
||||||
@ -46,9 +47,12 @@ jobs:
|
|||||||
sudo apt-get install -y cmake
|
sudo apt-get install -y cmake
|
||||||
curl -O https://releases.llvm.org/7.0.0/clang+llvm-7.0.0-x86_64-linux-gnu-ubuntu-16.04.tar.xz
|
curl -O https://releases.llvm.org/7.0.0/clang+llvm-7.0.0-x86_64-linux-gnu-ubuntu-16.04.tar.xz
|
||||||
tar xf clang+llvm-7.0.0-x86_64-linux-gnu-ubuntu-16.04.tar.xz
|
tar xf clang+llvm-7.0.0-x86_64-linux-gnu-ubuntu-16.04.tar.xz
|
||||||
export PATH=$PATH:`pwd`/clang+llvm-7.0.0-x86_64-linux-gnu-ubuntu-16.04/bin/
|
- run: |
|
||||||
- run: make test
|
export LLVM_SYS_70_PREFIX="`pwd`/clang+llvm-7.0.0-x86_64-linux-gnu-ubuntu-16.04/"
|
||||||
- run: make integration-tests
|
make test
|
||||||
|
- run: |
|
||||||
|
export LLVM_SYS_70_PREFIX="`pwd`/clang+llvm-7.0.0-x86_64-linux-gnu-ubuntu-16.04/"
|
||||||
|
make integration-tests
|
||||||
- save_cache:
|
- save_cache:
|
||||||
paths:
|
paths:
|
||||||
- /usr/local/cargo/registry
|
- /usr/local/cargo/registry
|
||||||
@ -75,7 +79,6 @@ jobs:
|
|||||||
# Installing LLVM outside of brew
|
# Installing LLVM outside of brew
|
||||||
curl -O https://releases.llvm.org/7.0.0/clang+llvm-7.0.0-x86_64-apple-darwin.tar.xz
|
curl -O https://releases.llvm.org/7.0.0/clang+llvm-7.0.0-x86_64-apple-darwin.tar.xz
|
||||||
tar xf clang+llvm-7.0.0-x86_64-apple-darwin.tar.xz
|
tar xf clang+llvm-7.0.0-x86_64-apple-darwin.tar.xz
|
||||||
export LLVM_SYS_70_PREFIX="`pwd`/clang+llvm-7.0.0-x86_64-apple-darwin/"
|
|
||||||
- run:
|
- run:
|
||||||
name: Install Rust
|
name: Install Rust
|
||||||
command: |
|
command: |
|
||||||
@ -87,6 +90,7 @@ jobs:
|
|||||||
command: |
|
command: |
|
||||||
export PATH="$HOME/.cargo/bin:$PATH"
|
export PATH="$HOME/.cargo/bin:$PATH"
|
||||||
export PATH="`pwd`/cmake-3.4.1-Darwin-x86_64/CMake.app/Contents/bin:$PATH"
|
export PATH="`pwd`/cmake-3.4.1-Darwin-x86_64/CMake.app/Contents/bin:$PATH"
|
||||||
|
export LLVM_SYS_70_PREFIX="`pwd`/clang+llvm-7.0.0-x86_64-apple-darwin/"
|
||||||
# We increase the ulimit for fixing cargo unclosed files in mac
|
# We increase the ulimit for fixing cargo unclosed files in mac
|
||||||
ulimit -n 8000
|
ulimit -n 8000
|
||||||
sudo sysctl -w kern.maxfiles=655360 kern.maxfilesperproc=327680
|
sudo sysctl -w kern.maxfiles=655360 kern.maxfilesperproc=327680
|
||||||
@ -96,6 +100,7 @@ jobs:
|
|||||||
command: |
|
command: |
|
||||||
export PATH="$HOME/.cargo/bin:$PATH"
|
export PATH="$HOME/.cargo/bin:$PATH"
|
||||||
export PATH="`pwd`/cmake-3.4.1-Darwin-x86_64/CMake.app/Contents/bin:$PATH"
|
export PATH="`pwd`/cmake-3.4.1-Darwin-x86_64/CMake.app/Contents/bin:$PATH"
|
||||||
|
export LLVM_SYS_70_PREFIX="`pwd`/clang+llvm-7.0.0-x86_64-apple-darwin/"
|
||||||
make integration-tests
|
make integration-tests
|
||||||
- save_cache:
|
- save_cache:
|
||||||
paths:
|
paths:
|
||||||
@ -122,13 +127,15 @@ jobs:
|
|||||||
sudo apt-get install -y cmake
|
sudo apt-get install -y cmake
|
||||||
curl -O https://releases.llvm.org/7.0.0/clang+llvm-7.0.0-x86_64-linux-gnu-ubuntu-16.04.tar.xz
|
curl -O https://releases.llvm.org/7.0.0/clang+llvm-7.0.0-x86_64-linux-gnu-ubuntu-16.04.tar.xz
|
||||||
tar xf clang+llvm-7.0.0-x86_64-linux-gnu-ubuntu-16.04.tar.xz
|
tar xf clang+llvm-7.0.0-x86_64-linux-gnu-ubuntu-16.04.tar.xz
|
||||||
export PATH=$PATH:`pwd`/clang+llvm-7.0.0-x86_64-linux-gnu-ubuntu-16.04/bin/
|
|
||||||
- run:
|
- run:
|
||||||
name: Execute tests
|
name: Execute tests
|
||||||
command: make test
|
command: |
|
||||||
|
export LLVM_SYS_70_PREFIX="`pwd`/clang+llvm-7.0.0-x86_64-linux-gnu-ubuntu-16.04/"
|
||||||
|
make test
|
||||||
- run:
|
- run:
|
||||||
name: Make release build
|
name: Make release build
|
||||||
command: |
|
command: |
|
||||||
|
export LLVM_SYS_70_PREFIX="`pwd`/clang+llvm-7.0.0-x86_64-linux-gnu-ubuntu-16.04/"
|
||||||
make release
|
make release
|
||||||
mkdir -p artifacts
|
mkdir -p artifacts
|
||||||
VERSION=$(cargo pkgid | cut -d# -f2 | cut -d: -f2)
|
VERSION=$(cargo pkgid | cut -d# -f2 | cut -d: -f2)
|
||||||
@ -169,7 +176,6 @@ jobs:
|
|||||||
# Installing LLVM outside of brew
|
# Installing LLVM outside of brew
|
||||||
curl -O https://releases.llvm.org/7.0.0/clang+llvm-7.0.0-x86_64-apple-darwin.tar.xz
|
curl -O https://releases.llvm.org/7.0.0/clang+llvm-7.0.0-x86_64-apple-darwin.tar.xz
|
||||||
tar xf clang+llvm-7.0.0-x86_64-apple-darwin.tar.xz
|
tar xf clang+llvm-7.0.0-x86_64-apple-darwin.tar.xz
|
||||||
export LLVM_SYS_70_PREFIX="`pwd`/clang+llvm-7.0.0-x86_64-apple-darwin/"
|
|
||||||
- run:
|
- run:
|
||||||
name: Install Rust
|
name: Install Rust
|
||||||
command: |
|
command: |
|
||||||
@ -181,6 +187,7 @@ jobs:
|
|||||||
command: |
|
command: |
|
||||||
export PATH="`pwd`/cmake-3.4.1-Darwin-x86_64/CMake.app/Contents/bin:$PATH"
|
export PATH="`pwd`/cmake-3.4.1-Darwin-x86_64/CMake.app/Contents/bin:$PATH"
|
||||||
export PATH="$HOME/.cargo/bin:$PATH"
|
export PATH="$HOME/.cargo/bin:$PATH"
|
||||||
|
export LLVM_SYS_70_PREFIX="`pwd`/clang+llvm-7.0.0-x86_64-apple-darwin/"
|
||||||
# We increase the ulimit for fixing cargo unclosed files in mac
|
# We increase the ulimit for fixing cargo unclosed files in mac
|
||||||
ulimit -n 8000
|
ulimit -n 8000
|
||||||
sudo sysctl -w kern.maxfiles=655360 kern.maxfilesperproc=327680
|
sudo sysctl -w kern.maxfiles=655360 kern.maxfilesperproc=327680
|
||||||
@ -190,6 +197,7 @@ jobs:
|
|||||||
command: |
|
command: |
|
||||||
export PATH="`pwd`/cmake-3.4.1-Darwin-x86_64/CMake.app/Contents/bin:$PATH"
|
export PATH="`pwd`/cmake-3.4.1-Darwin-x86_64/CMake.app/Contents/bin:$PATH"
|
||||||
export PATH="$HOME/.cargo/bin:$PATH"
|
export PATH="$HOME/.cargo/bin:$PATH"
|
||||||
|
export LLVM_SYS_70_PREFIX="`pwd`/clang+llvm-7.0.0-x86_64-apple-darwin/"
|
||||||
make release
|
make release
|
||||||
mkdir -p artifacts
|
mkdir -p artifacts
|
||||||
# VERSION=$(cargo pkgid | cut -d# -f2 | cut -d: -f2)
|
# VERSION=$(cargo pkgid | cut -d# -f2 | cut -d: -f2)
|
||||||
@ -224,9 +232,10 @@ jobs:
|
|||||||
sudo apt-get install -y cmake
|
sudo apt-get install -y cmake
|
||||||
curl -O https://releases.llvm.org/7.0.0/clang+llvm-7.0.0-x86_64-linux-gnu-ubuntu-16.04.tar.xz
|
curl -O https://releases.llvm.org/7.0.0/clang+llvm-7.0.0-x86_64-linux-gnu-ubuntu-16.04.tar.xz
|
||||||
tar xf clang+llvm-7.0.0-x86_64-linux-gnu-ubuntu-16.04.tar.xz
|
tar xf clang+llvm-7.0.0-x86_64-linux-gnu-ubuntu-16.04.tar.xz
|
||||||
export PATH=$PATH:`pwd`/clang+llvm-7.0.0-x86_64-linux-gnu-ubuntu-16.04/bin/
|
|
||||||
- run: rustup default nightly
|
- run: rustup default nightly
|
||||||
- run: make test
|
- run: |
|
||||||
|
export LLVM_SYS_70_PREFIX="`pwd`/clang+llvm-7.0.0-x86_64-linux-gnu-ubuntu-16.04/"
|
||||||
|
make test
|
||||||
- save_cache:
|
- save_cache:
|
||||||
paths:
|
paths:
|
||||||
- /usr/local/cargo/registry
|
- /usr/local/cargo/registry
|
||||||
|
@ -39,23 +39,31 @@ public:
|
|||||||
uintptr_t read_write_data_size,
|
uintptr_t read_write_data_size,
|
||||||
uint32_t read_write_data_align
|
uint32_t read_write_data_align
|
||||||
) override {
|
) override {
|
||||||
|
auto aligner = [](uintptr_t ptr, size_t align) {
|
||||||
|
if (ptr == 0) {
|
||||||
|
return align;
|
||||||
|
}
|
||||||
|
return (ptr + align - 1) & ~(align - 1);
|
||||||
|
};
|
||||||
|
|
||||||
|
|
||||||
uint8_t *code_ptr_out = nullptr;
|
uint8_t *code_ptr_out = nullptr;
|
||||||
size_t code_size_out = 0;
|
size_t code_size_out = 0;
|
||||||
auto code_result = callbacks.alloc_memory(code_size, PROTECT_READ_WRITE, &code_ptr_out, &code_size_out);
|
auto code_result = callbacks.alloc_memory(aligner(code_size, 4096), PROTECT_READ_WRITE, &code_ptr_out, &code_size_out);
|
||||||
assert(code_result == RESULT_OK);
|
assert(code_result == RESULT_OK);
|
||||||
code_section = Section { code_ptr_out, code_size_out };
|
code_section = Section { code_ptr_out, code_size_out };
|
||||||
code_bump_ptr = (uintptr_t)code_ptr_out;
|
code_bump_ptr = (uintptr_t)code_ptr_out;
|
||||||
|
|
||||||
uint8_t *read_ptr_out = nullptr;
|
uint8_t *read_ptr_out = nullptr;
|
||||||
size_t read_size_out = 0;
|
size_t read_size_out = 0;
|
||||||
auto read_result = callbacks.alloc_memory(read_data_size, PROTECT_READ_WRITE, &read_ptr_out, &read_size_out);
|
auto read_result = callbacks.alloc_memory(aligner(read_data_size, 4096), PROTECT_READ_WRITE, &read_ptr_out, &read_size_out);
|
||||||
assert(read_result == RESULT_OK);
|
assert(read_result == RESULT_OK);
|
||||||
read_section = Section { read_ptr_out, read_size_out };
|
read_section = Section { read_ptr_out, read_size_out };
|
||||||
read_bump_ptr = (uintptr_t)read_ptr_out;
|
read_bump_ptr = (uintptr_t)read_ptr_out;
|
||||||
|
|
||||||
uint8_t *readwrite_ptr_out = nullptr;
|
uint8_t *readwrite_ptr_out = nullptr;
|
||||||
size_t readwrite_size_out = 0;
|
size_t readwrite_size_out = 0;
|
||||||
auto readwrite_result = callbacks.alloc_memory(read_write_data_size, PROTECT_READ_WRITE, &readwrite_ptr_out, &readwrite_size_out);
|
auto readwrite_result = callbacks.alloc_memory(aligner(read_write_data_size, 4096), PROTECT_READ_WRITE, &readwrite_ptr_out, &readwrite_size_out);
|
||||||
assert(readwrite_result == RESULT_OK);
|
assert(readwrite_result == RESULT_OK);
|
||||||
readwrite_section = Section { readwrite_ptr_out, readwrite_size_out };
|
readwrite_section = Section { readwrite_ptr_out, readwrite_size_out };
|
||||||
readwrite_bump_ptr = (uintptr_t)readwrite_ptr_out;
|
readwrite_bump_ptr = (uintptr_t)readwrite_ptr_out;
|
||||||
|
Loading…
Reference in New Issue
Block a user