37 lines
963 B
CMake
37 lines
963 B
CMake
add_custom_target(BlangUnitTests)
|
|
|
|
enable_testing()
|
|
|
|
set(BLANG_UNITTESTS_DIR ${CMAKE_CURRENT_LIST_DIR})
|
|
|
|
find_library(CPPUNIT_LIBRARY NAMES libcppunit.a)
|
|
find_path(CPPUNIT_INCLUDE NAMES cppunit/include)
|
|
|
|
if(NOT CPPUNIT_LIBRARY OR EXISTS CPPUNIT_LIBRARY)
|
|
message(FATAL_ERROR "CPPUNIT_LIBRARY is not found!")
|
|
endif()
|
|
|
|
if(NOT CPPUNIT_INCLUDE OR EXISTS CPPUNIT_INCLUDE)
|
|
message(FATAL_ERROR "CPPUNIT_INCLUDE is not found!")
|
|
endif()
|
|
|
|
include_directories(${CPPUNIT_INCLUDE})
|
|
|
|
# add_blang_unittest(test_name file1.cpp file2.cpp)
|
|
#
|
|
# Will compile the list of files together and link against the blang
|
|
# Produces a binary named 'test_name'.
|
|
function(add_blang_unittest test_name)
|
|
add_executable(${test_name} ${BLANG_UNITTESTS_DIR}/mainTest.cpp ${ARGN})
|
|
target_link_libraries(${test_name}
|
|
${CPPUNIT_LIBRARY}
|
|
)
|
|
add_custom_target(check-${test_name}
|
|
COMMAND ${test_name}
|
|
WORKING_DIRECTORY ${CMAKE_CURRENT_LIST_DIR}
|
|
)
|
|
endfunction()
|
|
|
|
add_subdirectory(libblang)
|
|
|