]>
Commit | Line | Data |
---|---|---|
1e59de90 TL |
1 | diff --git a/CMakeLists.txt b/CMakeLists.txt |
2 | index 8c73730..4cd9074 100644 | |
3 | --- a/CMakeLists.txt | |
4 | +++ b/CMakeLists.txt | |
5 | @@ -1,7 +1,9 @@ | |
6 | cmake_minimum_required (VERSION 2.8.11) | |
7 | project (signalrclient) | |
8 | ||
9 | +if(NOT WIN32) | |
10 | set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11 -fPIC -L -lcpprest") | |
11 | +endif() | |
12 | ||
13 | set(CPPREST_INCLUDE_DIR "" CACHE FILEPATH "Path to casablanca include dir") | |
14 | ||
15 | @@ -16,4 +18,32 @@ set(CMAKE_LIBRARY_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/bin) | |
16 | set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY ${PROJECT_BINARY_DIR}/bin) | |
17 | ||
18 | add_subdirectory(src/signalrclient) | |
19 | -add_subdirectory(test) | |
20 | +if(NOT DISABLE_TESTS) | |
21 | + add_subdirectory(test) | |
22 | +endif() | |
23 | + | |
24 | +if(BUILD_SHARED_LIBS) | |
25 | + install(FILES include/signalrclient/_exports.h DESTINATION include/signalrclient) | |
26 | +else() | |
27 | + file(READ include/signalrclient/_exports.h EXPORTS_H) | |
28 | + string(REPLACE "#ifdef NO_SIGNALRCLIENT_EXPORTS" "#if 1" EXPORTS_H_2 ${EXPORTS_H}) | |
29 | + file(WRITE ${CMAKE_CURRENT_BINARY_DIR}/_exports.h "${EXPORTS_H_2}") | |
30 | + | |
31 | + install(FILES ${CMAKE_CURRENT_BINARY_DIR}/_exports.h DESTINATION include/signalrclient) | |
32 | +endif() | |
33 | + | |
34 | +set(HEADERS | |
35 | + include/signalrclient/connection.h | |
36 | + include/signalrclient/connection_state.h | |
37 | + include/signalrclient/hub_connection.h | |
38 | + include/signalrclient/hub_exception.h | |
39 | + include/signalrclient/hub_proxy.h | |
40 | + include/signalrclient/log_writer.h | |
41 | + include/signalrclient/trace_level.h | |
42 | + include/signalrclient/transport_type.h | |
43 | + include/signalrclient/web_exception.h) | |
44 | + | |
45 | +install( | |
46 | + FILES ${HEADERS} | |
47 | + DESTINATION "include/signalrclient" | |
48 | +) | |
49 | diff --git a/src/signalrclient/CMakeLists.txt b/src/signalrclient/CMakeLists.txt | |
50 | index 76a5e1b..db141eb 100644 | |
51 | --- a/src/signalrclient/CMakeLists.txt | |
52 | +++ b/src/signalrclient/CMakeLists.txt | |
53 | @@ -22,6 +22,21 @@ set (SOURCES | |
54 | websocket_transport.cpp | |
55 | ) | |
56 | ||
57 | -add_library (signalrclient SHARED ${SOURCES}) | |
58 | +if(BUILD_SHARED_LIBS) | |
59 | + add_definitions(-DSIGNALRCLIENT_EXPORTS) | |
60 | +else() | |
61 | + add_definitions(-DNO_SIGNALRCLIENT_EXPORTS) | |
62 | +endif() | |
63 | + | |
64 | +add_definitions(-DUNICODE -D_UNICODE) | |
65 | + | |
66 | +add_library (signalrclient ${SOURCES}) | |
67 | ||
68 | target_link_libraries(signalrclient ${CPPREST_SO}) | |
69 | + | |
70 | +install( | |
71 | + TARGETS signalrclient | |
72 | + LIBRARY DESTINATION lib | |
73 | + ARCHIVE DESTINATION lib | |
74 | + RUNTIME DESTINATION bin | |
75 | +) |