mirror of
https://github.com/reactos/CMake.git
synced 2024-12-03 17:11:04 +00:00
Autogen: Test: Add generated qrc file to rccDepends test
This commit is contained in:
parent
81656b9210
commit
7f9baf5790
@ -101,7 +101,7 @@ list(GET target1List 0 binFile)
|
||||
set(timeformat "%Y%j%H%M%S")
|
||||
file(TIMESTAMP "${binFile}" timeBegin "${timeformat}")
|
||||
|
||||
# Touch qrc input file and rebuild
|
||||
# Touch first qrc input file and rebuild
|
||||
execute_process(COMMAND "${CMAKE_COMMAND}" -E sleep 1) # Ensure that the timestamp will change.
|
||||
execute_process(COMMAND "${CMAKE_COMMAND}" -E touch "${CMAKE_CURRENT_BINARY_DIR}/rccDepends/res1/input.txt")
|
||||
execute_process(COMMAND "${CMAKE_COMMAND}" --build .
|
||||
@ -111,11 +111,26 @@ execute_process(COMMAND "${CMAKE_COMMAND}" --build .
|
||||
if (rccDepends_result)
|
||||
message(SEND_ERROR "Second build of rccDepends failed.")
|
||||
endif()
|
||||
|
||||
# Compare timestamps
|
||||
file(TIMESTAMP "${binFile}" timeStep1 "${timeformat}")
|
||||
if (NOT timeStep1 GREATER timeBegin)
|
||||
message(SEND_ERROR "file1 (${binFile}) should have changed in the first step!")
|
||||
message(SEND_ERROR "File (${binFile}) should have changed in the first step!")
|
||||
endif()
|
||||
|
||||
# Touch second qrc input file and rebuild
|
||||
execute_process(COMMAND "${CMAKE_COMMAND}" -E sleep 1) # Ensure that the timestamp will change.
|
||||
execute_process(COMMAND "${CMAKE_COMMAND}" -E touch "${CMAKE_CURRENT_BINARY_DIR}/rccDepends/res2/input.txt")
|
||||
execute_process(COMMAND "${CMAKE_COMMAND}" --build .
|
||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/rccDepends"
|
||||
RESULT_VARIABLE rccDepends_result
|
||||
)
|
||||
if (rccDepends_result)
|
||||
message(SEND_ERROR "Third build of rccDepends failed.")
|
||||
endif()
|
||||
# Compare timestamps
|
||||
file(TIMESTAMP "${binFile}" timeStep2 "${timeformat}")
|
||||
if (NOT timeStep2 GREATER timeStep1)
|
||||
message(SEND_ERROR "File (${binFile}) should have changed in the second step!")
|
||||
endif()
|
||||
|
||||
# -- Test
|
||||
|
@ -15,13 +15,22 @@ else()
|
||||
set(QT_CORE_TARGET Qt5::Core)
|
||||
endif()
|
||||
|
||||
configure_file(res/input1.txt.in res1/input.txt @ONLY)
|
||||
configure_file(res/input2.txt.in res2/input.txt @ONLY)
|
||||
# Configure time generated qrc file
|
||||
configure_file(res1.qrc.in res1.qrc @ONLY)
|
||||
configure_file(res1/input.txt.in res1/input.txt @ONLY)
|
||||
# Dependency generated qrc file
|
||||
add_custom_command(OUTPUT res2.qrc
|
||||
COMMAND ${CMAKE_COMMAND} -E sleep 3
|
||||
COMMAND ${CMAKE_COMMAND} -E copy ${CMAKE_CURRENT_SOURCE_DIR}/res2.qrc.in ${CMAKE_CURRENT_BINARY_DIR}/res2.qrc
|
||||
)
|
||||
|
||||
add_executable(test_res1
|
||||
test_res1.cpp
|
||||
|
||||
add_executable(rccDepends
|
||||
main.cpp
|
||||
${CMAKE_CURRENT_BINARY_DIR}/res1.qrc
|
||||
${CMAKE_CURRENT_BINARY_DIR}/res2.qrc
|
||||
)
|
||||
target_link_libraries(test_res1 ${QT_CORE_TARGET})
|
||||
add_custom_command(TARGET test_res1 POST_BUILD COMMAND
|
||||
${CMAKE_COMMAND} -E echo "$<TARGET_FILE:test_res1>" > target1.txt)
|
||||
target_link_libraries(rccDepends ${QT_CORE_TARGET})
|
||||
add_custom_command(TARGET rccDepends POST_BUILD COMMAND
|
||||
${CMAKE_COMMAND} -E echo "$<TARGET_FILE:rccDepends>" > target1.txt)
|
||||
|
1
Tests/QtAutogen/rccDepends/res/input2.txt.in
Normal file
1
Tests/QtAutogen/rccDepends/res/input2.txt.in
Normal file
@ -0,0 +1 @@
|
||||
Res2 input.
|
5
Tests/QtAutogen/rccDepends/res2.qrc.in
Normal file
5
Tests/QtAutogen/rccDepends/res2.qrc.in
Normal file
@ -0,0 +1,5 @@
|
||||
<RCC>
|
||||
<qresource prefix="/">
|
||||
<file>res2/input.txt</file>
|
||||
</qresource>
|
||||
</RCC>
|
Loading…
Reference in New Issue
Block a user