diff --git a/CMakeLists.txt b/CMakeLists.txt index 8ca1ea90..92e7f5e8 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -288,8 +288,7 @@ if(GENERATE_DOC) # Copy the aliases to the build directory file(COPY ${SOURCE_DIR}/docs/aliases DESTINATION ${BUILD_DIR}/docs) - add_custom_target(ldoc ALL - DEPENDS ${BUILD_DIR}/doc/index.html) + add_custom_target(ldoc ALL DEPENDS ${BUILD_DIR}/doc/index.html) if (STRICT_TESTS) set(ldoc_args --fatalwarnings .) set(ldoc_desc_suffix " (fatal warnings)") @@ -300,7 +299,7 @@ if(GENERATE_DOC) OUTPUT ${BUILD_DIR}/doc/index.html COMMAND ${LDOC_EXECUTABLE} ${ldoc_args} WORKING_DIRECTORY ${AWE_DOC_DIR} - DEPENDS ${AWE_SRCS} ${AWE_LUA_FILES} ${AWE_MD_FILES} ${BUILD_DIR}/docs/config.ld + DEPENDS ${AWE_SRCS} ${AWE_LUA_FILES} ${AWE_MD_FILES} ${BUILD_DIR}/docs/config.ld generate-examples COMMENT "Generating API documentation${ldoc_desc_suffix}") endif() # }}} diff --git a/tests/examples/CMakeLists.txt b/tests/examples/CMakeLists.txt index e345def5..124e5b1b 100644 --- a/tests/examples/CMakeLists.txt +++ b/tests/examples/CMakeLists.txt @@ -282,43 +282,34 @@ endfunction() file(GLOB_RECURSE test_files LIST_DIRECTORIES false "${TOP_SOURCE_DIR}/tests/examples/*.lua") -# TODO: check for changed files (timestamp)?! -if(NOT "${test_files}" STREQUAL "${EXAMPLE_DOC_SOURCE_FILES}") - set(EXAMPLE_DOC_SOURCE_FILES "${test_files}" CACHE INTERNAL "Source files used to generate doc files.") +# Find and run all test files. +foreach(file ${test_files}) + if ((NOT "${file}" MATCHES ".*/shims/.*") + AND (NOT "${file}" MATCHES ".*/template.lua")) - # Find and run all test files. - foreach(file ${test_files}) - if ((NOT "${file}" MATCHES ".*/shims/.*") - AND (NOT "${file}" MATCHES ".*/template.lua")) + # Get the file name without the extension. + get_filename_component(TEST_FILE_NAME ${file} NAME_WE) - # Get the file name without the extension. - get_filename_component(TEST_FILE_NAME ${file} NAME_WE) + get_namespace(namespace "${file}") - get_namespace(namespace "${file}") + run_test("${file}" "${namespace}" ESCAPED_CODE_EXAMPLE) - run_test("${file}" "${namespace}" ESCAPED_CODE_EXAMPLE) + # Set the test name. + set(TEST_NAME DOC${namespace}_${TEST_FILE_NAME}_EXAMPLE) - # Set the test name. - set(TEST_NAME DOC${namespace}_${TEST_FILE_NAME}_EXAMPLE) + # Anything called @DOC_`namespace`_EXAMPLE@ + # in the Lua or C sources will be replaced by the content of that + # variable during the pre-processing. + # While at it, replace \" created by CMake by ', + # " wont work in . + string(REPLACE "\"" "'" ${TEST_NAME} ${ESCAPED_CODE_EXAMPLE}) + endif() +endforeach() - # Anything called @DOC_`namespace`_EXAMPLE@ - # in the Lua or C sources will be replaced by the content of that - # variable during the pre-processing. - # While at it, replace \" created by CMake by ', - # " wont work in . - string(REPLACE "\"" "'" ${TEST_NAME} ${ESCAPED_CODE_EXAMPLE}) - endif() - endforeach() - - set(EXAMPLE_DOC_GENERATED_FILES ${EXAMPLE_DOC_GENERATED_FILES} - CACHE INTERNAL "List of generated files for example docs.") -endif() - -add_custom_target(generate-examples ALL - DEPENDS ${EXAMPLE_DOC_GENERATED_FILES}) +add_custom_target(generate-examples DEPENDS ${EXAMPLE_DOC_GENERATED_FILES}) add_custom_target(check-examples - ${CMAKE_COMMAND} -D EXAMPLE_DOC_SOURCE_FILES= ${CMAKE_SOURCE_DIR} + ${CMAKE_COMMAND} ${CMAKE_SOURCE_DIR} WORKING_DIRECTORY ${CMAKE_BINARY_DIR}) list(APPEND CHECK_TARGETS check-examples)