Skip to content

Commit ead797e

Browse files
authored
Merge pull request #36 from eisenhauer/modernize-cmake
Modernize CMake practices and bump version to 2.2.3
2 parents 1164aa0 + c294f0f commit ead797e

1 file changed

Lines changed: 12 additions & 17 deletions

File tree

CMakeLists.txt

Lines changed: 12 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ cmake_minimum_required(VERSION 3.14)
33
# The directory label is used for CDash to treat ATL as a subproject of GTKorvo
44
set(CMAKE_DIRECTORY_LABELS ATL)
55

6-
project(ATL VERSION 2.2.2 LANGUAGES C)
6+
project(ATL VERSION 2.2.3 LANGUAGES C)
77

88
# Some boilerplate to setup nice output directories
99
include(GNUInstallDirs)
@@ -40,17 +40,6 @@ endif()
4040
if(WIN32)
4141
# Automagic to do the DLL / LIB song and dance
4242
set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS TRUE)
43-
44-
# Silence MSVC warnings
45-
if(CMAKE_C_COMPILER_ID MATCHES "MSVC" OR
46-
CMAKE_C_SIMULATE_ID MATCHES "MSVC")
47-
add_definitions(
48-
-D_CRT_SECURE_NO_DEPRECATE
49-
-D_CRT_SECURE_NO_WARNINGS
50-
-D_SCL_SECURE_NO_DEPRECATE
51-
-D_WINSOCK_DEPRECATED_NO_WARNINGS
52-
-D_CRT_NONSTDC_NO_DEPRECATE)
53-
endif()
5443
endif()
5544

5645
# Default to a RelWithDebInfo build if not specified
@@ -107,6 +96,16 @@ if(WIN32)
10796
target_link_libraries(atl wsock32 ws2_32)
10897
endif()
10998
add_library(atl::atl ALIAS atl)
99+
100+
# MSVC warning suppressions
101+
if(MSVC OR CMAKE_C_SIMULATE_ID MATCHES "MSVC")
102+
target_compile_definitions(atl PRIVATE
103+
_CRT_SECURE_NO_DEPRECATE
104+
_CRT_SECURE_NO_WARNINGS
105+
_SCL_SECURE_NO_DEPRECATE
106+
_WINSOCK_DEPRECATED_NO_WARNINGS
107+
_CRT_NONSTDC_NO_DEPRECATE)
108+
endif()
110109
option(ATL_INSTALL_HEADERS "Install ATL header files" ON)
111110
mark_as_advanced(ATL_INSTALL_HEADERS)
112111
set_target_properties(atl PROPERTIES
@@ -146,15 +145,11 @@ if(ATL_INSTALL_HEADERS)
146145
install(FILES atl.h DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}"
147146
COMPONENT ${ATL_HEADER_COMPONENT})
148147
endif()
149-
set(namelink_component_args)
150-
if(NOT CMAKE_VERSION VERSION_LESS 3.12)
151-
set(namelink_component_args NAMELINK_COMPONENT ${ATL_HEADER_COMPONENT})
152-
endif()
153148
install(TARGETS atl
154149
# IMPORTANT: Add the foo library to the "export-set"
155150
EXPORT atl-targets
156151
RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" COMPONENT ${ATL_RUNTIME_COMPONENT}
157-
LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}" COMPONENT ${ATL_LIBRARY_COMPONENT} ${namelink_component_args}
152+
LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}" COMPONENT ${ATL_LIBRARY_COMPONENT} NAMELINK_COMPONENT ${ATL_HEADER_COMPONENT}
158153
ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}" COMPONENT ${ATL_ARCHIVE_COMPONENT}
159154
PUBLIC_HEADER DESTINATION "${CMAKE_INSTALL_INCLUDEDIR}" COMPONENT ${ATL_HEADER_COMPONENT})
160155

0 commit comments

Comments
 (0)