@@ -12,7 +12,7 @@ option(BUILD_CUTTER_PLUGIN "Build r2ghidra plugin for Cutter" OFF)
1212option (BUILD_DECOMPILE_EXECUTABLE "Build \" decompile\" executable as used by Ghidra (not needed for r2)" OFF )
1313option (BUILD_DECOMPILE_CLI_EXECUTABLE "Build REPL decompiler (not needed for r2)" OFF )
1414option (BUILD_SLASPECS "Build Sleigh specs for architectures from Ghidra" ON )
15- option (BUILD_SLEIGH_PLUGIN "Build asm plugin to use sleigh as a disassembler in r2" OFF )
15+ option (BUILD_SLEIGH_PLUGIN "Build asm and anal plugin to use sleigh as a disassembler in r2" ON )
1616
1717list (APPEND CMAKE_MODULE_PATH "${CMAKE_CURRENT_SOURCE_DIR } /cmake" )
1818
@@ -53,7 +53,16 @@ if(BUILD_SLEIGH_PLUGIN)
5353set (ASM_SOURCE
5454 src/SleighAsm.h
5555 src/SleighAsm.cpp
56+ src/SleighInstruction.h
57+ src/SleighInstruction.cpp
5658 src/asm_ghidra.cpp)
59+
60+ set (ANAL_SOURCE
61+ src/SleighAsm.h
62+ src/SleighAsm.cpp
63+ src/SleighInstruction.h
64+ src/SleighInstruction.cpp
65+ src/anal_ghidra.cpp)
5766endif ()
5867
5968find_package (Radare2 REQUIRED )
@@ -78,16 +87,26 @@ set_target_properties(asm_ghidra PROPERTIES
7887 BUILD_RPATH "\$ ORIGIN"
7988 INSTALL_RPATH "\$ ORIGIN"
8089 PREFIX "" )
90+
91+ add_library (anal_ghidra SHARED ${ANAL_SOURCE} )
92+ target_link_libraries (anal_ghidra core_ghidra )
93+ set_target_properties (anal_ghidra PROPERTIES
94+ OUTPUT_NAME anal_ghidra
95+ BUILD_RPATH "\$ ORIGIN"
96+ INSTALL_RPATH "\$ ORIGIN"
97+ PREFIX "" )
8198endif ()
8299
83100if (SLEIGHHOME_DEFAULT)
84101 target_compile_definitions (core_ghidra PRIVATE "-DR2GHIDRA_SLEIGHHOME_DEFAULT=\" ${SLEIGHHOME_DEFAULT} \" " )
85102 if (BUILD_SLEIGH_PLUGIN)
86103 target_compile_definitions (asm_ghidra PRIVATE "-DR2GHIDRA_SLEIGHHOME_DEFAULT=\" ${SLEIGHHOME_DEFAULT} \" " )
104+ target_compile_definitions (anal_ghidra PRIVATE "-DR2GHIDRA_SLEIGHHOME_DEFAULT=\" ${SLEIGHHOME_DEFAULT} \" " )
87105 endif ()
88106endif ()
89107
90108install (TARGETS core_ghidra DESTINATION "${RADARE2_INSTALL_PLUGDIR} " )
91109if (BUILD_SLEIGH_PLUGIN)
92110install (TARGETS asm_ghidra DESTINATION "${RADARE2_INSTALL_PLUGDIR} " )
111+ install (TARGETS anal_ghidra DESTINATION "${RADARE2_INSTALL_PLUGDIR} " )
93112endif ()
0 commit comments