Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/mono.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
path: root/sdks
diff options
context:
space:
mode:
authorRodrigo Kumpera <kumpera@gmail.com>2018-09-15 00:05:44 +0300
committerRodrigo Kumpera <kumpera@gmail.com>2018-09-15 00:09:29 +0300
commitc9548193256f7dde7c8c52f511a282369486b562 (patch)
tree5bde914d7858c11f8699122d9f00956da8a745c4 /sdks
parent9d7d7702d8b28497259e98693d15e24123f6b60f (diff)
[wasm] Move test-suite to be ninja based.
Diffstat (limited to 'sdks')
-rw-r--r--sdks/wasm/Makefile14
-rw-r--r--sdks/wasm/packager.cs22
2 files changed, 21 insertions, 15 deletions
diff --git a/sdks/wasm/Makefile b/sdks/wasm/Makefile
index cbd64030df0..88d4b4368c5 100644
--- a/sdks/wasm/Makefile
+++ b/sdks/wasm/Makefile
@@ -141,7 +141,9 @@ packager.exe: packager.cs Mono.Cecil.dll $(OPTIONS_CS)
TEST_ASSEMBLIES = $(WASM_BCL_DIR)/nunitlite.dll $(WASM_BCL_DIR)/tests/wasm_corlib_test.dll $(WASM_BCL_DIR)/tests/wasm_System_test.dll $(WASM_BCL_DIR)/tests/wasm_System.Core_test.dll
.stamp-build-test-suite: $(DRIVER_CONF)/.stamp-build packager.exe bindings.dll binding_tests.dll wasmhttp.dll mini_tests.dll main.exe runtime-tests.g.js
- mono packager.exe -template=runtime-tests.g.js -out=test-suite binding_tests.dll wasmhttp.dll mini_tests.dll main.exe $(TEST_ASSEMBLIES)
+ mono --debug packager.exe --template=runtime-tests.g.js --appdir=bin/test-suite --builddir=obj/test-suite binding_tests.dll wasmhttp.dll mini_tests.dll main.exe $(TEST_ASSEMBLIES)
+ ninja -v -C obj/test-suite
+ touch $@
MINI_BASIC_TEST_FILES= \
basic-calls.cs \
@@ -157,7 +159,7 @@ mini_tests_basic.dll: $(MINI_BASIC_TEST_SOURCES)
$(CSC) $(CSC_FLAGS) /unsafe -target:library -out:$@ -define:__MOBILE__,ARCH_32,NO_BITCODE /r:$(WASM_BCL_DIR)/mscorlib.dll $(MINI_BASIC_TEST_SOURCES)
aot-sample: $(DRIVER_CONF)/.stamp-build packager.exe mini_tests_basic.dll runtime.g.js
- mono packager.exe --emscripten-sdkdir=$(EMSCRIPTEN_SDKDIR) --mono-sdkdir=$(PWD)/../out -appdir=bin/aot-sample --builddir=obj/aot-sample --aot --nobinding --asset=aot-driver.js mini_tests_basic.dll
+ mono packager.exe --emscripten-sdkdir=$(EMSCRIPTEN_SDKDIR) --mono-sdkdir=$(PWD)/../out --appdir=bin/aot-sample --builddir=obj/aot-sample --aot --nobinding --asset=aot-driver.js mini_tests_basic.dll
ninja -v -C obj/aot-sample
do-aot-sample: aot-sample
@@ -180,16 +182,16 @@ JSC=~/.jsvu/jsc
SM=~/.jsvu/sm
run-ch-%: toolchain build-test-suite
- (cd test-suite && $(CHAKRA) runtime.js -args $*)
+ (cd bin/test-suite && $(CHAKRA) runtime.js -args $*)
run-v8-%: toolchain build-test-suite
- (cd test-suite && $(D8) --expose_wasm runtime.js -- $*)
+ (cd bin/test-suite && $(D8) --expose_wasm runtime.js -- $*)
run-jsc-%: toolchain build-test-suite
- (cd test-suite && $(JSC) runtime.js -- $*)
+ (cd bin/test-suite && $(JSC) runtime.js -- $*)
run-sm-%: toolchain build-test-suite
- (cd test-suite && $(SM) runtime.js $*)
+ (cd bin/test-suite && $(SM) runtime.js $*)
# Leaving JSC for now cuz it aborts when it encounters wasm
run-all-%:
diff --git a/sdks/wasm/packager.cs b/sdks/wasm/packager.cs
index 5e12d9729d0..0be1d7803a4 100644
--- a/sdks/wasm/packager.cs
+++ b/sdks/wasm/packager.cs
@@ -215,9 +215,11 @@ class Driver {
} else if (Directory.Exists (Path.Combine (tool_prefix, "../out/bcl/wasm"))) {
framework_prefix = tool_prefix; //all framework assemblies are currently side built to packager.exe
bcl_prefix = Path.Combine (tool_prefix, "../out/bcl/wasm");
+ sdkdir = Path.Combine (tool_prefix, "../out");
} else {
framework_prefix = Path.Combine (tool_prefix, "framework");
bcl_prefix = Path.Combine (tool_prefix, "bcl");
+ sdkdir = tool_prefix;
}
bcl_facades_prefix = Path.Combine (bcl_prefix, "Facades");
@@ -302,12 +304,9 @@ class Driver {
Console.WriteLine ("The --emscripten-sdkdir argument is required when using AOT.");
Environment.Exit (1);
}
+ GenDriver (builddir, assembly_names);
}
- GenDriver (builddir, assembly_names);
-
- File.Delete (Path.Combine (builddir, "driver.c"));
- File.Copy (Path.Combine (tool_prefix, "driver.c"), Path.Combine (builddir, "driver.c"));
runtime_dir = Path.GetFullPath (runtime_dir);
sdkdir = Path.GetFullPath (sdkdir);
@@ -348,13 +347,18 @@ class Driver {
ninja.WriteLine ("build $appdir: mkdir");
ninja.WriteLine ("build $appdir/$deploy_prefix: mkdir");
ninja.WriteLine ("build $appdir/runtime.js: cpifdiff $builddir/runtime.js");
- if (!enable_aot)
- ninja.WriteLine ("build $appdir/mono.js: cpifdiff $wasm_runtime_dir/mono.js");
- ninja.WriteLine ("build $appdir/mono.wasm: cpifdiff $wasm_runtime_dir/mono.wasm");
- ninja.WriteLine ("build $builddir/driver.o: emcc $builddir/driver.c");
- if (enable_aot)
+ if (enable_aot) {
+ var source_file = Path.GetFullPath (Path.Combine (tool_prefix, "driver.c"));
+ ninja.WriteLine ($"build $builddir/driver.c: cpifdiff {source_file}");
+
+ ninja.WriteLine ("build $builddir/driver.o: emcc $builddir/driver.c");
ninja.WriteLine (" flags = -DENABLE_AOT=1");
+ } else {
+ ninja.WriteLine ("build $appdir/mono.js: cpifdiff $wasm_runtime_dir/mono.js");
+ ninja.WriteLine ("build $appdir/mono.wasm: cpifdiff $wasm_runtime_dir/mono.wasm");
+ }
+
var ofiles = "";
foreach (var assembly in asm_list) {
string filename = Path.GetFileName (assembly);