Skip to content

Commit ee5ae02

Browse files
committed
Fix socketio#311, removed unnecessary check for CMAKE_BUILD_TYPE
The check for Release or Debug in CMAKE_BUILD_TYPE breaks some assumption in Debian packaging. Since the check is useless, it has been removed.
1 parent 39f4346 commit ee5ae02

File tree

1 file changed

+77
-77
lines changed

1 file changed

+77
-77
lines changed

CMakeLists.txt

Lines changed: 77 additions & 77 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,17 @@
11
cmake_minimum_required(VERSION 3.4 FATAL_ERROR)
2-
PROJECT(sioclient)
2+
PROJECT(sioclient
3+
VERSION 3.1.0
4+
)
35

46
option(BUILD_SHARED_LIBS "Build the shared library" OFF)
5-
option(BUILD_UNIT_TESTS "Builds unit tests target" OFF)
6-
7-
set(MAJOR 1)
8-
set(MINOR 6)
9-
set(PATCH 0)
10-
11-
if(NOT CMAKE_BUILD_TYPE )
12-
MESSAGE(STATUS "not define build type, set to release" )
13-
set(CMAKE_BUILD_TYPE Release )
14-
elseif(NOT (${CMAKE_BUILD_TYPE} STREQUAL "Release" OR ${CMAKE_BUILD_TYPE} STREQUAL "Debug" ))
15-
MESSAGE(SEND_ERROR "CMAKE_BUILD_TYPE must be either Release or Debug")
16-
return()
17-
endif()
7+
option(BUILD_UNIT_TESTS "Builds unit tests target" OFF)
8+
9+
if (NOT EXISTS ${CMAKE_SOURCE_DIR}/lib/asio/asio/README)
10+
message("Updating submodules")
11+
execute_process(
12+
COMMAND git submodule update --init
13+
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR})
14+
endif ()
1815

1916
if (NOT EXISTS ${CMAKE_SOURCE_DIR}/lib/asio/asio/README)
2017
message("Updating submodules")
@@ -25,84 +22,87 @@ endif()
2522

2623
aux_source_directory(${CMAKE_CURRENT_LIST_DIR}/src ALL_SRC)
2724
aux_source_directory(${CMAKE_CURRENT_LIST_DIR}/src/internal ALL_SRC)
28-
file(GLOB ALL_HEADERS ${CMAKE_CURRENT_LIST_DIR}/src/*.h )
29-
set(SIO_INCLUDEDIR ${CMAKE_CURRENT_LIST_DIR})
25+
26+
file(GLOB ALL_HEADERS ${CMAKE_CURRENT_LIST_DIR}/src/*.h)
3027

3128
add_definitions(
32-
# These will force ASIO to compile without Boost
33-
-DBOOST_DATE_TIME_NO_LIB
34-
-DBOOST_REGEX_NO_LIB
35-
-DASIO_STANDALONE
36-
# These will force WebsocketPP to compile with C++11
37-
-D_WEBSOCKETPP_CPP11_STL_
38-
-D_WEBSOCKETPP_CPP11_FUNCTIONAL_
29+
# These will force ASIO to compile without Boost
30+
-DBOOST_DATE_TIME_NO_LIB
31+
-DBOOST_REGEX_NO_LIB
32+
-DASIO_STANDALONE
33+
# These will force WebsocketPP to compile with C++11
34+
-D_WEBSOCKETPP_CPP11_STL_
35+
-D_WEBSOCKETPP_CPP11_FUNCTIONAL_
3936
)
4037

4138
add_library(sioclient ${ALL_SRC})
42-
target_include_directories(sioclient PRIVATE
43-
${CMAKE_CURRENT_LIST_DIR}/src
44-
${CMAKE_CURRENT_LIST_DIR}/lib/websocketpp
45-
${CMAKE_CURRENT_LIST_DIR}/lib/rapidjson/include
46-
${CMAKE_CURRENT_LIST_DIR}/lib/asio/asio/include
47-
)
39+
40+
target_include_directories(sioclient PRIVATE
41+
${CMAKE_CURRENT_LIST_DIR}/src
42+
${CMAKE_CURRENT_LIST_DIR}/lib/websocketpp
43+
${CMAKE_CURRENT_LIST_DIR}/lib/rapidjson/include
44+
${CMAKE_CURRENT_LIST_DIR}/lib/asio/asio/include
45+
)
4846

4947
if (CMAKE_VERSION VERSION_GREATER "3.1")
50-
set_property(TARGET sioclient PROPERTY CXX_STANDARD 11)
51-
set_property(TARGET sioclient PROPERTY CXX_STANDARD_REQUIRED ON)
52-
else()
53-
set_property(TARGET sioclient APPEND_STRING PROPERTY COMPILE_FLAGS "-std=c++11")
54-
endif()
55-
if(BUILD_SHARED_LIBS)
56-
set_target_properties(sioclient
57-
PROPERTIES
58-
SOVERSION ${MAJOR}
59-
VERSION ${MAJOR}.${MINOR}.${PATCH}
60-
)
61-
endif()
48+
set_property(TARGET sioclient PROPERTY CXX_STANDARD 11)
49+
set_property(TARGET sioclient PROPERTY CXX_STANDARD_REQUIRED ON)
50+
else ()
51+
set_property(TARGET sioclient APPEND_STRING PROPERTY COMPILE_FLAGS "-std=c++11")
52+
endif ()
53+
54+
if (BUILD_SHARED_LIBS)
55+
set_target_properties(sioclient
56+
PROPERTIES
57+
SOVERSION ${MAJOR}
58+
VERSION ${MAJOR}.${MINOR}.${PATCH}
59+
)
60+
endif ()
61+
6262
list(APPEND TARGET_LIBRARIES sioclient)
6363

6464
find_package(OpenSSL)
65-
if(OPENSSL_FOUND)
66-
add_library(sioclient_tls ${ALL_SRC})
67-
target_include_directories(sioclient_tls PRIVATE
68-
${CMAKE_CURRENT_LIST_DIR}/src
69-
${CMAKE_CURRENT_LIST_DIR}/lib/websocketpp
70-
${CMAKE_CURRENT_LIST_DIR}/lib/rapidjson/include
71-
${CMAKE_CURRENT_LIST_DIR}/lib/asio/asio/include
72-
${OPENSSL_INCLUDE_DIR}
73-
)
65+
if (OPENSSL_FOUND)
66+
add_library(sioclient_tls ${ALL_SRC})
67+
target_include_directories(sioclient_tls PRIVATE
68+
${CMAKE_CURRENT_LIST_DIR}/src
69+
${CMAKE_CURRENT_LIST_DIR}/lib/websocketpp
70+
${CMAKE_CURRENT_LIST_DIR}/lib/rapidjson/include
71+
${CMAKE_CURRENT_LIST_DIR}/lib/asio/asio/include
72+
${OPENSSL_INCLUDE_DIR}
73+
)
7474

75-
if (CMAKE_VERSION VERSION_GREATER "3.1")
76-
set_property(TARGET sioclient_tls PROPERTY CXX_STANDARD 11)
77-
set_property(TARGET sioclient_tls PROPERTY CXX_STANDARD_REQUIRED ON)
78-
target_link_libraries(sioclient_tls PRIVATE ${OPENSSL_LIBRARIES} )
79-
else()
80-
set_property(TARGET sioclient_tls APPEND_STRING PROPERTY COMPILE_FLAGS "-std=c++11")
81-
endif()
82-
target_compile_definitions(sioclient_tls PRIVATE -DSIO_TLS)
83-
if(BUILD_SHARED_LIBS)
84-
set_target_properties(sioclient_tls
85-
PROPERTIES
86-
SOVERSION ${MAJOR}
87-
VERSION ${MAJOR}.${MINOR}.${PATCH}
88-
)
89-
endif()
90-
list(APPEND TARGET_LIBRARIES sioclient_tls)
75+
if (CMAKE_VERSION VERSION_GREATER "3.1")
76+
set_property(TARGET sioclient_tls PROPERTY CXX_STANDARD 11)
77+
set_property(TARGET sioclient_tls PROPERTY CXX_STANDARD_REQUIRED ON)
78+
target_link_libraries(sioclient_tls PRIVATE ${OPENSSL_LIBRARIES})
79+
else ()
80+
set_property(TARGET sioclient_tls APPEND_STRING PROPERTY COMPILE_FLAGS "-std=c++11")
81+
endif ()
82+
target_compile_definitions(sioclient_tls PRIVATE -DSIO_TLS)
83+
if (BUILD_SHARED_LIBS)
84+
set_target_properties(sioclient_tls
85+
PROPERTIES
86+
SOVERSION ${MAJOR}
87+
VERSION ${MAJOR}.${MINOR}.${PATCH}
88+
)
89+
endif ()
90+
list(APPEND TARGET_LIBRARIES sioclient_tls)
9191

92-
endif()
92+
endif ()
9393

9494
include(GNUInstallDirs)
9595

96-
install(FILES ${ALL_HEADERS}
97-
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
98-
)
96+
install(FILES ${ALL_HEADERS}
97+
DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
98+
)
9999

100100
install(TARGETS ${TARGET_LIBRARIES}
101-
DESTINATION ${CMAKE_INSTALL_LIBDIR}
102-
)
101+
DESTINATION ${CMAKE_INSTALL_LIBDIR}
102+
)
103103

104-
if(BUILD_UNIT_TESTS)
105-
message(STATUS "Building with unit test support.")
106-
enable_testing()
107-
add_subdirectory(test)
108-
endif()
104+
if (BUILD_UNIT_TESTS)
105+
message(STATUS "Building with unit test support.")
106+
enable_testing()
107+
add_subdirectory(test)
108+
endif ()

0 commit comments

Comments
 (0)