Files
asmjit/CMakePresets.json
kobalicek b56f4176cb Codebase update and improvements, instruction DB update
* Denested src folder to root, renamed testing to asmjit-testing

  * Refactored how headers are included into <asmjit/...> form. This
    is necessary as compilers would never simplify a path once a ..
    appears in include directory - then paths such as ../core/../core
    appeared in asserts, which was ugly

  * Moved support utilities into asmjit/support/... (still included
    by asmjit/core.h for convenience and compatibility)

  * Added CMakePresets.json for making it easy to develop AsmJit

  * Reworked CMakeLists to be shorter and use CMake option(),
    etc... This simplifies it and makes it using more standard
    features

  * ASMJIT_EMBED now creates asmjit_embed INTERFACE library,
    which is accessible via asmjit::asmjit target - this simplifies
    embedding and makes it the same as library targets from a CMake
    perspective

  * Removed ASMJIT_DEPS - this is now provided by cmake target
    aliases - 'asmjit::asmjit' so users should not need this variable

  * Changed meaning of ASMJIT_LIBS - this now contains only AsmJit
    dependencies without asmjit::asmjit target alias. Don't rely on
    ASMJIT_LIBS anymore as it's only used internally

  * Removed ASMJIT_NO_DEPRECATED option - AsmJit is not going
    to provide controllable deprecations in the future

  * Removed ASMJIT_NO_VALIDATION in favor of ASMJIT_NO_INTROSPECTION,
    which now controls query, features, and validation API presence

  * Removed ASMJIT_DIR option - it was never really needed

  * Removed AMX_TRANSPOSE feature from instruction database (X86).
    Intel has removed it as well, so it's a feature that won't
    be siliconized
2025-11-02 22:31:46 +01:00

52 lines
2.8 KiB
JSON

{
"version": 10,
"configurePresets": [
{
"name": "conf-base",
"hidden": true,
"description": "${presetName}",
"binaryDir": "${sourceDir}/build/${presetName}",
"cacheVariables": { "CMAKE_EXPORT_COMPILE_COMMANDS": "ON" }
},
{
"name": "conf-debug",
"hidden": true,
"inherits": "conf-base",
"cacheVariables": { "CMAKE_BUILD_TYPE": "Debug" }
},
{
"name": "conf-release",
"hidden": true,
"inherits": "conf-base",
"cacheVariables": { "CMAKE_BUILD_TYPE": "Release", "CMAKE_INTERPROCEDURAL_OPTIMIZATION": "ON" }
},
{ "name": "conf-test" , "hidden": true, "cacheVariables": { "ASMJIT_TEST": "ON" } },
{ "name": "conf-static" , "hidden": true, "cacheVariables": { "ASMJIT_STATIC": "ON" } },
{ "name": "conf-shared" , "hidden": true, "cacheVariables": { "ASMJIT_STATIC": "OFF" } },
{ "name": "conf-asan" , "hidden": true, "cacheVariables": { "ASMJIT_SANITIZE": "address" } },
{ "name": "conf-msan" , "hidden": true, "cacheVariables": { "ASMJIT_SANITIZE": "memory" } },
{ "name": "conf-tsan" , "hidden": true, "cacheVariables": { "ASMJIT_SANITIZE": "thread" } },
{ "name": "conf-ubsan" , "hidden": true, "cacheVariables": { "ASMJIT_SANITIZE": "undefined" } },
{ "name": "conf-32" , "hidden": true, "environment": { "CFLAGS": "-m32", "CXXFLAGS": "-m32" } },
{ "name": "debug" , "inherits": ["conf-debug", "conf-test", "conf-static"] },
{ "name": "debug-asan" , "inherits": ["conf-debug", "conf-test", "conf-static", "conf-asan"] },
{ "name": "debug-msan" , "inherits": ["conf-debug", "conf-test", "conf-static", "conf-msan"] },
{ "name": "debug-ubsan" , "inherits": ["conf-debug", "conf-test", "conf-static", "conf-ubsan"] },
{ "name": "debug-32" , "inherits": ["conf-debug", "conf-test", "conf-static", "conf-32"] },
{ "name": "debug-shared" , "inherits": ["conf-debug", "conf-test", "conf-shared"] },
{ "name": "debug-shared-32" , "inherits": ["conf-debug", "conf-test", "conf-shared", "conf-32"] },
{ "name": "release" , "inherits": ["conf-release", "conf-test", "conf-static"] },
{ "name": "release-asan" , "inherits": ["conf-release", "conf-test", "conf-static", "conf-asan"] },
{ "name": "release-msan" , "inherits": ["conf-release", "conf-test", "conf-static", "conf-msan"] },
{ "name": "release-ubsan" , "inherits": ["conf-release", "conf-test", "conf-static", "conf-ubsan"] },
{ "name": "release-32" , "inherits": ["conf-release", "conf-test", "conf-static", "conf-32"] },
{ "name": "release-shared" , "inherits": ["conf-release", "conf-test", "conf-shared"] },
{ "name": "release-shared-32", "inherits": ["conf-release", "conf-test", "conf-shared", "conf-32"] }
]
}