b751f98e91
* ui/ux: Initial recreation of the hex editor view * ui/ux: Added back support for editing cells * ux: Make scrolling and selecting bytes feel nice again * ui/ux: Improved byte selecting, added footer * sys: Make math evaluator more generic to support integer only calculations * patterns: Moved value formatting into pattern language * ui/ux: Added Goto and Search popups, improved selection * ui: Added better tooltips for bookmarks and patterns * sys: Use worse hex search algorithm on macOS Sadly it still doesn't support `std::boyer_moore_horsepool_searcher` * ui: Added back missing events, menu items and shortcuts * fix: Bookmark highlighting being rendered off by one * fix: Various macOS build errors * fix: size_t is not u64 on macos * fix: std::fmod and std::pow not working with integer types on macos * fix: Missing semicolons * sys: Added proper integer pow function * ui: Added back support for custom encodings * fix: Editor not jumping to selection when selection gets changed * ui: Turn Hexii setting into a data visualizer * sys: Added back remaining shortcuts * sys: Remove old hex editor files * sys: Moved more legacy things away from the hex editor view, updated localization * fix: Hex editor scrolling behaving weirdly and inconsistently * sys: Cleaned up Hex editor code * sys: Added selection color setting, localized all new settings * fix: Search feature not working correctly * ui: Replace custom ImGui::Disabled function with native ImGui ones * ui: Fix bookmark tooltip rendering issues * fix: Another size_t not being 64 bit issue on MacOS
81 lines
2.9 KiB
CMake
81 lines
2.9 KiB
CMake
cmake_minimum_required(VERSION 3.16)
|
|
# Change this to the name of your plugin #
|
|
project(builtin)
|
|
|
|
# Add your source files here #
|
|
add_library(${PROJECT_NAME} SHARED
|
|
source/plugin_builtin.cpp
|
|
|
|
source/content/command_palette_commands.cpp
|
|
source/content/data_inspector.cpp
|
|
source/content/pl_builtin_functions.cpp
|
|
source/content/pl_pragmas.cpp
|
|
source/content/settings_entries.cpp
|
|
source/content/tools_entries.cpp
|
|
source/content/data_processor_nodes.cpp
|
|
source/content/ui_items.cpp
|
|
source/content/providers.cpp
|
|
source/content/views.cpp
|
|
source/content/data_formatters.cpp
|
|
source/content/layouts.cpp
|
|
source/content/main_menu_items.cpp
|
|
source/content/welcome_screen.cpp
|
|
source/content/data_visualizers.cpp
|
|
source/content/events.cpp
|
|
|
|
source/content/providers/file_provider.cpp
|
|
source/content/providers/gdb_provider.cpp
|
|
source/content/providers/disk_provider.cpp
|
|
|
|
source/content/views/view_hex_editor.cpp
|
|
source/content/views/view_pattern_editor.cpp
|
|
source/content/views/view_pattern_data.cpp
|
|
source/content/views/view_hashes.cpp
|
|
source/content/views/view_information.cpp
|
|
source/content/views/view_about.cpp
|
|
source/content/views/view_tools.cpp
|
|
source/content/views/view_strings.cpp
|
|
source/content/views/view_data_inspector.cpp
|
|
source/content/views/view_disassembler.cpp
|
|
source/content/views/view_bookmarks.cpp
|
|
source/content/views/view_patches.cpp
|
|
source/content/views/view_command_palette.cpp
|
|
source/content/views/view_settings.cpp
|
|
source/content/views/view_data_processor.cpp
|
|
source/content/views/view_yara.cpp
|
|
source/content/views/view_constants.cpp
|
|
source/content/views/view_store.cpp
|
|
source/content/views/view_diff.cpp
|
|
source/content/views/view_provider_settings.cpp
|
|
|
|
|
|
source/math_evaluator.cpp
|
|
source/pattern_drawer.cpp
|
|
|
|
source/lang/en_US.cpp
|
|
source/lang/de_DE.cpp
|
|
source/lang/it_IT.cpp
|
|
source/lang/zh_CN.cpp
|
|
source/lang/ja_JP.cpp
|
|
)
|
|
|
|
# Add additional include directories here #
|
|
target_include_directories(${PROJECT_NAME} PRIVATE include)
|
|
|
|
# Add additional libraries here #
|
|
target_link_libraries(${PROJECT_NAME} PRIVATE libimhex LLVMDemangle)
|
|
|
|
# ---- 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_PROJECT_NAME="${PROJECT_NAME}")
|
|
set_target_properties(${PROJECT_NAME} PROPERTIES POSITION_INDEPENDENT_CODE ON)
|
|
target_compile_options(${PROJECT_NAME} PRIVATE -Wall -Wextra -Werror)
|