diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index 029efb817..630fe126e 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -173,9 +173,9 @@ jobs: fi elif [ '${{ runner.os }}' == 'macOS' ]; then if [ '${{ matrix.config.arch }}' == 'arm64' ]; then - CMAKE_EXTRA_ARGS+=('-DCMAKE_OSX_DEPLOYMENT_TARGET="11.0"' '-DCMAKE_OSX_ARCHITECTURES=arm64') + CMAKE_EXTRA_ARGS+=('-DCMAKE_OSX_DEPLOYMENT_TARGET="11.0"' '-DCMAKE_OSX_ARCHITECTURES=arm64' '-DMAKE_BUNDLE=ON') else - CMAKE_EXTRA_ARGS+=('-DCMAKE_OSX_DEPLOYMENT_TARGET="10.9"' '-DCMAKE_OSX_ARCHITECTURES=x86_64') + CMAKE_EXTRA_ARGS+=('-DCMAKE_OSX_DEPLOYMENT_TARGET="10.9"' '-DCMAKE_OSX_ARCHITECTURES=x86_64' '-DMAKE_BUNDLE=ON') fi elif [ '${{ runner.os }}' == 'Linux' ] && [ '${{ matrix.config.arch }}' == 'armhf' ]; then CMAKE_EXTRA_ARGS+=('-DCMAKE_TOOLCHAIN_FILE=scripts/Cross-Linux-armhf.cmake') diff --git a/CMakeLists.txt b/CMakeLists.txt index 9f241e272..de9095227 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -143,6 +143,7 @@ if (APPLE) else() # not Apple - not needed set(FORCE_APPLE_BIN OFF) + set(MAKE_BUNDLE OFF) endif() set(DEPENDENCIES_INCLUDE_DIRS extern/IconFontCppHeaders src/icon) @@ -1182,7 +1183,7 @@ if (WIN32 AND CONSOLE_SUBSYSTEM) list(APPEND DEPENDENCIES_DEFINES "TA_SUBSYSTEM_CONSOLE") endif() -if (APPLE AND NOT FORCE_APPLE_BIN) +if (MAKE_BUNDLE AND NOT FORCE_APPLE_BIN) file(GLOB_RECURSE LOCALE_FILES po/locale) list(APPEND USED_SOURCES ${LOCALE_FILES}) endif() @@ -1195,8 +1196,8 @@ else() add_executable(furnace ${USED_SOURCES}) endif() -if (APPLE AND NOT FORCE_APPLE_BIN) - set_target_properties(furnace PROPERTIES RESOURCE "${LOCALE_FILES}") +if (MAKE_BUNDLE AND NOT FORCE_APPLE_BIN) + set_target_properties(furnace PROPERTIES MACOSX_BUNDLE True MACOSX_BUNDLE_INFO_PLIST res/Info.plist RESOURCE "${LOCALE_FILES}") endif() target_include_directories(furnace SYSTEM PRIVATE ${DEPENDENCIES_INCLUDE_DIRS})