a18ec8b20c6295de25f770263a98a7d9bef82b1e
[socket_wrapper.git] / src / CMakeLists.txt
1 project(libsocket_wrapper C)
2
3 add_library(socket_wrapper SHARED socket_wrapper.c)
4 target_include_directories(socket_wrapper
5                            PRIVATE
6                                ${CMAKE_BINARY_DIR})
7 target_compile_options(socket_wrapper
8                        PRIVATE
9                           ${DEFAULT_C_COMPILE_FLAGS}
10                           -D_GNU_SOURCE)
11 target_link_libraries(socket_wrapper
12                       PRIVATE ${SWRAP_REQUIRED_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT})
13
14 set_target_properties(socket_wrapper
15                       PROPERTIES
16                           VERSION ${LIBRARY_VERSION}
17                           SOVERSION ${LIBRARY_SOVERSION})
18 if (DEFINED DEFAULT_LINK_FLAGS)
19     set_target_properties(socket_wrapper
20                           PROPERTIES
21                               LINK_FLAGS ${DEFAULT_LINK_FLAGS})
22 endif()
23
24 install(TARGETS socket_wrapper
25         RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
26         LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
27         ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
28 )
29
30 set(SOCKET_WRAPPER_LOCATION "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_SHARED_LIBRARY_PREFIX}socket_wrapper${CMAKE_SHARED_LIBRARY_SUFFIX}" PARENT_SCOPE)
31
32 add_library(socket_wrapper_noop SHARED socket_wrapper_noop.c)
33 target_include_directories(socket_wrapper_noop
34                            PRIVATE
35                                ${CMAKE_BINARY_DIR})
36 target_compile_options(socket_wrapper_noop
37                        PRIVATE
38                           ${DEFAULT_C_COMPILE_FLAGS}
39                           -D_GNU_SOURCE)
40 target_link_libraries(socket_wrapper_noop
41                       PRIVATE ${SWRAP_REQUIRED_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT})
42 set_target_properties(socket_wrapper_noop
43                       PROPERTIES
44                           VERSION ${LIBRARY_VERSION}
45                           SOVERSION ${LIBRARY_SOVERSION})
46 if (DEFINED DEFAULT_LINK_FLAGS)
47     set_target_properties(socket_wrapper_noop
48                           PROPERTIES
49                               LINK_FLAGS ${DEFAULT_LINK_FLAGS})
50 endif()
51
52 install(TARGETS socket_wrapper_noop
53         RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
54         LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
55         ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
56 )
57
58 install(
59     FILES
60         ${CMAKE_CURRENT_SOURCE_DIR}/socket_wrapper.h
61     DESTINATION
62         ${CMAKE_INSTALL_INCLUDEDIR}
63 )