From 90cf69b9b58eb2ea7c25052f64ccfebb7f8e3474 Mon Sep 17 00:00:00 2001 From: Stephen Birarda Date: Mon, 4 Jan 2016 10:47:25 -0800 Subject: [PATCH] add console handling to installer component consolidation --- .../ConsolidateInstallerComponents.cmake | 21 +++++++++++-------- cmake/macros/GenerateInstallers.cmake | 8 +++---- console/CMakeLists.txt | 9 +++++--- console/package.json | 6 +++--- 4 files changed, 25 insertions(+), 19 deletions(-) diff --git a/cmake/macros/ConsolidateInstallerComponents.cmake b/cmake/macros/ConsolidateInstallerComponents.cmake index 395227b061..6afa1de737 100644 --- a/cmake/macros/ConsolidateInstallerComponents.cmake +++ b/cmake/macros/ConsolidateInstallerComponents.cmake @@ -1,21 +1,24 @@ macro(CONSOLIDATE_INSTALLER_COMPONENTS) - if (DEFINED DEPLOY_PACKAGE AND DEPLOY_PACKAGE AND WIN32) + if (DEPLOY_PACKAGE AND WIN32) # Copy icon files for interface and stack manager - if (TARGET_NAME STREQUAL "interface" OR TARGET_NAME STREQUAL "package-console") - if (TARGET_NAME STREQUAL "interface") - set (ICON_FILE_PATH "${PROJECT_SOURCE_DIR}/icon/${INTERFACE_ICON}") - set (ICON_DESTINATION_NAME "interface.ico") - else () - set (ICON_FILE_PATH "${PROJECT_SOURCE_DIR}/assets/${STACK_MANAGER_ICON}") - set (ICON_DESTINATION_NAME "stack-manager.ico") - endif () + if (TARGET_NAME STREQUAL "interface") + set (ICON_FILE_PATH "${PROJECT_SOURCE_DIR}/icon/${INTERFACE_ICON}") + set (ICON_DESTINATION_NAME "interface.ico") + add_custom_command( TARGET ${TARGET_NAME} POST_BUILD COMMAND "${CMAKE_COMMAND}" -E copy ${ICON_FILE_PATH} ${CMAKE_BINARY_DIR}/package-bundle/${ICON_DESTINATION_NAME} COMMAND "${CMAKE_COMMAND}" -E copy_directory $ ${CMAKE_BINARY_DIR}/package-bundle ) + elseif (TARGET_NAME STREQUAL "package-console") + # add a command to copy the folder produced by electron-packager to package-bundle + add_custom_command( + TARGET ${TARGET_NAME} POST_BUILD + COMMAND "${CMAKE_COMMAND}" -E copy_directory ${CMAKE_CURRENT_BINARY_DIR}/High\ Fidelity-* ${CMAKE_BINARY_DIR}/package-bundle + ) else () + # add a command to copy the fixed up binary and libraries to package-bundle add_custom_command( TARGET ${TARGET_NAME} POST_BUILD COMMAND "${CMAKE_COMMAND}" -E copy_directory $ ${CMAKE_BINARY_DIR}/package-bundle diff --git a/cmake/macros/GenerateInstallers.cmake b/cmake/macros/GenerateInstallers.cmake index 9cb53c5367..34b7e725a0 100644 --- a/cmake/macros/GenerateInstallers.cmake +++ b/cmake/macros/GenerateInstallers.cmake @@ -1,4 +1,4 @@ -# +# # GenerateInstallers.cmake # cmake/macros # @@ -7,10 +7,10 @@ # # Distributed under the Apache License, Version 2.0. # See the accompanying file LICENSE or http://www.apache.org/licenses/LICENSE-2.0.html -# +# macro(GENERATE_INSTALLERS) - if (DEFINED DEPLOY_PACKAGE AND DEPLOY_PACKAGE AND WIN32) + if (DEPLOY_PACKAGE AND WIN32) file(MAKE_DIRECTORY "${CMAKE_BINARY_DIR}/package-bundle") find_program(MAKENSIS_COMMAND makensis PATHS [HKEY_LOCAL_MACHINE\\SOFTWARE\\Wow6432Node\\NSIS]) if (NOT MAKENSIS_COMMAND) @@ -27,4 +27,4 @@ macro(GENERATE_INSTALLERS) COMMAND CMD /C "\"${MAKENSIS_COMMAND}\" ${CMAKE_SOURCE_DIR}/tools/nsis/release.nsi" ) endif () -endmacro() \ No newline at end of file +endmacro() diff --git a/console/CMakeLists.txt b/console/CMakeLists.txt index 2641c685e6..8173047874 100644 --- a/console/CMakeLists.txt +++ b/console/CMakeLists.txt @@ -1,4 +1,4 @@ -set(PACKAGING_TARGET_NAME package-console) +set(TARGET_NAME package-console) # add a target that when built will produce an executable of console for this platform if (APPLE) @@ -9,7 +9,10 @@ elseif (UNIX) set(PACKAGE_COMMAND package-linux) endif () -add_custom_target(${PACKAGING_TARGET_NAME} - COMMAND npm run-script ${PACKAGE_COMMAND} +# add a target that will package the console +add_custom_target(${TARGET_NAME} + COMMAND npm run-script ${PACKAGE_COMMAND} -- --out ${CMAKE_CURRENT_BINARY_DIR} WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} ) + +consolidate_installer_components() diff --git a/console/package.json b/console/package.json index eee91de831..2d796e01e9 100644 --- a/console/package.json +++ b/console/package.json @@ -20,9 +20,9 @@ "scripts": { "start": "electron . --local-debug-builds --debug", "local-release": "electron . --local-release-builds --debug", - "package-darwin": "electron-packager . High\\ Fidelity --overwrite --platform=darwin --arch=x64 --version=0.35.4 --icon=resources/console.icns", - "package-win": "electron-packager . High\\ Fidelity --overwrite --platform=win32 --arch=x64 --version=0.35.4 --icon=resources/console.ico", - "package-linux": "electron-packager . High\\ Fidelity --overwrite --platform=linux --arch=x64 --version=0.35.4" + "package-darwin": "electron-packager . High\\ Fidelity --overwrite --prune --platform=darwin --arch=x64 --version=0.35.4 --icon=resources/console.icns", + "package-win": "electron-packager . High\\ Fidelity --overwrite --prune --platform=win32 --arch=x64 --version=0.35.4 --icon=resources/console.ico", + "package-linux": "electron-packager . High\\ Fidelity --overwrite --prune --platform=linux --arch=x64 --version=0.35.4" }, "dependencies": { "extend": "^3.0.0",