39 Commits

Author SHA1 Message Date
Elias Bachaalany
7a42bc7ad3 cmake: rename MOMO_BUILD_AS_LIBRARY to SOGEN_BUILD_STATIC
Also adds FATAL_ERROR guard when SOGEN_STATIC_CRT=ON without SOGEN_BUILD_STATIC=ON,
since static CRT with shared libraries causes heap corruption (each DLL gets its own
allocator but sogen passes ownership across boundaries).

These options are designed to be used together for full static linking, useful for
embedding sogen in projects like IDA Pro plugins.
2025-12-02 16:24:27 -08:00
Elias Bachaalany
d4166a5c8d cmake: add SOGEN_STATIC_CRT option for static runtime linking
Add option to use static CRT (/MT) instead of dynamic (/MD) for
projects that require static linking, such as IDA Pro plugins.

- Default remains /MD (no change for existing users)
- Set -DSOGEN_STATIC_CRT=ON to use /MT
- Also respects parent's CMAKE_MSVC_RUNTIME_LIBRARY if already set

Includes warning about potential heap corruption when allocations
cross library boundaries with static CRT.
2025-11-26 17:56:48 -08:00
Maurice Heumann
e8d63ce9e8 Update compiler-env.cmake 2025-09-03 07:17:28 +01:00
Maurice Heumann
37310a308b Fix Node.js analyzer 2025-08-24 08:43:23 +02:00
momo5502
adb94f37bd Prepare memory 64 support 2025-07-09 17:38:10 +02:00
momo5502
9abdae11cb Enable emscripten assertions only for debug builds 2025-06-29 20:54:21 +02:00
momo5502
98010268a6 Statically link libraries for mingw 2025-05-31 12:00:14 +02:00
momo5502
c50fdd17a4 Fix compilation warnings 2025-05-31 10:37:04 +02:00
momo5502
5c0a1ce5c2 Build and test MinGW in CI 2025-05-31 09:47:55 +02:00
Hacksign
6585ffa9b4 REMOVE: wanring messages. NEW: compiler version check. 2025-05-30 16:02:04 +08:00
Hacksign
125d927725 Merge branch 'momo5502:main' into main 2025-05-30 13:58:12 +08:00
Hacksign
829e3d95a6 UPDATE: modify cmake scripts, adding warning messages. 2025-05-30 12:37:35 +08:00
Hacksign
e9a6911019 NEW: Add cross compile support on X86_64 Linux with MinGW toolchain. 2025-05-29 18:48:04 +08:00
momo5502
b5f84a3623 Use RelWithDebInfo 2025-05-29 10:13:17 +02:00
momo5502
5022e3049a Fix sccache 2025-05-29 09:58:51 +02:00
momo5502
2fce53b3e7 Fix playground 2025-04-29 18:14:26 +02:00
momo5502
c4e8aa47b4 Prepare web debugger 2025-04-29 09:25:45 +02:00
momo5502
566deba033 Prepare asyncify support 2025-04-23 10:41:40 +02:00
momo5502
30a750dea5 Allow consuming up to 4gb of memory with emscripten 2025-04-19 09:41:27 +02:00
momo5502
ef72596436 Add nodejs support 2025-04-18 16:59:04 +02:00
momo5502
c866380fe0 Fix exceptions 2025-04-18 12:40:26 +02:00
momo5502
5147e25812 Cleanup compilation 2025-04-18 09:14:57 +02:00
momo5502
c1553ad2ec Fixes for emscripten 2025-04-17 19:40:20 +02:00
momo5502
1d47e06253 More fixes 2025-04-14 20:27:02 +02:00
momo5502
fb644b8bf1 Disable avx2 for android 2025-04-12 08:54:18 +02:00
momo5502
f42005ce5d Add avx2 support 2025-04-12 08:26:38 +02:00
momo5502
1cdf280fcf Support disabling rust code 2025-04-01 18:49:41 +02:00
momo5502
9cf61cb058 Build with asan 2025-03-19 06:50:58 +01:00
momo5502
cb7c7091da Remove unneeded options 2025-02-08 08:39:31 +01:00
Maurice Heumann
0029582d12 Support port and path mappings 2025-02-04 09:04:52 +01:00
momo5502
6b43e53a6f Don't build universal binaries on macOS 2025-01-25 07:24:02 +01:00
Maurice Heumann
ff51fbcb24 Update compiler-env.cmake 2025-01-25 07:24:02 +01:00
momo5502
7d65059151 Test auto var init 2025-01-25 07:24:02 +01:00
momo5502
ec1333278b Implement root fs handling 2025-01-25 07:24:01 +01:00
momo5502
f19945121e Add hint comment 2024-11-18 16:57:51 +01:00
momo5502
9472ee4feb Enable LTO 2024-09-08 16:12:19 +02:00
momo5502
c277de1ef0 Fix execution 2024-08-21 19:25:44 +02:00
momo5502
aa047c6227 Working unicorn 2024-08-16 21:56:05 +02:00
momo5502
a154eb3ec9 Initial commit 2024-08-15 19:00:01 +02:00