blob: 1be7d3c9788a88aca2ef2a9302e6e7abcc4e23f5 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
|
diff --git a/CMakeLists.txt b/CMakeLists.txt
index a735c53..53ddaed 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -229,7 +229,9 @@ add_subdirectory(src)
if(BUILD_UNIT_TESTS)
add_subdirectory(test)
endif()
+if(BUILD_TOOLS)
add_subdirectory(tools)
+endif()
file(COPY ${CMAKE_CURRENT_BINARY_DIR}/braft/
DESTINATION ${CMAKE_CURRENT_BINARY_DIR}/output/include/braft/
diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt
index f587464..78adc56 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -12,22 +12,34 @@ include_directories(${CMAKE_SOURCE_DIR}/src)
add_library(OBJ_LIB OBJECT ${SOURCES})
set_property(TARGET ${OBJ_LIB} PROPERTY POSITION_INDEPENDENT_CODE 1)
+if (BUILD_SHARED_LIBS)
add_library(braft-shared SHARED $<TARGET_OBJECTS:OBJ_LIB>)
+else()
add_library(braft-static STATIC $<TARGET_OBJECTS:OBJ_LIB>)
-target_link_libraries(braft-shared ${DYNAMIC_LIB})
-target_link_libraries(braft-static ${DYNAMIC_LIB})
+endif()
+
+if (BUILD_SHARED_LIBS)
+target_link_libraries(braft-shared PUBLIC ${DYNAMIC_LIB})
+else()
+target_link_libraries(braft-static PUBLIC ${DYNAMIC_LIB})
+endif()
+if (NOT BUILD_SHARED_LIBS)
SET_TARGET_PROPERTIES(braft-static PROPERTIES OUTPUT_NAME braft CLEAN_DIRECT_OUTPUT 1)
+else()
SET_TARGET_PROPERTIES(braft-shared PROPERTIES OUTPUT_NAME braft CLEAN_DIRECT_OUTPUT 1)
+endif()
+if (NOT BUILD_SHARED_LIBS)
install(TARGETS braft-static
RUNTIME DESTINATION bin
LIBRARY DESTINATION lib${LIBSUFFIX}
ARCHIVE DESTINATION lib${LIBSUFFIX}
)
-
+else()
install(TARGETS braft-shared
RUNTIME DESTINATION bin
LIBRARY DESTINATION lib${LIBSUFFIX}
ARCHIVE DESTINATION lib${LIBSUFFIX}
)
+endif()
|