diff --git a/launchers/qt/CMakeLists.txt b/launchers/qt/CMakeLists.txt index 3e23d2ee6a..8ecf42942a 100644 --- a/launchers/qt/CMakeLists.txt +++ b/launchers/qt/CMakeLists.txt @@ -183,12 +183,23 @@ if (WIN32) configure_file("${CMAKE_CURRENT_SOURCE_DIR}/cmake/templates/Icon.rc.in" ${CONFIGURE_ICON_RC_OUTPUT}) add_executable(${PROJECT_NAME} WIN32 ${src_files} ${RES_SOURCES} ${CONFIGURE_ICON_RC_OUTPUT}) elseif (APPLE) + set(APP_NAME "HQ Launcher") set_target_properties(${this_target} PROPERTIES MACOSX_BUNDLE_INFO_PLIST MacOSXBundleInfo.plist.in) set(MACOSX_BUNDLE_ICON_FILE "interface.icns") add_executable(${PROJECT_NAME} MACOSX_BUNDLE ${src_files} ${RES_SOURCES}) + set_target_properties(${PROJECT_NAME} PROPERTIES OUTPUT_NAME ${APP_NAME} + MACOSX_BUNDLE_BUNDLE_NAME ${APP_NAME}) set_target_properties(${PROJECT_NAME} PROPERTIES XCODE_ATTRIBUTE_ENABLE_BITCODE "NO") + + + add_custom_command(TARGET ${PROJECT_NAME} POST_BUILD + COMMAND ${CMAKE_COMMAND} -E make_directory "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/${APP_NAME}.app/Contents/Resources" + COMMAND ${CMAKE_COMMAND} -E chdir "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/${APP_NAME}.app/Contents/MacOS/" ln -sf ./HQ\ Launcher updater + # Older versions of Launcher put updater in `/Contents/Resources/updater`. + COMMAND ${CMAKE_COMMAND} -E chdir "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_CFG_INTDIR}/${APP_NAME}.app/Contents/Resources" ln -sf ../MacOS/HQ\ Launcher updater + ) endif() target_link_libraries(${PROJECT_NAME} diff --git a/launchers/qt/src/Helper_darwin.mm b/launchers/qt/src/Helper_darwin.mm index 28b35193ba..b4fb9f8a6e 100644 --- a/launchers/qt/src/Helper_darwin.mm +++ b/launchers/qt/src/Helper_darwin.mm @@ -33,7 +33,6 @@ void launchClient(const QString& clientPath, const QString& homePath, const QStr NSWorkspace *workspace = [NSWorkspace sharedWorkspace]; NSURL *url = [NSURL fileURLWithPath:[workspace fullPathForApplication:clientPath.toNSString()]]; - NSLog(@"------> path %@: ", [url path]); NSTask *task = [[NSTask alloc] init]; task.launchPath = [url path]; task.arguments = arguments; diff --git a/launchers/qt/src/LauncherState.cpp b/launchers/qt/src/LauncherState.cpp index 52f4c9f5ac..15c7ec8163 100644 --- a/launchers/qt/src/LauncherState.cpp +++ b/launchers/qt/src/LauncherState.cpp @@ -1,5 +1,6 @@ #include "LauncherState.h" +#include "CommandlineOptions.h" #include "PathUtils.h" #include "Unzipper.h" #include "Helper.h" @@ -171,8 +172,10 @@ void LauncherState::requestBuilds() { _latestBuilds = request->getLatestBuilds(); - if (shouldDownloadLauncher()) { + CommandlineOptions* options = CommandlineOptions::getInstance(); + if (shouldDownloadLauncher() && !options->contains("--noUpdate")) { downloadLauncher(); + return; } getCurrentClientVersion(); }); @@ -541,7 +544,7 @@ void LauncherState::installLauncher() { #elif defined(Q_OS_MACOS) launcherPath = installDirectory.absoluteFilePath("HQ Launcher.app"); #endif - //::launchAutoUpdater(launcherPath); + ::launchAutoUpdater(launcherPath); } });