2020-03-29 14:21:17 +03:00
|
|
|
#
|
|
|
|
# Copyright (C) 2018-2020 QuasarApp.
|
|
|
|
# Distributed under the MIT software license, see the accompanying
|
|
|
|
# Everyone is permitted to copy and distribute verbatim copies
|
|
|
|
# of this license document, but changing it is not allowed.
|
|
|
|
#
|
|
|
|
|
|
|
|
if(DEFINED QUASARAPP_DEFAULT_TARGETS)
|
|
|
|
return()
|
|
|
|
else()
|
|
|
|
set(QUASARAPP_DEFAULT_TARGETS 1)
|
|
|
|
endif()
|
|
|
|
|
|
|
|
|
2020-04-04 19:49:49 +03:00
|
|
|
function(initTestsArg testExec arg)
|
|
|
|
|
|
|
|
set(EXEC_TEST ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${testExec})
|
|
|
|
set(RUN_CMD BuildetTests/${testExec}.sh)
|
|
|
|
|
2020-03-29 14:21:17 +03:00
|
|
|
if (WIN32)
|
2020-04-04 19:49:49 +03:00
|
|
|
set(EXEC_TEST ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${testExec}.exe)
|
|
|
|
set(RUN_CMD BuildetTests/${testExec}.exe)
|
2020-03-29 14:21:17 +03:00
|
|
|
|
2020-04-04 19:49:49 +03:00
|
|
|
endif (WIN32)
|
2020-03-29 14:21:17 +03:00
|
|
|
|
2020-04-04 19:49:49 +03:00
|
|
|
find_program(Q_MAKE_EXE qmake)
|
2020-03-29 14:21:17 +03:00
|
|
|
|
|
|
|
ADD_CUSTOM_TARGET(
|
|
|
|
deployTest
|
2020-04-04 19:49:49 +03:00
|
|
|
COMMAND cqtdeployer clear -bin ${EXEC_TEST} -qmake ${Q_MAKE_EXE} -targetDir ${PROJECT_SOURCE_DIR}/BuildetTests -libDir ${PROJECT_SOURCE_DIR} -recursiveDepth 5
|
|
|
|
COMMENT "Deploy Test: cqtdeployer clear -bin ${EXEC_TEST} -targetDir BuildetTests -libDir ${PROJECT_SOURCE_DIR} -recursiveDepth 5"
|
2020-03-29 14:21:17 +03:00
|
|
|
)
|
|
|
|
|
|
|
|
ADD_CUSTOM_TARGET(
|
|
|
|
test
|
2020-04-04 19:49:49 +03:00
|
|
|
COMMAND ${RUN_CMD} ${arg}
|
2020-03-29 14:21:17 +03:00
|
|
|
COMMENT "=================== Run Test ==================="
|
2020-04-04 19:49:49 +03:00
|
|
|
WORKING_DIRECTORY BuildetTests
|
2020-03-29 14:21:17 +03:00
|
|
|
DEPENDS deployTest
|
|
|
|
)
|
|
|
|
|
2020-04-04 19:49:49 +03:00
|
|
|
message("prepare tests for ${RUN_CMD} with arg : ${arg}")
|
|
|
|
|
2020-03-29 14:21:17 +03:00
|
|
|
endfunction()
|
|
|
|
|
|
|
|
function(initTests testExec)
|
|
|
|
|
2020-04-04 19:49:49 +03:00
|
|
|
set(EXEC_TEST ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${testExec})
|
|
|
|
set(RUN_CMD ${PROJECT_SOURCE_DIR}/BuildetTests/${testExec}.sh)
|
|
|
|
|
|
|
|
if (WIN32)
|
|
|
|
set(EXEC_TEST ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/${testExec}.exe)
|
|
|
|
set(RUN_CMD ${PROJECT_SOURCE_DIR}/BuildetTests/${testExec}.exe)
|
|
|
|
|
|
|
|
endif (WIN32)
|
|
|
|
|
|
|
|
find_program(Q_MAKE_EXE qmake)
|
|
|
|
|
2020-03-29 14:21:17 +03:00
|
|
|
ADD_CUSTOM_TARGET(
|
|
|
|
deployTest
|
2020-04-04 19:49:49 +03:00
|
|
|
COMMAND cqtdeployer clear -bin ${EXEC_TEST} -qmake ${Q_MAKE_EXE} -targetDir ${PROJECT_SOURCE_DIR}/BuildetTests -libDir ${PROJECT_SOURCE_DIR} -recursiveDepth 5
|
|
|
|
COMMENT "Deploy Test: cqtdeployer clear -bin ${EXEC_TEST} -targetDir BuildetTests -libDir ${PROJECT_SOURCE_DIR} -recursiveDepth 5"
|
2020-03-29 14:21:17 +03:00
|
|
|
)
|
|
|
|
|
|
|
|
ADD_CUSTOM_TARGET(
|
|
|
|
test
|
2020-04-04 19:49:49 +03:00
|
|
|
COMMAND ${RUN_CMD}
|
2020-03-29 14:21:17 +03:00
|
|
|
COMMENT "=================== Run Test ==================="
|
2020-04-04 19:49:49 +03:00
|
|
|
WORKING_DIRECTORY BuildetTests
|
2020-03-29 14:21:17 +03:00
|
|
|
DEPENDS deployTest
|
|
|
|
)
|
|
|
|
|
2020-04-04 19:49:49 +03:00
|
|
|
message("prepare tests for ${RUN_CMD}")
|
|
|
|
|
2020-03-29 14:21:17 +03:00
|
|
|
endfunction()
|
|
|
|
|
2020-04-08 18:30:19 +03:00
|
|
|
function(initDeploy targets targetDir)
|
2020-04-04 19:49:49 +03:00
|
|
|
|
|
|
|
find_program(Q_MAKE_EXE qmake)
|
2020-03-29 14:21:17 +03:00
|
|
|
|
2020-04-08 18:30:19 +03:00
|
|
|
ADD_CUSTOM_TARGET(
|
|
|
|
cqtdeployer
|
|
|
|
COMMAND cqtdeployer clear -bin ${targets} -qmake ${Q_MAKE_EXE} -targetDir ${targetDir} -libDir ${PROJECT_SOURCE_DIR} -recursiveDepth 5
|
|
|
|
COMMENT "Deploy: cqtdeployer clear -bin ${targets} -qmake ${Q_MAKE_EXE} -targetDir ${targetDir} -libDir ${PROJECT_SOURCE_DIR} -recursiveDepth 5"
|
|
|
|
)
|
|
|
|
|
2020-03-29 14:21:17 +03:00
|
|
|
ADD_CUSTOM_TARGET(
|
2020-04-04 19:49:49 +03:00
|
|
|
deploy
|
2020-04-08 18:30:19 +03:00
|
|
|
COMMENT "=================== Run deploy ==================="
|
|
|
|
DEPENDS cqtdeployer snapClear snapcraft snapcraftCopy
|
2020-03-29 14:21:17 +03:00
|
|
|
)
|
|
|
|
|
|
|
|
endfunction()
|
|
|
|
|
2020-04-08 18:30:19 +03:00
|
|
|
function(initDeployQML targets targetDir qml)
|
2020-04-04 19:49:49 +03:00
|
|
|
|
|
|
|
find_program(Q_MAKE_EXE qmake)
|
|
|
|
|
2020-04-08 18:30:19 +03:00
|
|
|
ADD_CUSTOM_TARGET(
|
|
|
|
cqtdeployer
|
|
|
|
COMMAND cqtdeployer clear -bin ${targets} -qmake ${Q_MAKE_EXE} -targetDir ${targetDir} -libDir ${PROJECT_SOURCE_DIR} -recursiveDepth 5 -qmlDir ${qml}
|
|
|
|
COMMENT "Deploy: cqtdeployer clear -bin ${targets} -qmake ${Q_MAKE_EXE} -targetDir ${targetDir} -libDir ${PROJECT_SOURCE_DIR} -recursiveDepth 5 -qmlDir ${qml}"
|
|
|
|
)
|
|
|
|
|
2020-04-04 19:49:49 +03:00
|
|
|
ADD_CUSTOM_TARGET(
|
|
|
|
deploy
|
2020-04-08 18:30:19 +03:00
|
|
|
COMMENT "=================== Run deploy ==================="
|
|
|
|
DEPENDS cqtdeployer snapClear snapcraft snapcraftCopy
|
2020-04-04 19:49:49 +03:00
|
|
|
)
|
|
|
|
|
|
|
|
endfunction()
|
|
|
|
|
2020-04-08 18:30:19 +03:00
|
|
|
function(initDeploySnap sourceDir)
|
2020-03-29 14:21:17 +03:00
|
|
|
|
2020-04-04 19:49:49 +03:00
|
|
|
ADD_CUSTOM_TARGET(
|
2020-04-08 18:30:19 +03:00
|
|
|
snapClear
|
|
|
|
COMMAND snapcraft clear
|
|
|
|
COMMENT "clear snap: snapcraft clear"
|
|
|
|
)
|
|
|
|
|
|
|
|
ADD_CUSTOM_TARGET(
|
|
|
|
snapcraft
|
|
|
|
COMMAND snapcraft
|
|
|
|
COMMENT "create snap: snapcraft"
|
|
|
|
)
|
|
|
|
|
|
|
|
ADD_CUSTOM_TARGET(
|
|
|
|
snapcraftCopy
|
|
|
|
COMMAND ${CMAKE_COMMAND} -E copy *.snap ${sourceDir}
|
|
|
|
COMMENT "copt snap: ${CMAKE_COMMAND} -E copy *.snap ${sourceDir}"
|
|
|
|
)
|
|
|
|
|
|
|
|
endfunction()
|
|
|
|
|
|
|
|
function(initDeployQIF sourceDir targetDir config)
|
|
|
|
|
|
|
|
find_program(BINARYCREATOR_EXE binarycreator)
|
|
|
|
|
|
|
|
set(OUT_EXE ${sourceDir}/${PROJECT_NAME}OfllineInstaller.run)
|
|
|
|
if (WIN32)
|
|
|
|
set(OUT_EXE ${sourceDir}/${PROJECT_NAME}OfllineInstaller.exe)
|
|
|
|
endif (WIN32)
|
|
|
|
|
|
|
|
ADD_CUSTOM_TARGET(
|
|
|
|
qifDeploy
|
|
|
|
COMMAND ${BINARYCREATOR_EXE} --offline-only -c ${config} -p ${sourceDir}/packages ${OUT_EXE}
|
|
|
|
COMMENT "deploy qif: ${BINARYCREATOR_EXE} --offline-only -c ${config} -p ${sourceDir}/packages ${OUT_EXE}"
|
2020-04-04 19:49:49 +03:00
|
|
|
)
|
2020-03-29 14:21:17 +03:00
|
|
|
|
|
|
|
endfunction()
|
|
|
|
|
2020-04-08 18:30:19 +03:00
|
|
|
function(initReleaseSnap)
|
2020-03-29 14:21:17 +03:00
|
|
|
|
|
|
|
ADD_CUSTOM_TARGET(
|
2020-04-08 18:30:19 +03:00
|
|
|
snapRelease
|
|
|
|
COMMAND snapcraft push
|
|
|
|
COMMENT "snapcraft release"
|
|
|
|
)
|
|
|
|
|
|
|
|
endfunction()
|
|
|
|
|
|
|
|
function(initReleaseQif sourceDir)
|
|
|
|
|
|
|
|
ADD_CUSTOM_TARGET(
|
|
|
|
qifRelease
|
|
|
|
COMMAND ${CMAKE_COMMAND} -E copy_directory
|
|
|
|
${sourceDir}
|
|
|
|
${CMAKE_BINARY_DIR}/Repo
|
|
|
|
COMMENT "qifRelease release ${CMAKE_COMMAND} -E copy_directory ${sourceDir} ${CMAKE_BINARY_DIR}/Repo"
|
|
|
|
)
|
|
|
|
endfunction()
|
|
|
|
|
|
|
|
function(initTestsDefault)
|
|
|
|
message("init empty tests")
|
|
|
|
|
|
|
|
ADD_CUSTOM_TARGET(
|
|
|
|
test
|
|
|
|
COMMENT "=================== Run Test ==================="
|
2020-03-29 14:21:17 +03:00
|
|
|
)
|
|
|
|
|
|
|
|
endfunction()
|
|
|
|
|
2020-04-04 19:49:49 +03:00
|
|
|
function(initDeployDefault)
|
2020-03-29 14:21:17 +03:00
|
|
|
|
|
|
|
ADD_CUSTOM_TARGET(
|
|
|
|
deploy
|
|
|
|
COMMENT "=================== Run deploy ==================="
|
|
|
|
)
|
|
|
|
|
|
|
|
endfunction()
|
|
|
|
|
2020-04-08 18:30:19 +03:00
|
|
|
function(initReleaseDefault)
|
2020-03-29 14:21:17 +03:00
|
|
|
|
|
|
|
ADD_CUSTOM_TARGET(
|
|
|
|
release
|
|
|
|
COMMENT "=================== Run release ==================="
|
|
|
|
)
|
|
|
|
|
|
|
|
endfunction()
|
|
|
|
|
|
|
|
function(initAll)
|
2020-04-04 19:49:49 +03:00
|
|
|
initTestsDefault()
|
|
|
|
initDeployDefault()
|
2020-04-08 18:30:19 +03:00
|
|
|
initReleaseDefault()
|
2020-03-29 14:21:17 +03:00
|
|
|
|
|
|
|
endfunction()
|
|
|
|
|