]> git.lyx.org Git - lyx.git/blob - src/support/tests/CMakeLists.txt
Cmake build Qt6: Remove some redundant statements.
[lyx.git] / src / support / tests / CMakeLists.txt
1 # This file is part of LyX, the document processor.
2 # Licence details can be found in the file COPYING.
3 #
4 # Copyright (c) 2012 Kornel Benko, kornel@lyx.org
5 #
6
7 project(supporttest)
8
9 macro(sources _program)
10         set(_tmplist)
11         foreach(_tmp ${ARGN})
12                 list(APPEND _tmplist "${TOP_SRC_DIR}/src/support/tests/${_tmp}")
13         endforeach()
14         set(${_program}_SOURCES ${_tmplist})
15         add_executable(${_program} ${_tmplist})
16         target_link_libraries(${_program} support
17                 ${Lyx_Boost_Libraries}
18                 ${QT_QTGUI_LIBRARY} ${QT_QTCORE_LIBRARY}
19                 ${ZLIB_LIBRARY} ${ICONV_LIBRARY})
20         lyx_target_link_libraries(${_program} Magic)
21         if(CYGWIN)
22                 target_link_libraries(${_program} shlwapi)
23         endif()
24         qt_use_modules(${_program} Core ${QtCore5CompatModule})
25         set_property(TARGET ${_program} PROPERTY INTERPROCEDURAL_OPTIMIZATION FALSE)
26 endmacro()
27
28 file(GLOB test_sources ${TOP_SRC_DIR}/src/support/tests/${LYX_CPP_FILES})
29
30 include_directories(
31         ${TOP_SRC_DIR}/src/support/tests
32         ${QT_INCLUDES}
33         ${ICONV_INCLUDE_DIR}
34         ${ZLIB_INCLUDE_DIR})
35
36
37 set(check_PROGRAMS check_convert check_filetools check_lstrings check_trivstring)
38
39 file(MAKE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}/regfiles")
40
41 set(_depends)
42 foreach(_src ${check_PROGRAMS})
43         sources(${_src} ${_src}.cpp dummy_functions.cpp boost.cpp)
44         string(REPLACE "check_" "" _srcx ${_src})
45         set(src_data_file "${TOP_SRC_DIR}/src/support/tests/regfiles/${_srcx}")
46         if (MSVC AND EXISTS "${src_data_file}.MSVC")
47                 set(src_data_file "${src_data_file}.MSVC")
48         endif()
49         set(created_data_file "${CMAKE_CURRENT_BINARY_DIR}/regfiles/${_src}_data")
50         add_test(NAME support/${_srcx}
51           COMMAND ${CMAKE_COMMAND} -DCommand=$<TARGET_FILE:${_src}>
52                                    -DInput=${src_data_file}
53                                    -DOutput=${created_data_file}
54                                    -P "${TOP_SRC_DIR}/src/support/tests/supporttest.cmake")
55
56         set_target_properties(${_src} PROPERTIES FOLDER "tests/support")
57         add_dependencies(lyx_run_tests ${_src})
58 endforeach()
59
60