2023-04-29 01:32:53 +05:30
|
|
|
# To use this as a script, make sure you pass in the variables BASE_DIR, SRC_DIR, BUILD_DIR, and TARGET_FILE
|
2023-09-02 03:48:47 +05:30
|
|
|
cmake_minimum_required(VERSION 3.15)
|
2017-09-28 21:57:42 +05:30
|
|
|
|
|
|
|
if(WIN32)
|
|
|
|
set(PLATFORM "windows")
|
|
|
|
elseif(APPLE)
|
|
|
|
set(PLATFORM "mac")
|
2017-09-29 07:08:27 +05:30
|
|
|
elseif(UNIX)
|
2017-09-28 21:57:42 +05:30
|
|
|
set(PLATFORM "linux")
|
|
|
|
else()
|
|
|
|
message(FATAL_ERROR "Cannot build installer for this unsupported platform")
|
|
|
|
endif()
|
|
|
|
|
2023-04-29 01:32:53 +05:30
|
|
|
list(APPEND CMAKE_MODULE_PATH "${BASE_DIR}/CMakeModules")
|
|
|
|
include(DownloadExternals)
|
2023-09-02 03:48:47 +05:30
|
|
|
download_qt(tools_ifw)
|
|
|
|
get_external_prefix(qt QT_PREFIX)
|
2017-09-28 21:57:42 +05:30
|
|
|
|
2023-04-29 01:32:53 +05:30
|
|
|
file(GLOB_RECURSE INSTALLER_BASE "${QT_PREFIX}/**/installerbase*")
|
|
|
|
file(GLOB_RECURSE BINARY_CREATOR "${QT_PREFIX}/**/binarycreator*")
|
2017-09-28 21:57:42 +05:30
|
|
|
|
|
|
|
set(CONFIG_FILE "${SRC_DIR}/config/config_${PLATFORM}.xml")
|
|
|
|
set(PACKAGES_DIR "${BUILD_DIR}/packages")
|
|
|
|
file(MAKE_DIRECTORY ${PACKAGES_DIR})
|
|
|
|
|
|
|
|
execute_process(COMMAND ${BINARY_CREATOR} -t ${INSTALLER_BASE} -n -c ${CONFIG_FILE} -p ${PACKAGES_DIR} ${TARGET_FILE})
|