Enforce build order with qa system
The QA objects link to the direct kiface objects, which creates a second dependency on the generated lexer files. To ensure that the primary apps are finished building them in a (potentially) different thread, we set a false dependency on the final build product in the qa CMake. Fixes: lp:1833851 * https://bugs.launchpad.net/kicad/+bug/1833851
This commit is contained in:
parent
710a82bc51
commit
172542cfc4
|
@ -52,6 +52,11 @@ add_executable( qa_eeschema
|
|||
$<TARGET_OBJECTS:eeschema_kiface_objects>
|
||||
)
|
||||
|
||||
# Anytime we link to the kiface_objects, we have to add a dependency on the last object
|
||||
# to ensure that the generated lexer files are finished being used before the qa runs in a
|
||||
# multi-threaded build
|
||||
add_dependencies( qa_eeschema eeschema )
|
||||
|
||||
target_link_libraries( qa_eeschema
|
||||
common
|
||||
qa_utils
|
||||
|
|
|
@ -54,6 +54,11 @@ add_executable( qa_pcbnew
|
|||
$<TARGET_OBJECTS:pcbnew_kiface_objects>
|
||||
)
|
||||
|
||||
# Anytime we link to the kiface_objects, we have to add a dependency on the last object
|
||||
# to ensure that the generated lexer files are finished being used before the qa runs in a
|
||||
# multi-threaded build
|
||||
add_dependencies( qa_pcbnew pcbnew )
|
||||
|
||||
target_link_libraries( qa_pcbnew
|
||||
qa_pcbnew_utils
|
||||
3d-viewer
|
||||
|
|
|
@ -42,6 +42,11 @@ add_executable( qa_pcbnew_tools
|
|||
$<TARGET_OBJECTS:pcbnew_kiface_objects>
|
||||
)
|
||||
|
||||
# Anytime we link to the kiface_objects, we have to add a dependency on the last object
|
||||
# to ensure that the generated lexer files are finished being used before the qa runs in a
|
||||
# multi-threaded build
|
||||
add_dependencies( qa_pcbnew_tools pcbnew )
|
||||
|
||||
target_link_libraries( qa_pcbnew_tools
|
||||
qa_pcbnew_utils
|
||||
3d-viewer
|
||||
|
|
Loading…
Reference in New Issue