cmake: Do not ship resource.rc on non WIN32 systems
Also add some very early macOS bundle definitions.
This commit is contained in:
parent
bbd00a6020
commit
58a65b0004
@ -2,6 +2,10 @@ cmake_minimum_required(VERSION 3.16)
|
|||||||
|
|
||||||
project(imhex VERSION 1.5.0)
|
project(imhex VERSION 1.5.0)
|
||||||
|
|
||||||
|
if (APPLE)
|
||||||
|
option (CREATE_BUNDLE "Create a bundle on macOS" OFF)
|
||||||
|
endif()
|
||||||
|
|
||||||
set(CMAKE_FIND_PACKAGE_SORT_ORDER NATURAL)
|
set(CMAKE_FIND_PACKAGE_SORT_ORDER NATURAL)
|
||||||
set(CMAKE_FIND_PACKAGE_SORT_DIRECTION DEC)
|
set(CMAKE_FIND_PACKAGE_SORT_DIRECTION DEC)
|
||||||
set(CMAKE_CXX_STANDARD 20)
|
set(CMAKE_CXX_STANDARD 20)
|
||||||
@ -82,7 +86,29 @@ set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -DGIT_BRANCH=\"\\\"${GIT_BRANCH}\"\\\"")
|
|||||||
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -DRELEASE -DIMHEX_VERSION=\"\\\"${PROJECT_VERSION}\"\\\"")
|
set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} -DRELEASE -DIMHEX_VERSION=\"\\\"${PROJECT_VERSION}\"\\\"")
|
||||||
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DDEBUG -DIMHEX_VERSION=\"\\\"${PROJECT_VERSION}-Debug\"\\\"")
|
set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -DDEBUG -DIMHEX_VERSION=\"\\\"${PROJECT_VERSION}-Debug\"\\\"")
|
||||||
|
|
||||||
|
set(install_dest RUNTIME)
|
||||||
|
|
||||||
|
if (WIN32)
|
||||||
|
set(application_type WIN32)
|
||||||
|
set(imhex_icon resource.rc)
|
||||||
|
elseif (APPLE)
|
||||||
|
set (imhex_icon "${PROJECT_SOURCE_DIR}/res/mac/AppIcon.icns")
|
||||||
|
|
||||||
|
if (CREATE_BUNDLE)
|
||||||
|
set(application_type MACOSX_BUNDLE)
|
||||||
|
set_source_files_properties(${imhex_icon} PROPERTIES MACOSX_PACKAGE_LOCATION Resources)
|
||||||
|
set(MACOSX_BUNDLE_ICON_FILE "AppIcon.icns")
|
||||||
|
set(MACOSX_BUNDLE_INFO_STRING ${CPACK_PACKAGE_VENDOR})
|
||||||
|
set(MACOSX_BUNDLE_GUI_IDENTIFIER "WerWolv.ImHex")
|
||||||
|
set(MACOSX_BUNDLE_LONG_VERSION_STRING ${CPACK_PACKAGE_VERSION})
|
||||||
|
set(MACOSX_BUNDLE_SHORT_VERSION_STRING "${CPACK_PACKAGE_VERSION_MAJOR}.${CPACK_PACKAGE_VERSION_MINOR}")
|
||||||
|
set(MACOSX_BUNDLE_COPYRIGHT "Copyright © 2020 WerWolv. All rights reserved." )
|
||||||
|
set(install_dest BUNDLE)
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
add_executable(imhex
|
add_executable(imhex
|
||||||
|
${application_type}
|
||||||
source/main.cpp
|
source/main.cpp
|
||||||
source/window.cpp
|
source/window.cpp
|
||||||
|
|
||||||
@ -115,7 +141,7 @@ add_executable(imhex
|
|||||||
source/views/view_patches.cpp
|
source/views/view_patches.cpp
|
||||||
source/views/view_command_palette.cpp
|
source/views/view_command_palette.cpp
|
||||||
|
|
||||||
resource.rc
|
${imhex_icon}
|
||||||
)
|
)
|
||||||
|
|
||||||
set_target_properties(imhex PROPERTIES CXX_VISIBILITY_PRESET hidden)
|
set_target_properties(imhex PROPERTIES CXX_VISIBILITY_PRESET hidden)
|
||||||
@ -128,4 +154,4 @@ elseif (UNIX)
|
|||||||
target_link_libraries(imhex magic crypto ${CMAKE_DL_LIBS} capstone LLVMDemangle imgui libimhex ${Python_LIBRARIES} nlohmann_json::nlohmann_json dl)
|
target_link_libraries(imhex magic crypto ${CMAKE_DL_LIBS} capstone LLVMDemangle imgui libimhex ${Python_LIBRARIES} nlohmann_json::nlohmann_json dl)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
install(TARGETS imhex DESTINATION bin)
|
install(TARGETS imhex ${install_dest} DESTINATION ${CMAKE_INSTALL_BINDIR})
|
||||||
|
Before Width: | Height: | Size: 21 KiB After Width: | Height: | Size: 21 KiB |
BIN
res/icon.png
Normal file
BIN
res/icon.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 637 B |
BIN
res/mac/AppIcon.icns
Normal file
BIN
res/mac/AppIcon.icns
Normal file
Binary file not shown.
@ -1 +1 @@
|
|||||||
GLFW_ICON ICON icon.ico
|
GLFW_ICON ICON res/icon.ico
|
Loading…
Reference in New Issue
Block a user