Commit Graph

27 Commits (master)

Author SHA1 Message Date
italo b3476006e7 add SEPARATE_ASM_MODULE_NAME
5 years ago
Paul Shapiro 5a9a8d9446 updated core-cpp and rebuilt for 0.14.0.0
5 years ago
Paul Shapiro 0ce8edc564
Merge pull request #86 from cutcoin/fix_binaryen_method_issue
5 years ago
Paul Shapiro a2b1075c7f NODEJS_CATCH_EXIT=0
5 years ago
Paul Shapiro 84490e83c1 moved emscr_async_send_bridge back to this repo
5 years ago
Cutcoin 31426fce35 fixed issue with deprecated emscripten parameter BINARYEN_METHOD
5 years ago
Paul Shapiro 2bf0c5363f migrated emscr_async_send_bridge to mymonero-core-cpp for future
5 years ago
Paul Shapiro 1ba894aed3 added emscr async send bridge, beginning to implement new async send bridge
6 years ago
Paul Shapiro 18b281e134 enabled asmjs as additional build target, and added code to monero_utils/MyMoneroCoreBridge.js with preliminary wasm support detection and fallback to loading separated asm.js file (and different MyMoneroCoreCpp for ASMJS) to remove need for wasm users to load asmjs and asmjs loading code; the asm.js file is separated out from MyMoneroCoreCpp_ASMJS.js with --separate-asm to improve initial load time and, more importantly here, to enable bin/package_browser_js and other webpack like builds to keep the majority of the asmjs separate from the main mymonero_core.js (or e.g. mymonero_app_browser.js) bundle, so that wasm users don't have to load the asmjs along with the main app bundle - however, the overhead of bundling MyMoneroCoreCpp_ASMJS.js into such a main bundle does still exist. in near future, it would be nice to add an option to webpack.config.browser.common.js or bin/package_browser_js or possible just inheriting/alternate versions of those which can opt to remove asmjs support and throw an exception or alert if it's simply not supported - this is probably what MyMonero will move to within a year or two as legacy browsers fade from usage
6 years ago
Paul Shapiro 64bc1cfa96 monero_utils/monero_utils: added webassembly detection with separate flag to indicate availability of asmjs in build (set to off for now until it can be packaged and loaded separately - probably requires exception in webpack config; tweaks to asmjs build flags to improve performance; added tests/web/test_harness.html (run with simple http server having copied webpacked build/mymonero-core.js and build/mymonero_core_js/ to tests/web/
6 years ago
Paul Shapiro 5611835d14 updated mymonero-core-cpp; updated bridge for new stepwise sending implementation (ported majority of SendFunds to C++ as send_step*_…; updated tests and removed removed bridge methods like calculate_fee, estimate rct tx size, and create_transaction; New: added tests/sendingFunds.spec.js as integration tests for new monero_sendingFunds_utils implementation - run with 'npm test -- tests/sendingFunds.spec.js'; CMakeLists: enabled ASSERTIONS
6 years ago
Paul Shapiro fdd92d9658 CMakeLists: memory-init-file=0 (no .mem) option for asmjs builds since some clients like RN have trouble loading them -- this can be re-enabled as an option perhaps by cmake option
6 years ago
Paul Shapiro 3d64d6e0ba added a way to build for and run asmjs
6 years ago
Paul Shapiro 9c20339f19 updated emscripten build for 0.13.0.3 (enabled bulletproofs); updated emscripten to that built by 1.38.13 from 1.38.8; added boost::chrono fsyncobj now()
6 years ago
Paul Shapiro ef830ad28a lots of moving things around; implemented promise constructor for monero_utils (which is actually MyMoneroCoreBridge, a new class to replace cnUtil).. this was chosen after trying both promises directly in the functions and async/await in one or two decent patterns in order to avoid the requirement that integrators support async/await and to retain the option for calls to monero_utils to remain synchronous - added src/module-post as a post-js in order to fix emscripten .then infinite loop ... this PR does not include any kind of support for calling from electron renderer to electron main - that is, the code to detect electron renderer, then intercept ret.err_msg and throw only if not in electron renderer, and relay ret.err_msg otherwise has been removed for the moment.. will likely be added back
6 years ago
Paul Shapiro 8dc79ad999 switching back to wasm and optimizing via lto - we must be on the watch for regressions with LTO; removing link to various boost libs which are apparently unnecessary - surprised me, not sure I understand
6 years ago
Paul Shapiro b7a996349e some minor cleanups and rebuilds.. switching to O3 instead of Oz to retest speed of key img gen under asm.js before wasm given now no openssl dep
6 years ago
Paul Shapiro a7d31c8777 removing openssl
6 years ago
Paul Shapiro d517038059 switching from wasm to asm.js for numerous reasons such as load time (currently, tradeoff is that seed-and-keys-from-mnemonic takes a long time for some reason, maybe keccak... keep JS impl?), switching optimizations to speed
6 years ago
Paul Shapiro 59a383c7c1 bridged new serial_bridge_index methods and added all manual call test cases in MyMoneroCoreCpp_int.node.js - pending replacing JS API fns with these calls. this commit shows the first working POC of transpiling the major monero src to JS, and has shown that startup time must be optimized. that's currently a WIP.. contribution welcome
6 years ago
Paul Shapiro e58ff678d3 openssl build scripts -- pending bridge to new C++ impls, incl bulletproofs
6 years ago
Paul Shapiro ad4d8024f8 modified emcpp build script organization and added flags
6 years ago
Paul Shapiro b529bdbeaa fix ups to emscripten build procedures; swapped cryptonote_crypto_EMSCRIPTEN with MyMoneroCoreCpp.(js,wasm), and had to introduce blocking to methods which use CNCrypto var due to new async Module init; updated Readme
6 years ago
Paul Shapiro 75a207d428 boost buildchain (download expanded dir contents to contrib/boost-sdk .. may make it a locked submod later but leaving version open for now since we have working 1.6.7) & working monero src sc_reduce32 poc include + JS call
6 years ago
Paul Shapiro 3d24fc09b8 transition commit adding monero-core-custom, prior to adding boost
6 years ago
Paul Shapiro c04651731e sc_reduce32 poc
6 years ago
Paul Shapiro 7a7148537c initial emjs build & test chain impl - excluding it from global jest tests pending imminent wasm parent path fix PR merge
6 years ago