mirror of
https://github.com/lifting-bits/sleigh
synced 2026-06-21 13:56:12 +00:00
24b9034914
Upstream has added a compression mechanism for compiled sleigh files. They use Zlib to perform the compression and have added the source code to the Ghidra repo. However, this commit does not use Ghidra's Zlib source and instead searches for it on the host. This commit also fixes a number of bugs that prevent various parts of the CI pipeline from working on supported OSes. These patches will be reported upstream. Changed files: ``` M Ghidra/Features/Decompiler/src/decompile/cpp/Makefile M Ghidra/Features/Decompiler/src/decompile/cpp/address.hh M Ghidra/Features/Decompiler/src/decompile/cpp/architecture.hh M Ghidra/Features/Decompiler/src/decompile/cpp/block.hh M Ghidra/Features/Decompiler/src/decompile/cpp/comment.hh A Ghidra/Features/Decompiler/src/decompile/cpp/compression.cc A Ghidra/Features/Decompiler/src/decompile/cpp/compression.hh M Ghidra/Features/Decompiler/src/decompile/cpp/float.cc M Ghidra/Features/Decompiler/src/decompile/cpp/float.hh M Ghidra/Features/Decompiler/src/decompile/cpp/flow.cc M Ghidra/Features/Decompiler/src/decompile/cpp/fspec.cc M Ghidra/Features/Decompiler/src/decompile/cpp/fspec.hh M Ghidra/Features/Decompiler/src/decompile/cpp/funcdata.hh M Ghidra/Features/Decompiler/src/decompile/cpp/funcdata_block.cc M Ghidra/Features/Decompiler/src/decompile/cpp/ifacedecomp.cc M Ghidra/Features/Decompiler/src/decompile/cpp/inject_sleigh.cc M Ghidra/Features/Decompiler/src/decompile/cpp/jumptable.hh M Ghidra/Features/Decompiler/src/decompile/cpp/marshal.cc M Ghidra/Features/Decompiler/src/decompile/cpp/marshal.hh M Ghidra/Features/Decompiler/src/decompile/cpp/op.cc M Ghidra/Features/Decompiler/src/decompile/cpp/op.hh M Ghidra/Features/Decompiler/src/decompile/cpp/options.cc M Ghidra/Features/Decompiler/src/decompile/cpp/pcodeparse.cc M Ghidra/Features/Decompiler/src/decompile/cpp/pcodeparse.y M Ghidra/Features/Decompiler/src/decompile/cpp/semantics.cc M Ghidra/Features/Decompiler/src/decompile/cpp/semantics.hh A Ghidra/Features/Decompiler/src/decompile/cpp/slaformat.cc A Ghidra/Features/Decompiler/src/decompile/cpp/slaformat.hh M Ghidra/Features/Decompiler/src/decompile/cpp/sleigh.cc M Ghidra/Features/Decompiler/src/decompile/cpp/sleigh_arch.cc M Ghidra/Features/Decompiler/src/decompile/cpp/sleighbase.cc M Ghidra/Features/Decompiler/src/decompile/cpp/sleighbase.hh M Ghidra/Features/Decompiler/src/decompile/cpp/slgh_compile.cc M Ghidra/Features/Decompiler/src/decompile/cpp/slgh_compile.hh M Ghidra/Features/Decompiler/src/decompile/cpp/slghparse.cc M Ghidra/Features/Decompiler/src/decompile/cpp/slghparse.hh M Ghidra/Features/Decompiler/src/decompile/cpp/slghparse.y M Ghidra/Features/Decompiler/src/decompile/cpp/slghpatexpress.cc M Ghidra/Features/Decompiler/src/decompile/cpp/slghpatexpress.hh M Ghidra/Features/Decompiler/src/decompile/cpp/slghpattern.cc M Ghidra/Features/Decompiler/src/decompile/cpp/slghpattern.hh M Ghidra/Features/Decompiler/src/decompile/cpp/slghscan.cc M Ghidra/Features/Decompiler/src/decompile/cpp/slghscan.l M Ghidra/Features/Decompiler/src/decompile/cpp/slghsymbol.cc M Ghidra/Features/Decompiler/src/decompile/cpp/slghsymbol.hh M Ghidra/Features/Decompiler/src/decompile/cpp/space.cc M Ghidra/Features/Decompiler/src/decompile/cpp/space.hh M Ghidra/Features/Decompiler/src/decompile/cpp/translate.cc M Ghidra/Features/Decompiler/src/decompile/cpp/translate.hh M Ghidra/Features/Decompiler/src/decompile/cpp/type.cc M Ghidra/Features/Decompiler/src/decompile/unittests/testfuncproto.cc M Ghidra/Features/Decompiler/src/decompile/unittests/testmarshal.cc A Ghidra/Features/Decompiler/src/decompile/zlib/README.txt A Ghidra/Features/Decompiler/src/decompile/zlib/adler32.c A Ghidra/Features/Decompiler/src/decompile/zlib/deflate.c A Ghidra/Features/Decompiler/src/decompile/zlib/deflate.h A Ghidra/Features/Decompiler/src/decompile/zlib/gzguts.h A Ghidra/Features/Decompiler/src/decompile/zlib/inffast.c A Ghidra/Features/Decompiler/src/decompile/zlib/inffast.h A Ghidra/Features/Decompiler/src/decompile/zlib/inffixed.h A Ghidra/Features/Decompiler/src/decompile/zlib/inflate.c A Ghidra/Features/Decompiler/src/decompile/zlib/inflate.h A Ghidra/Features/Decompiler/src/decompile/zlib/inftrees.c A Ghidra/Features/Decompiler/src/decompile/zlib/inftrees.h A Ghidra/Features/Decompiler/src/decompile/zlib/trees.c A Ghidra/Features/Decompiler/src/decompile/zlib/trees.h A Ghidra/Features/Decompiler/src/decompile/zlib/zconf.h A Ghidra/Features/Decompiler/src/decompile/zlib/zlib.h A Ghidra/Features/Decompiler/src/decompile/zlib/zutil.c A Ghidra/Features/Decompiler/src/decompile/zlib/zutil.h M Ghidra/Processors/68000/data/languages/68000.ldefs M Ghidra/Processors/AARCH64/certification.manifest M Ghidra/Processors/AARCH64/data/languages/AARCH64.ldefs M Ghidra/Processors/AARCH64/data/languages/AARCH64.opinion A Ghidra/Processors/AARCH64/data/languages/AARCH64_swift.cspec M Ghidra/Processors/AARCH64/data/languages/AppleSilicon.ldefs M Ghidra/Processors/ARM/data/languages/ARM.ldefs M Ghidra/Processors/Loongarch/data/languages/loongarch.ldefs M Ghidra/Processors/MIPS/data/languages/mips.ldefs M Ghidra/Processors/PA-RISC/data/languages/pa-risc.sinc M Ghidra/Processors/PowerPC/data/languages/ppc.ldefs M Ghidra/Processors/RISCV/data/languages/riscv.ldefs M Ghidra/Processors/Sparc/data/languages/SparcV9.ldefs M Ghidra/Processors/SuperH4/data/languages/SuperH4.ldefs M Ghidra/Processors/Xtensa/data/languages/xtensa.ldefs M Ghidra/Processors/x86/certification.manifest A Ghidra/Processors/x86/data/languages/x86-64-swift.cspec M Ghidra/Processors/x86/data/languages/x86.ldefs M Ghidra/Processors/x86/data/languages/x86.opinion ```
136 lines
3.7 KiB
JSON
136 lines
3.7 KiB
JSON
{
|
|
"version": 2,
|
|
"cmakeMinimumRequired": {
|
|
"major": 3,
|
|
"minor": 18,
|
|
"patch": 0
|
|
},
|
|
"configurePresets": [
|
|
{
|
|
"name": "cmake-pedantic",
|
|
"hidden": true,
|
|
"warnings": {
|
|
"dev": true,
|
|
"deprecated": true,
|
|
"uninitialized": true,
|
|
"unusedCli": true,
|
|
"systemVars": false
|
|
},
|
|
"errors": {
|
|
"dev": true,
|
|
"deprecated": true
|
|
}
|
|
},
|
|
{
|
|
"name": "dev-mode",
|
|
"hidden": true,
|
|
"inherits": "cmake-pedantic",
|
|
"cacheVariables": {
|
|
"sleigh_DEVELOPER_MODE": "ON",
|
|
"sleigh_BUILD_DOCUMENTATION": "ON"
|
|
}
|
|
},
|
|
{
|
|
"name": "ci-std",
|
|
"description": "This preset makes sure the project actually builds with at least the specified standard",
|
|
"hidden": true,
|
|
"cacheVariables": {
|
|
"CMAKE_CXX_EXTENSIONS": "OFF",
|
|
"CMAKE_CXX_STANDARD": "11",
|
|
"CMAKE_CXX_STANDARD_REQUIRED": "ON",
|
|
"CMAKE_POSITION_INDEPENDENT_CODE": "ON"
|
|
}
|
|
},
|
|
{
|
|
"name": "ci-std-tools",
|
|
"description": "This preset makes sure the project actually builds with at least the specified standard for extra sleigh tools",
|
|
"hidden": true,
|
|
"inherits": "ci-std",
|
|
"cacheVariables": {
|
|
"CMAKE_CXX_STANDARD": "17"
|
|
}
|
|
},
|
|
{
|
|
"name": "flags-unix",
|
|
"hidden": true,
|
|
"cacheVariables": {
|
|
"CMAKE_CXX_FLAGS": "-Wall -Wextra -Wpedantic -Wconversion -Wsign-conversion -Wcast-qual -Wshadow -Wformat=2 -Wundef"
|
|
}
|
|
},
|
|
{
|
|
"name": "flags-windows",
|
|
"description": "Note that all the flags after /W4 are required for MSVC to conform to the language standard",
|
|
"hidden": true,
|
|
"cacheVariables": {
|
|
"CMAKE_CXX_FLAGS": "/utf-8 /W4 /permissive- /volatile:iso /Zc:preprocessor /EHsc /Zc:__cplusplus /Zc:externConstexpr /Zc:throwingNew"
|
|
}
|
|
},
|
|
{
|
|
"name": "ci-unix",
|
|
"generator": "Unix Makefiles",
|
|
"hidden": true,
|
|
"inherits": ["flags-unix", "ci-std"],
|
|
"cacheVariables": {
|
|
"CMAKE_BUILD_TYPE": "RelWithDebInfo"
|
|
}
|
|
},
|
|
{
|
|
"name": "ci-win64",
|
|
"inherits": ["flags-windows", "ci-std"],
|
|
"generator": "Visual Studio 17 2022",
|
|
"architecture": "x64",
|
|
"cacheVariables": {
|
|
"CMAKE_TOOLCHAIN_FILE": "$env{VCPKG_INSTALLATION_ROOT}/scripts/buildsystems/vcpkg.cmake",
|
|
"VCPKG_TARGET_TRIPLET": "x64-windows-static"
|
|
},
|
|
"hidden": true
|
|
},
|
|
{
|
|
"name": "coverage-unix",
|
|
"binaryDir": "${sourceDir}/build/coverage",
|
|
"inherits": "ci-unix",
|
|
"hidden": true,
|
|
"cacheVariables": {
|
|
"ENABLE_COVERAGE": "ON",
|
|
"CMAKE_BUILD_TYPE": "Coverage",
|
|
"CMAKE_CXX_FLAGS_COVERAGE": "-Og -g --coverage -fkeep-static-functions",
|
|
"CMAKE_EXE_LINKER_FLAGS_COVERAGE": "--coverage",
|
|
"CMAKE_SHARED_LINKER_FLAGS_COVERAGE": "--coverage"
|
|
}
|
|
},
|
|
{
|
|
"name": "ci-coverage",
|
|
"inherits": ["coverage-unix", "dev-mode"],
|
|
"cacheVariables": {
|
|
"COVERAGE_HTML_COMMAND": ""
|
|
}
|
|
},
|
|
{
|
|
"name": "ci-sanitize",
|
|
"binaryDir": "${sourceDir}/build/sanitize",
|
|
"inherits": ["ci-unix", "dev-mode"],
|
|
"cacheVariables": {
|
|
"CMAKE_BUILD_TYPE": "Sanitize",
|
|
"CMAKE_CXX_FLAGS_SANITIZE": "-O2 -g -fsanitize=address,undefined -fno-omit-frame-pointer -fno-common"
|
|
}
|
|
},
|
|
{
|
|
"name": "ci-build",
|
|
"binaryDir": "${sourceDir}/build",
|
|
"hidden": true
|
|
},
|
|
{
|
|
"name": "ci-macos",
|
|
"inherits": ["ci-build", "ci-unix", "dev-mode"]
|
|
},
|
|
{
|
|
"name": "ci-ubuntu",
|
|
"inherits": ["ci-build", "ci-unix", "dev-mode"]
|
|
},
|
|
{
|
|
"name": "ci-windows",
|
|
"inherits": ["ci-build", "ci-win64", "dev-mode"]
|
|
}
|
|
]
|
|
}
|