/ CMakeModules / BuildInstaller.cmake
BuildInstaller.cmake
1 # To use this as a script, make sure you pass in the variables BASE_DIR, SRC_DIR, BUILD_DIR, and TARGET_FILE 2 cmake_minimum_required(VERSION 3.15) 3 4 if(WIN32) 5 set(PLATFORM "windows") 6 elseif(APPLE) 7 set(PLATFORM "mac") 8 elseif(UNIX) 9 set(PLATFORM "linux") 10 else() 11 message(FATAL_ERROR "Cannot build installer for this unsupported platform") 12 endif() 13 14 list(APPEND CMAKE_MODULE_PATH "${BASE_DIR}/CMakeModules") 15 include(DownloadExternals) 16 download_qt(tools_ifw) 17 get_external_prefix(qt QT_PREFIX) 18 19 file(GLOB_RECURSE INSTALLER_BASE "${QT_PREFIX}/**/installerbase*") 20 file(GLOB_RECURSE BINARY_CREATOR "${QT_PREFIX}/**/binarycreator*") 21 22 set(CONFIG_FILE "${SRC_DIR}/config/config_${PLATFORM}.xml") 23 set(PACKAGES_DIR "${BUILD_DIR}/packages") 24 file(MAKE_DIRECTORY ${PACKAGES_DIR}) 25 26 execute_process(COMMAND ${BINARY_CREATOR} -t ${INSTALLER_BASE} -n -c ${CONFIG_FILE} -p ${PACKAGES_DIR} ${TARGET_FILE})