Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/zyantific/ida-cmake
IDA plugin CMake build-script
https://github.com/zyantific/ida-cmake
build-script cmake ida plugin
Last synced: 3 months ago
JSON representation
IDA plugin CMake build-script
- Host: GitHub
- URL: https://github.com/zyantific/ida-cmake
- Owner: zyantific
- License: mit
- Archived: true
- Created: 2017-04-27T15:05:23.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2018-06-26T14:41:42.000Z (over 6 years ago)
- Last Synced: 2024-02-12T15:19:37.296Z (9 months ago)
- Topics: build-script, cmake, ida, plugin
- Language: CMake
- Homepage:
- Size: 16.6 KB
- Stars: 37
- Watchers: 10
- Forks: 23
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
IDA plugin CMake build-script
=============================This repository holds CMake build scripts and a Python helper allowing
compilation of C++ IDA plugins for Windows, macOS and Linux without
much user effort.## Simple plugin example usage:
##### Create plugin repo
```bash
git init myplugin
cd myplugin
git submodule add https://github.com/zyantific/ida-cmake.git ida-cmake
mkdir src
touch src/myplugin.cpp CMakeLists.txt
```##### CMakeLists.txt
```CMake
cmake_minimum_required(VERSION 3.1)
project(myplugin)include("ida-cmake/cmake/IDA.cmake")
set(sources "src/myplugin.cpp")
add_ida_plugin(${CMAKE_PROJECT_NAME} ${sources})
```##### src/myplugin.cpp
```cpp
#include
#include
#include/**
* @brief Initialization callback for IDA.
* @return A @c PLUGIN_ constant from loader.hpp.
*/
int idaapi init()
{
msg("%s", "Hello, IDA plugin world!\n");
return PLUGIN_KEEP;
}/**
* @brief Run callback for IDA.
*/
void idaapi run(int /*arg*/) {}/**
* @brief Shutdown callback for IDA.
*/
void idaapi term() {}plugin_t PLUGIN =
{
IDP_INTERFACE_VERSION,
0,
&init,
&term,
&run,
"My plugin name",
"My plugin description",
"My plugin menu entry text",
nullptr, // plugin hotkey, e.g. "Ctrl-Shift-A"
};
```##### Building and installing the plugin for IDA 6.95 on macOS
```bash
ida-cmake/build.py -i -t 6.95 \
--idaq-path '/Applications/IDA Pro 6.95.app/Contents/MacOS/'
```
Substitute `` with a directory of the IDA SDK corresponding to your IDA version.