From 7723ff1eb8965bacdd3a241c628db15cdb0cccd9 Mon Sep 17 00:00:00 2001 From: Andi McClure Date: Fri, 16 Jun 2017 16:43:57 -0400 Subject: [PATCH] Now builds successfully (but does not run) with current mono master --- .gitignore | 2 +- .hgignore | 2 +- README.md | 18 +++++++++--------- external/mono-compile | 2 +- external/mono-runtime | 2 +- 5 files changed, 13 insertions(+), 13 deletions(-) diff --git a/.gitignore b/.gitignore index 0ea6b6a..c38f6a5 100644 --- a/.gitignore +++ b/.gitignore @@ -1 +1 @@ -install/mono-llvm/ \ No newline at end of file +install/llvm/ diff --git a/.hgignore b/.hgignore index 0ea6b6a..c38f6a5 100644 --- a/.hgignore +++ b/.hgignore @@ -1 +1 @@ -install/mono-llvm/ \ No newline at end of file +install/llvm/ diff --git a/README.md b/README.md index 9aa1fc5..c0289a5 100644 --- a/README.md +++ b/README.md @@ -122,7 +122,7 @@ I also think it is worth sometime soon approaching WebAssembly to ask about, at Note that, somewhat terrifyingly, link errors in emscripten are *warnings*; you get a warning at link time, and then an exception thrown at runtime if you try to call a nonexistent function. -- In my test steps (see below) I don't use `--with-runtime_preset=mobile_static`. I probably should. +- In my test steps (see below) I don't use `--with-runtime_preset=testing_aot_full`. I probably should. ### Entirely abstract issues @@ -144,21 +144,21 @@ Install emscripten and node.js (I suggest doing this via Homebrew). Check out th # Build llvm and install it into a "install/mono-llvm" dir mkdir -p install/llvm cd external/llvm - (cd cmake && cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=`pwd`/../../../install/llvm ..) + (cd cmake && cmake -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=`pwd`/../../install/llvm ..) (cd cmake && make install) cd .. # Build compiler. Also build a mobile_static corlib and disable ALWAYS_AOT. - cd mono_compile - ./autogen.sh --enable-nls=no "CFLAGS=-O0" CC="ccache clang" --disable-boehm --with-sigaltstack=no --prefix=`pwd`/../../install/mono-compile --enable-maintainer-mode --enable-llvm --enable-llvm-runtime --with-llvm=`pwd`/../../install/llvm + cd external/mono-compile + ./autogen.sh --enable-nls=no "CFLAGS=-O0" CC="ccache clang" --disable-boehm --with-sigaltstack=no --prefix=`pwd`/../../install/mono-compile --enable-maintainer-mode --enable-llvm --enable-llvm-runtime --with-llvm=`pwd`/../../../install/llvm --disable-mcs-build make -j8 - (cd mcs/class/corlib && make PROFILE=mobile_static ALWAYS_AOT=) + (cd mcs/class/corlib && make PROFILE=testing_aot_full ALWAYS_AOT=) cd .. # Build runtime. You're going to be doing this with emscripten, so it looks a little funny. # Running "make" will get only as far as starting to build the standard library, then fail # with an error about mcs or jay/jay. That's fine, keep going, we only need the static libs. - cd mono_runtime + cd external/mono-runtime emconfigure ./autogen.sh --enable-nls=no --disable-boehm --with-sigaltstack=no --prefix=`pwd`/../../install/mono-runtime --enable-maintainer-mode --with-cooperative-gc=yes --enable-division-check --with-sgen-default-concurrent=no --host=asmjs-local-emscripten --enable-minimal=jit emmake make cd .. @@ -169,11 +169,11 @@ Install emscripten and node.js (I suggest doing this via Homebrew). Check out th # And set some environment variables. # This is mostly to set us up to use the AOT compiler without actually installing it. export TESTS=`pwd`; - export COMPILER=$TESTS/install/mono-compile RUNTIME=$TESTS/install/mono-runtime; + export COMPILER=$TESTS/external/mono-compile RUNTIME=$TESTS/external/mono-runtime; export COMPILER_BIN=$COMPILER/runtime/_tmpinst/bin; export MONO_CFG_DIR=$COMPILER/runtime/etc MONO_PATH=$COMPILER/mcs/class/lib/net_4_x; - export PATH=$PATH:"$TESTS/mono_llvm/bin"; - export MSCORLIB_PATH=$COMPILER/mcs/class/lib/mobile_static; + export PATH=$PATH:"$TESTS/install/llvm/bin"; + export MSCORLIB_PATH=$COMPILER/mcs/class/lib/testing_aot_full; export MSCORLIB=$MSCORLIB_PATH/mscorlib.dll # This will become the virtual filesystem of the emscripten program diff --git a/external/mono-compile b/external/mono-compile index fd760f7..873e179 160000 --- a/external/mono-compile +++ b/external/mono-compile @@ -1 +1 @@ -Subproject commit fd760f79859c27393708dc88d33f980369e47068 +Subproject commit 873e1798261a257c05331ce93605805e1ecf2941 diff --git a/external/mono-runtime b/external/mono-runtime index fd760f7..873e179 160000 --- a/external/mono-runtime +++ b/external/mono-runtime @@ -1 +1 @@ -Subproject commit fd760f79859c27393708dc88d33f980369e47068 +Subproject commit 873e1798261a257c05331ce93605805e1ecf2941