summaryrefslogtreecommitdiffstats
path: root/src/cmake/cmake.d/04-extra_targets.cmake
diff options
context:
space:
mode:
Diffstat (limited to 'src/cmake/cmake.d/04-extra_targets.cmake')
-rw-r--r--src/cmake/cmake.d/04-extra_targets.cmake65
1 files changed, 65 insertions, 0 deletions
diff --git a/src/cmake/cmake.d/04-extra_targets.cmake b/src/cmake/cmake.d/04-extra_targets.cmake
index 1cde843..40cd610 100644
--- a/src/cmake/cmake.d/04-extra_targets.cmake
+++ b/src/cmake/cmake.d/04-extra_targets.cmake
@@ -67,3 +67,68 @@ add_custom_command(OUTPUT ${PROJECT_AGL_AUTOBUILD_DIR}/autobuild ${PROJECT_LINUX
add_custom_target(autobuild ALL DEPENDS ${PROJECT_AGL_AUTOBUILD_DIR}/autobuild
${PROJECT_LINUX_AUTOBUILD_DIR}/autobuild)
+
+# ----------------------------------------------------------------------------
+# Test target
+# ----------------------------------------------------------------------------
+
+add_custom_command(OUTPUT ${PROJECT_TEST_DIR}
+ DEPENDS ${TEMPLATE_DIR}/test/CMakeLists.txt.in
+ ${TEMPLATE_DIR}/test/afb-test/CMakeLists.txt.in
+ ${TEMPLATE_DIR}/test/afb-test/etc/CMakeLists.txt.in
+ ${TEMPLATE_DIR}/test/afb-test/etc/aft-agl-helloworld.json.in
+ ${TEMPLATE_DIR}/test/afb-test/fixtures/CMakeLists.txt.in
+ ${TEMPLATE_DIR}/test/afb-test/fixtures/mapi_helloworld.lua.in
+ ${TEMPLATE_DIR}/test/afb-test/tests/CMakeLists.txt.in
+ ${TEMPLATE_DIR}/test/afb-test/tests/helloworld.lua.in
+ ${TEMPLATE_DIR}/test/afb-test/tests/mapi_tests.lua.in
+
+
+ COMMAND [ ! -f "${PROJECT_TEST_DIR}/CMakeLists.txt" ] &&
+ ${CMAKE_COMMAND} -DINFILE=${TEMPLATE_DIR}/test/CMakeLists.txt.in
+ -DOUTFILE=${PROJECT_TEST_DIR}/CMakeLists.txt
+ -DPROJECT_BINARY_DIR=${CMAKE_CURRENT_BINARY_DIR}
+ -P ${PROJECT_APP_TEMPLATES_DIR}/cmake/configure_file.cmake
+ COMMAND [ ! -f "${PROJECT_TEST_DIR}/afb-test/CMakeLists.txt" ] &&
+ ${CMAKE_COMMAND} -DINFILE=${TEMPLATE_DIR}/test/afb-test/CMakeLists.txt.in
+ -DOUTFILE=${PROJECT_TEST_DIR}/afb-test/CMakeLists.txt
+ -DPROJECT_BINARY_DIR=${CMAKE_CURRENT_BINARY_DIR}
+ -P ${PROJECT_APP_TEMPLATES_DIR}/cmake/configure_file.cmake
+ COMMAND [ ! -f "${PROJECT_TEST_DIR}/afb-test/etc/CMakeLists.txt" ] &&
+ ${CMAKE_COMMAND} -DINFILE=${TEMPLATE_DIR}/test/afb-test/etc/CMakeLists.txt.in
+ -DOUTFILE=${PROJECT_TEST_DIR}/afb-test/etc/CMakeLists.txt
+ -DPROJECT_BINARY_DIR=${CMAKE_CURRENT_BINARY_DIR}
+ -P ${PROJECT_APP_TEMPLATES_DIR}/cmake/configure_file.cmake
+ COMMAND [ ! -f "${PROJECT_TEST_DIR}/afb-test/etc/aft-agl-${PROJECT_NAME}.json" ] &&
+ ${CMAKE_COMMAND} -DINFILE=${TEMPLATE_DIR}/test/afb-test/etc/aft-agl-helloworld.json.in
+ -DOUTFILE=${PROJECT_TEST_DIR}/afb-test/etc/aft-agl-${PROJECT_NAME}.json
+ -DPROJECT_BINARY_DIR=${CMAKE_CURRENT_BINARY_DIR}
+ -P ${PROJECT_APP_TEMPLATES_DIR}/cmake/configure_file.cmake
+ COMMAND [ ! -f "${PROJECT_TEST_DIR}/afb-test/fixtures/CMakeLists.txt" ] &&
+ ${CMAKE_COMMAND} -DINFILE=${TEMPLATE_DIR}/test/afb-test/fixtures/CMakeLists.txt.in
+ -DOUTFILE=${PROJECT_TEST_DIR}/afb-test/fixtures/CMakeLists.txt
+ -DPROJECT_BINARY_DIR=${CMAKE_CURRENT_BINARY_DIR}
+ -P ${PROJECT_APP_TEMPLATES_DIR}/cmake/configure_file.cmake
+ COMMAND [ ! -f "${PROJECT_TEST_DIR}/afb-test/fixtures/mapi_${PROJECT_NAME}.lua" ] &&
+ ${CMAKE_COMMAND} -DINFILE=${TEMPLATE_DIR}/test/afb-test/fixtures/mapi_helloworld.lua.in
+ -DOUTFILE=${PROJECT_TEST_DIR}/afb-test/fixtures/mapi_${PROJECT_NAME}.lua
+ -DPROJECT_BINARY_DIR=${CMAKE_CURRENT_BINARY_DIR}
+ -P ${PROJECT_APP_TEMPLATES_DIR}/cmake/configure_file.cmake
+ COMMAND [ ! -f "${PROJECT_TEST_DIR}/afb-test/tests/CMakeLists.txt" ] &&
+ ${CMAKE_COMMAND} -DINFILE=${TEMPLATE_DIR}/test/afb-test/tests/CMakeLists.txt.in
+ -DOUTFILE=${PROJECT_TEST_DIR}/afb-test/tests/CMakeLists.txt
+ -DPROJECT_BINARY_DIR=${CMAKE_CURRENT_BINARY_DIR}
+ -P ${PROJECT_APP_TEMPLATES_DIR}/cmake/configure_file.cmake
+ COMMAND [ ! -f "${PROJECT_TEST_DIR}/afb-test/tests/${PROJECT_NAME}.lua" ] &&
+ ${CMAKE_COMMAND} -DINFILE=${TEMPLATE_DIR}/test/afb-test/tests/helloworld.lua.in
+ -DOUTFILE=${PROJECT_TEST_DIR}/afb-test/tests/${PROJECT_NAME}.lua
+ -DPROJECT_BINARY_DIR=${CMAKE_CURRENT_BINARY_DIR}
+ -P ${PROJECT_APP_TEMPLATES_DIR}/cmake/configure_file.cmake
+ COMMAND [ ! -f "${PROJECT_TEST_DIR}/afb-test/tests/mapi_tests.lua" ] &&
+ ${CMAKE_COMMAND} -DINFILE=${TEMPLATE_DIR}/test/afb-test/tests/mapi_tests.lua.in
+ -DOUTFILE=${PROJECT_TEST_DIR}/afb-test/tests/mapi_tests.lua
+ -DPROJECT_BINARY_DIR=${CMAKE_CURRENT_BINARY_DIR}
+ -P ${PROJECT_APP_TEMPLATES_DIR}/cmake/configure_file.cmake
+)
+
+add_custom_target(test-tree ALL DEPENDS ${PROJECT_TEST_DIR}) \ No newline at end of file