Skip to content

Commit 57f62c8

Browse files
committed
build: Fix linking against GTest
1 parent 420b60e commit 57f62c8

File tree

1 file changed

+61
-61
lines changed

1 file changed

+61
-61
lines changed

tests/CMakeLists.txt

Lines changed: 61 additions & 61 deletions
Original file line numberDiff line numberDiff line change
@@ -1,111 +1,111 @@
1-
cmake_minimum_required(VERSION 3.5)
1+
cmake_minimum_required( VERSION 3.5 )
22

33
# Package Management using CPM
4-
include(cmake/get_cpm.cmake)
4+
include( cmake/get_cpm.cmake )
55

6-
project(HttpStatusCodesTests)
6+
project( HttpStatusCodesTests )
77

8-
set (CMAKE_CXX_STANDARD 11)
8+
set ( CMAKE_CXX_STANDARD 11 )
99

1010
CPMAddPackage(
1111
NAME GTest
1212
VERSION "1.15.2"
13-
URL "https://github.com/google/googletest/archive/refs/tags/v1.15.2.tar.gz"
14-
OPTIONS "INSTALL_GTEST OFF" "gtest_force_shared_crt" )
15-
set( GTEST_MAIN GTest::gtest_main )
13+
URL "https://github.com/google/googletest/releases/download/v1.15.2/googletest-1.15.2.tar.gz"
14+
OPTIONS "INSTALL_GTEST OFF" "gtest_force_shared_crt"
15+
)
1616

1717
enable_testing()
1818

19-
include_directories(${PROJECT_SOURCE_DIR}/..)
19+
include_directories( ${PROJECT_SOURCE_DIR}/.. )
2020

21-
add_executable(CVariantTest CVariantTest.cpp)
22-
target_link_libraries(CVariantTest ${GTEST_MAIN})
23-
add_test(NAME CVariantTest COMMAND CVariantTest)
21+
add_executable( CVariantTest CVariantTest.cpp )
22+
target_link_libraries( CVariantTest GTest::gtest GTest::gtest_main )
23+
add_test( NAME CVariantTest COMMAND CVariantTest )
2424

25-
add_executable(CVariantCompileTest CVariantCompileTest.c)
26-
add_test(NAME CVariantCompileTest COMMAND CVariantCompileTest)
27-
set_target_properties(CVariantCompileTest PROPERTIES
25+
add_executable( CVariantCompileTest CVariantCompileTest.c )
26+
add_test( NAME CVariantCompileTest COMMAND CVariantCompileTest )
27+
set_target_properties( CVariantCompileTest PROPERTIES
2828
LINKER_LANGUAGE "C"
2929
C_STANDARD 90
3030
C_STANDARD_REQUIRED ON
3131
)
3232

33-
add_executable(C++VariantTest C++VariantTest.cpp)
34-
target_link_libraries(C++VariantTest ${GTEST_MAIN})
35-
add_test(NAME C++VariantTest COMMAND C++VariantTest)
36-
set_target_properties(C++VariantTest PROPERTIES
33+
add_executable( C++VariantTest C++VariantTest.cpp )
34+
target_link_libraries( C++VariantTest GTest::gtest GTest::gtest_main )
35+
add_test( NAME C++VariantTest COMMAND C++VariantTest )
36+
set_target_properties( C++VariantTest PROPERTIES
3737
CXX_STANDARD 98
3838
CXX_STANDARD_REQUIRED ON
3939
)
4040

4141

42-
list(FIND CMAKE_CXX_COMPILE_FEATURES "cxx_strong_enums" CXX_SUPPORTS_STRONG_ENUMS)
43-
if (CXX_SUPPORTS_STRONG_ENUMS GREATER -1)
44-
set(CXX_SUPPORTS_STRONG_ENUMS ON)
42+
list( FIND CMAKE_CXX_COMPILE_FEATURES "cxx_strong_enums" CXX_SUPPORTS_STRONG_ENUMS )
43+
if ( CXX_SUPPORTS_STRONG_ENUMS GREATER -1 )
44+
set( CXX_SUPPORTS_STRONG_ENUMS ON )
4545
else()
46-
set(CXX_SUPPORTS_STRONG_ENUMS OFF)
46+
set( CXX_SUPPORTS_STRONG_ENUMS OFF )
4747
endif()
4848

49-
if(CXX_SUPPORTS_STRONG_ENUMS)
50-
add_executable(C++11VariantTest C++11VariantTest.cpp)
51-
target_link_libraries(C++11VariantTest ${GTEST_MAIN})
52-
add_test(NAME C++11VariantTest COMMAND C++11VariantTest)
53-
set_target_properties(C++11VariantTest PROPERTIES
49+
if( CXX_SUPPORTS_STRONG_ENUMS )
50+
add_executable( C++11VariantTest C++11VariantTest.cpp )
51+
target_link_libraries( C++11VariantTest GTest::gtest GTest::gtest_main )
52+
add_test( NAME C++11VariantTest COMMAND C++11VariantTest )
53+
set_target_properties( C++11VariantTest PROPERTIES
5454
CXX_STANDARD 11
5555
CXX_STANDARD_REQUIRED ON
5656
)
5757
endif()
5858

59-
set(CMAKE_AUTOMOC ON)
60-
find_package(Qt6 COMPONENTS Core OPTIONAL_COMPONENTS Network)
61-
if (Qt6_FOUND)
62-
set(QTCORE_LIB Qt6::Core)
63-
if (Qt6Network_FOUND)
64-
set(QTNETWORK_LIB Qt6::Network)
59+
set( CMAKE_AUTOMOC ON )
60+
find_package( Qt6 COMPONENTS Core OPTIONAL_COMPONENTS Network )
61+
if ( Qt6_FOUND )
62+
set( QTCORE_LIB Qt6::Core )
63+
if ( Qt6Network_FOUND )
64+
set( QTNETWORK_LIB Qt6::Network )
6565
endif()
6666
endif()
67-
if (NOT QTCORE_LIB)
68-
find_package(Qt5 COMPONENTS Core OPTIONAL_COMPONENTS Network)
69-
if (Qt5_FOUND)
70-
set(QTCORE_LIB Qt5::Core)
71-
if (Qt5Network_FOUND)
72-
set(QTNETWORK_LIB Qt5::Network)
67+
if ( NOT QTCORE_LIB )
68+
find_package( Qt5 COMPONENTS Core OPTIONAL_COMPONENTS Network )
69+
if ( Qt5_FOUND )
70+
set( QTCORE_LIB Qt5::Core )
71+
if ( Qt5Network_FOUND )
72+
set( QTNETWORK_LIB Qt5::Network )
7373
endif()
7474
endif()
7575
endif()
76-
if (NOT QTCORE_LIB)
77-
find_package(Qt5Core CONFIG)
78-
if (Qt5Core_FOUND)
79-
set(QTCORE_LIB Qt5::Core)
80-
find_package(Qt5Network CONFIG)
81-
if (Qt5Network_FOUND)
82-
set(QTNETWORK_LIB Qt5::Network)
76+
if ( NOT QTCORE_LIB )
77+
find_package( Qt5Core CONFIG )
78+
if ( Qt5Core_FOUND )
79+
set( QTCORE_LIB Qt5::Core )
80+
find_package( Qt5Network CONFIG )
81+
if ( Qt5Network_FOUND )
82+
set( QTNETWORK_LIB Qt5::Network )
8383
endif()
8484
endif()
8585
endif()
86-
if (NOT QTCORE_LIB)
87-
find_package(Qt4 COMPONENTS QtCore OPTIONAL_COMPONENTS QtNetwork)
88-
if (Qt4_FOUND)
89-
set(QTCORE_LIB Qt4::QtCore)
90-
if (QT_NETWORK_FOUND)
91-
set(QTNETWORK_LIB Qt4::QtNetwork)
86+
if ( NOT QTCORE_LIB )
87+
find_package( Qt4 COMPONENTS QtCore OPTIONAL_COMPONENTS QtNetwork )
88+
if ( Qt4_FOUND )
89+
set( QTCORE_LIB Qt4::QtCore )
90+
if ( QT_NETWORK_FOUND )
91+
set( QTNETWORK_LIB Qt4::QtNetwork )
9292
endif()
9393
endif()
9494
endif()
9595

9696

97-
if (QTCORE_LIB)
98-
add_executable(QtVariantTest QtVariantTest.cpp "${PROJECT_SOURCE_DIR}/../HttpStatusCodes_Qt.h")
99-
target_link_libraries(QtVariantTest ${GTEST_MAIN} ${QTCORE_LIB} ${QTNETWORK_LIB})
100-
add_test(NAME QtVariantTest COMMAND QtVariantTest)
101-
if (WIN32)
97+
if ( QTCORE_LIB )
98+
add_executable( QtVariantTest QtVariantTest.cpp "${PROJECT_SOURCE_DIR}/../HttpStatusCodes_Qt.h" )
99+
target_link_libraries( QtVariantTest GTest::gtest GTest::gtest_main ${QTCORE_LIB} ${QTNETWORK_LIB} )
100+
add_test( NAME QtVariantTest COMMAND QtVariantTest )
101+
if ( WIN32 )
102102
set_tests_properties( QtVariantTest PROPERTIES ENVIRONMENT "PATH=$<TARGET_FILE_DIR:${QTCORE_LIB}>;$ENV{PATH}" )
103103
endif()
104104

105-
add_executable(QtC++11VariantTest QtC++11VariantTest.cpp "${PROJECT_SOURCE_DIR}/../HttpStatusCodes_Qt_C++11.h")
106-
target_link_libraries(QtC++11VariantTest ${GTEST_MAIN} ${QTCORE_LIB} ${QTNETWORK_LIB})
107-
add_test(NAME QtC++11VariantTest COMMAND QtVariantTest)
108-
if (WIN32)
105+
add_executable( QtC++11VariantTest QtC++11VariantTest.cpp "${PROJECT_SOURCE_DIR}/../HttpStatusCodes_Qt_C++11.h" )
106+
target_link_libraries( QtC++11VariantTest GTest::gtest GTest::gtest_main ${QTCORE_LIB} ${QTNETWORK_LIB} )
107+
add_test( NAME QtC++11VariantTest COMMAND QtVariantTest )
108+
if ( WIN32 )
109109
set_tests_properties( QtC++11VariantTest PROPERTIES ENVIRONMENT "PATH=$<TARGET_FILE_DIR:${QTCORE_LIB}>;$ENV{PATH}" )
110110
endif()
111111
endif()

0 commit comments

Comments
 (0)