diff --git a/CMakeLists.txt b/CMakeLists.txt
index a683ea1..b4c75c9 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -1,5 +1,5 @@
-cmake_minimum_required(VERSION 2.8.1)
-project(UnitTest++)
+cmake_minimum_required(VERSION 3.0)
+project(UnitTest++ VERSION 2.1.0)
option(UTPP_USE_PLUS_SIGN
"Set this to OFF if you wish to use '-cpp' instead of '++' in lib/include paths"
@@ -64,6 +64,8 @@ source_group(${platformDir_} FILES ${platformHeaders_} ${platformSources_})
# create the lib
add_library(UnitTest++ STATIC ${headers_} ${sources_} ${platformHeaders_} ${platformSources_})
+add_library(UnitTest++::UnitTest++ ALIAS UnitTest++)
+
if(${UTPP_USE_PLUS_SIGN})
set_target_properties(UnitTest++ PROPERTIES OUTPUT_NAME UnitTest++)
@@ -74,13 +76,16 @@ endif()
file(GLOB TEST_SRCS RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} tests/*.cpp tests/*.h)
source_group( "" FILES ${TEST_SRCS})
add_executable(TestUnitTest++ ${TEST_SRCS})
-include_directories(.)
+
if(${UTPP_USE_PLUS_SIGN})
set_target_properties(TestUnitTest++ PROPERTIES OUTPUT_NAME TestUnitTest++)
endif()
-target_link_libraries(TestUnitTest++ UnitTest++)
+target_link_libraries(TestUnitTest++
+ PUBLIC
+ UnitTest++::UnitTest++
+ )
# run unit tests as post build step
add_custom_command(TARGET TestUnitTest++
@@ -100,14 +105,31 @@ else()
set (UTPP_INSTALL_DESTINATION "include/UnitTestPP")
endif()
+target_include_directories( UnitTest++
+ PUBLIC
+ $
+ $
+ )
+set_target_properties(UnitTest++ PROPERTIES DEBUG_POSTFIX "-d")
+set_target_properties(TestUnitTest++ PROPERTIES DEBUG_POSTFIX "-d")
+
set(config_install_dir_ lib${LIB_SUFFIX}/cmake/${PROJECT_NAME})
set(targets_export_name_ "${PROJECT_NAME}Targets")
+include(CMakePackageConfigHelpers)
+write_basic_package_version_file(
+ cmake/UnitTest++ConfigVersion.cmake
+ VERSION ${UnitTest++_VERSION}
+ COMPATIBILITY SameMajorVersion
+ )
install(TARGETS UnitTest++ EXPORT "${targets_export_name_}" DESTINATION lib${LIB_SUFFIX})
install(FILES ${headers_} DESTINATION ${UTPP_INSTALL_DESTINATION})
install(FILES ${platformHeaders_} DESTINATION ${UTPP_INSTALL_DESTINATION}/${platformDir_})
-install(FILES cmake/UnitTest++Config.cmake DESTINATION "${config_install_dir_}")
-install(EXPORT "${targets_export_name_}" DESTINATION "${config_install_dir_}")
+install(FILES
+ cmake/UnitTest++Config.cmake
+ ${CMAKE_CURRENT_BINARY_DIR}/cmake/UnitTest++ConfigVersion.cmake
+ DESTINATION "${config_install_dir_}")
+install(EXPORT "${targets_export_name_}" NAMESPACE "UnitTest++::" DESTINATION "${config_install_dir_}")
set(prefix ${CMAKE_INSTALL_PREFIX})
set(exec_prefix ${CMAKE_INSTALL_PREFIX}/bin)
diff --git a/appveyor.yml b/appveyor.yml
index bebe4f5..3a4637d 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -1,4 +1,4 @@
-version: 2.0.0.{build}
+version: 2.1.0.{build}
os:
- Windows Server 2012 R2
diff --git a/configure.ac b/configure.ac
index 56300a6..372f576 100644
--- a/configure.ac
+++ b/configure.ac
@@ -23,7 +23,7 @@ AM_CONDITIONAL([WINDOWS],
LT_INIT()
-AC_SUBST([LIBUNITTEST_SO_VERSION], [2:0:0])
+AC_SUBST([LIBUNITTEST_SO_VERSION], [2:1:0])
# Checks for programs.
AC_PROG_CXX
diff --git a/tests/TestTest.cpp b/tests/TestTest.cpp
index 5a4e1ca..0db0650 100644
--- a/tests/TestTest.cpp
+++ b/tests/TestTest.cpp
@@ -72,7 +72,7 @@ namespace {
CHECK_EQUAL(1, results.GetFailureCount());
}
-#if !defined(UNITTEST_MINGW) && !defined(UNITTEST_WIN32)
+#if !defined(UNITTEST_MINGW) && !defined(UNITTEST_WIN32) && !defined(__clang__)
// Skip this test in debug because some debuggers don't like it.
#if defined(NDEBUG)
TEST(CrashingTestsAreReportedAsFailures)