I would like to create a CMake test that does the following:
- Download a file from an external resource
- Do something with the file
- compile an executable
myTest
- execute
myTest outputfile
Using ExternalData
for downloading the file works well, but the second step (file conversion, in this example cp
for simplicity) does not work:
cmake_minimum_required(VERSION 3.2)
project(mytest)
INCLUDE(ExternalData)
set(
ExternalData_URL_TEMPLATES
"http://ift.tt/1LsZC0Y"
)
ExternalData_Expand_Arguments(
testFetchData
OUT_DATA DATA{${CMAKE_SOURCE_DIR}/test.e}
)
ExternalData_Add_Target(testFetchData)
add_custom_command(
OUTPUT test.g
COMMAND cp test.e test.g
DEPENDS test.e
)
ADD_EXECUTABLE("myTest" main.cpp)
add_test(myTest test.g)
I suppose I'm missing something about the dependencies here; after all, the add_custom_command
has to wait for testFetchData
to complete. Likewise, add_test
has to wait for add_custom_command
to complete.
Hints appreciated.
Aucun commentaire:
Enregistrer un commentaire