From ce649ca9fd4e49d6d4a67941126142536e40a402 Mon Sep 17 00:00:00 2001 From: Kornel Benko Date: Fri, 5 Oct 2012 16:56:29 +0200 Subject: [PATCH] Added check for support tests in cmake build. New target: checkregfiles This will create the regfiles and compare with the data in source. --- src/support/CMakeLists.txt | 2 ++ src/support/tests/CMakeLists.txt | 48 ++++++++++++++++++++++++++++++++ 2 files changed, 50 insertions(+) create mode 100644 src/support/tests/CMakeLists.txt diff --git a/src/support/CMakeLists.txt b/src/support/CMakeLists.txt index 521a42a255..5aa083dfc9 100644 --- a/src/support/CMakeLists.txt +++ b/src/support/CMakeLists.txt @@ -38,6 +38,8 @@ else() set(support_linkback_headers "") endif() +add_subdirectory(tests) + # needed to compile tex2lyx in merged mode set(dont_merge ${dont_merge} ${TOP_SRC_DIR}/src/support/gettext.cpp) diff --git a/src/support/tests/CMakeLists.txt b/src/support/tests/CMakeLists.txt new file mode 100644 index 0000000000..21892451ed --- /dev/null +++ b/src/support/tests/CMakeLists.txt @@ -0,0 +1,48 @@ +# This file is part of LyX, the document processor. +# Licence details can be found in the file COPYING. +# +# Copyright (c) 2012 Kornel Benko, kornel@lyx.org +# + +project(supporttest) + +macro(sources _program) + set(_tmplist) + foreach(_tmp ${ARGN}) + list(APPEND _tmplist "${TOP_SRC_DIR}/src/support/tests/${_tmp}") + endforeach() + set(${_program}_SOURCES ${_tmplist}) + add_executable(${_program} ${_tmplist}) + target_link_libraries(${_program} support ${Lyx_Boost_Libraries} ${QT_QTCORE_LIBRARY} ${ZLIB_LIBRARY}) +endmacro() + +file(GLOB test_sources ${TOP_SRC_DIR}/src/support/tests/${LYX_CPP_FILES}) + +include_directories( + ${TOP_SRC_DIR}/src/support/tests + ${QT_INCLUDES} + ${ICONV_INCLUDE_DIR} + ${ZLIB_INCLUDE_DIR} + ${LIBINTL_INCLUDE_DIR}) + + +set(check_PROGRAMS check_convert check_filetools check_lstrings) + +set(_depends) +foreach(_src ${check_PROGRAMS}) + sources(${_src} ${_src}.cpp dummy_functions.cpp boost.cpp) + #message(STATUS "${_src}_SOURCES = " ${${_src}_SOURCES}) + string(REPLACE "check_" "" _srcx ${_src}) + add_custom_command( + OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/regfiles/${_src} + COMMAND ${CMAKE_COMMAND} -E make_directory "${CMAKE_CURRENT_BINARY_DIR}/regfiles" + COMMAND "${CMAKE_BINARY_DIR}/bin/${_src}" > ${CMAKE_CURRENT_BINARY_DIR}/regfiles/${_src} + COMMAND ${CMAKE_COMMAND} -E compare_files "${TOP_SRC_DIR}/src/support/tests/regfiles/${_srcx}" "${CMAKE_CURRENT_BINARY_DIR}/regfiles/${_src}" + DEPENDS "${CMAKE_BINARY_DIR}/bin/${_src}" "${TOP_SRC_DIR}/src/support/tests/regfiles/${_srcx}" + COMMENT "'${CMAKE_BINARY_DIR}/bin/${_src}' > '${CMAKE_CURRENT_BINARY_DIR}/regfiles/${_src}'" + ) + list(APPEND _depends "${CMAKE_CURRENT_BINARY_DIR}/regfiles/${_src}") +endforeach() + +add_custom_target(checkregfiles DEPENDS support ${_depends}) +