@@ -13,8 +13,8 @@ FetchContent_Declare(arcana.cpp
1313 GIT_REPOSITORY https://github.com/microsoft/arcana.cpp.git
1414 GIT_TAG 1a8a5d6e95413ed14b38a6ac9419048f9a9c8009)
1515FetchContent_Declare (AndroidExtensions
16- GIT_REPOSITORY https://github.com/bghgary /AndroidExtensions.git
17- GIT_TAG 7d88a601fda9892791e7b4e994e375e049615688 )
16+ GIT_REPOSITORY https://github.com/matthargett /AndroidExtensions.git
17+ GIT_TAG 4ffcc4ab149a02b9ee72622eee708b2753fd2093 )
1818FetchContent_Declare (asio
1919 GIT_REPOSITORY https://github.com/chriskohlhoff/asio.git
2020 GIT_TAG f693a3eb7fe72a5f19b975289afc4f437d373d9c)
@@ -72,6 +72,28 @@ option(JSRUNTIMEHOST_POLYFILL_URL "Include JsRuntimeHost Polyfill URL and URLSea
7272option (JSRUNTIMEHOST_POLYFILL_ABORT_CONTROLLER "Include JsRuntimeHost Polyfills AbortController and AbortSignal." ON )
7373option (JSRUNTIMEHOST_POLYFILL_WEBSOCKET "Include JsRuntimeHost Polyfill WebSocket." ON )
7474option (JSRUNTIMEHOST_POLYFILL_BLOB "Include JsRuntimeHost Polyfill Blob." ON )
75+ option (JSR_ENABLE_ASAN "Enable AddressSanitizer support." OFF )
76+
77+ if (JSR_ENABLE_ASAN)
78+ message (STATUS "JSR_ENABLE_ASAN=ON (appending address sanitizer flags)" )
79+ set (JSR_ASAN_COMPILE_FLAGS "-fsanitize=address -fno-omit-frame-pointer" )
80+ foreach (var CMAKE_C_FLAGS CMAKE_CXX_FLAGS )
81+ if (NOT "${${var} }" MATCHES "-fsanitize=address" )
82+ set (${var} "${${var} } ${JSR_ASAN_COMPILE_FLAGS} " )
83+ endif ()
84+ set (${var} "${${var} }" CACHE STRING "" FORCE )
85+ endforeach ()
86+
87+ set (JSR_ASAN_LINK_FLAGS "-fsanitize=address" )
88+ foreach (var CMAKE_EXE_LINKER_FLAGS CMAKE_SHARED_LINKER_FLAGS )
89+ if (NOT "${${var} }" MATCHES "-fsanitize=address" )
90+ set (${var} "${${var} } ${JSR_ASAN_LINK_FLAGS} " )
91+ endif ()
92+ set (${var} "${${var} }" CACHE STRING "" FORCE )
93+ endforeach ()
94+ message (STATUS "ASan compile flags: C=${CMAKE_C_FLAGS } CXX=${CMAKE_CXX_FLAGS } " )
95+ message (STATUS "ASan link flags: EXE=${CMAKE_EXE_LINKER_FLAGS } SHARED=${CMAKE_SHARED_LINKER_FLAGS } " )
96+ endif ()
7597
7698# --------------------------------------------------
7799
0 commit comments