1
0
mirror of synced 2024-11-28 09:30:51 +01:00

plugins: Added windows-only features plugin

This commit is contained in:
WerWolv 2021-05-29 21:52:18 +02:00
parent c42bd6008a
commit c373174436
4 changed files with 53 additions and 4 deletions

View File

@ -12,6 +12,7 @@ setDefaultBuiltTypeIfUnset()
# List plugin names here. Project name must match folder name # List plugin names here. Project name must match folder name
set(PLUGINS set(PLUGINS
builtin builtin
windows
# example # example
) )

View File

@ -161,10 +161,12 @@ endmacro()
macro(createPackage) macro(createPackage)
file(MAKE_DIRECTORY "plugins") file(MAKE_DIRECTORY "plugins")
foreach (plugin IN LISTS PLUGINS) foreach (plugin IN LISTS PLUGINS)
add_subdirectory("plugins/${plugin}") if (TARGET ${plugin})
set_target_properties(${plugin} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/plugins) add_subdirectory("plugins/${plugin}")
install(TARGETS ${plugin} RUNTIME DESTINATION ${PLUGINS_INSTALL_LOCATION}) set_target_properties(${plugin} PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}/plugins)
add_dependencies(imhex ${plugin}) install(TARGETS ${plugin} RUNTIME DESTINATION ${PLUGINS_INSTALL_LOCATION})
add_dependencies(imhex ${plugin})
endif ()
endforeach() endforeach()
set_target_properties(libimhex PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR}) set_target_properties(libimhex PROPERTIES RUNTIME_OUTPUT_DIRECTORY ${CMAKE_BINARY_DIR})

View File

@ -0,0 +1,36 @@
cmake_minimum_required(VERSION 3.16)
# Change this to the name of your plugin #
project(windows)
# Add your source files here #
if (WIN32)
add_library(${PROJECT_NAME} SHARED
source/plugin_windows.cpp
source/views/view_tty_console.cpp
)
# Add additional include directories here #
target_include_directories(${PROJECT_NAME} PRIVATE include)
# Add additional libraries here #
target_link_libraries(${PROJECT_NAME} PRIVATE libimhex)
endif ()
# ---- No need to change anything from here downwards unless you know what you're doing ---- #
set(CMAKE_CXX_STANDARD 20)
set(CMAKE_SHARED_LIBRARY_PREFIX "")
set(CMAKE_SHARED_LIBRARY_SUFFIX ".hexplug")
if (WIN32)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wl,--allow-multiple-definition -fvisibility=hidden")
endif()
add_compile_definitions(IMHEX_PLUGIN_NAME=${PROJECT_NAME})
if (NOT TARGET libimhex)
add_subdirectory(${CMAKE_CURRENT_SOURCE_DIR}/../libimhex ${CMAKE_CURRENT_BINARY_DIR}/plugins/libimhex)
endif()

View File

@ -0,0 +1,10 @@
#include <hex/plugin.hpp>
#include <imgui.h>
#include <imgui_internal.h>
#include "views/view_tty_console.hpp"
IMHEX_PLUGIN_SETUP("Windows", "WerWolv", "Windows-only features") {
}