summaryrefslogtreecommitdiff
path: root/archived/projt-launcher/bootstrap/macos/CMakeLists.txt
blob: 28f496ab5b489520b6ba167d21963e443ee58786 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
find_package(LibXml2 REQUIRED)

set(BOOTSTRAP_NAME "ProjT Launcher Installer")
set(BOOTSTRAP_ICNS "${CMAKE_SOURCE_DIR}/${Launcher_Branding_ICNS}")
get_filename_component(BOOTSTRAP_ICNS_NAME "${BOOTSTRAP_ICNS}" NAME)
set(BOOTSTRAP_BUNDLE_ID "org.projecttick.ProjTLauncherInstaller")

add_executable(ProjTLauncherBootstrap MACOSX_BUNDLE
    Bootstrap.m
)

target_include_directories(ProjTLauncherBootstrap PRIVATE ${LIBXML2_INCLUDE_DIR})
target_link_libraries(ProjTLauncherBootstrap PRIVATE ${LIBXML2_LIBRARIES})
target_link_libraries(ProjTLauncherBootstrap PRIVATE "-framework CoreFoundation")
target_link_libraries(ProjTLauncherBootstrap PRIVATE "-framework Cocoa")

target_compile_definitions(ProjTLauncherBootstrap PRIVATE
    BOOTSTRAP_FEED_URL="${MACOSX_BOOTSTRAP_FEED_URL}"
    BOOTSTRAP_URL_TEMPLATE="${MACOSX_BOOTSTRAP_URL_TEMPLATE}"
)

set_target_properties(ProjTLauncherBootstrap PROPERTIES
    OUTPUT_NAME "${BOOTSTRAP_NAME}"
    MACOSX_BUNDLE_INFO_PLIST "${CMAKE_CURRENT_SOURCE_DIR}/Info.plist.in"
    MACOSX_BUNDLE_BUNDLE_NAME "${BOOTSTRAP_NAME}"
    MACOSX_BUNDLE_GUI_IDENTIFIER "${BOOTSTRAP_BUNDLE_ID}"
    MACOSX_BUNDLE_BUNDLE_VERSION "${Launcher_VERSION_NAME}"
    MACOSX_BUNDLE_SHORT_VERSION_STRING "${Launcher_VERSION_NAME}"
    MACOSX_BUNDLE_LONG_VERSION_STRING "${Launcher_VERSION_NAME}"
    MACOSX_BUNDLE_COPYRIGHT "${Launcher_Copyright_Mac}"
    MACOSX_BUNDLE_INFO_STRING "${MACOSX_BUNDLE_INFO_STRING}"
    MACOSX_BUNDLE_ICON_FILE "${BOOTSTRAP_ICNS_NAME}"
)

target_sources(ProjTLauncherBootstrap PRIVATE "${BOOTSTRAP_ICNS}")
set_source_files_properties("${BOOTSTRAP_ICNS}" PROPERTIES MACOSX_PACKAGE_LOCATION "Resources")

install(TARGETS ProjTLauncherBootstrap BUNDLE DESTINATION "." COMPONENT launcher)