1 project(libsocket_wrapper C)
3 add_library(socket_wrapper SHARED socket_wrapper.c)
4 target_include_directories(socket_wrapper
7 target_compile_options(socket_wrapper
9 ${DEFAULT_C_COMPILE_FLAGS}
11 if (CMAKE_SIZEOF_VOID_P EQUAL 4)
12 target_compile_options(socket_wrapper
14 -D_LARGEFILE64_SOURCE)
17 target_link_libraries(socket_wrapper
18 PRIVATE ${SWRAP_REQUIRED_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT})
20 set_target_properties(socket_wrapper
22 VERSION ${LIBRARY_VERSION}
23 SOVERSION ${LIBRARY_SOVERSION})
24 if (DEFINED DEFAULT_LINK_FLAGS)
25 set_target_properties(socket_wrapper
27 LINK_FLAGS ${DEFAULT_LINK_FLAGS})
30 install(TARGETS socket_wrapper
31 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
32 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
33 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
36 set(SOCKET_WRAPPER_LOCATION "${CMAKE_CURRENT_BINARY_DIR}/${CMAKE_SHARED_LIBRARY_PREFIX}socket_wrapper${CMAKE_SHARED_LIBRARY_SUFFIX}" PARENT_SCOPE)
38 add_library(socket_wrapper_noop SHARED socket_wrapper_noop.c)
39 target_include_directories(socket_wrapper_noop
41 ${socket_wrapper_BINARY_DIR}
43 $<BUILD_INTERFACE:${CMAKE_CURRENT_SOURCE_DIR}>
44 $<INSTALL_INTERFACE:include>)
45 target_compile_options(socket_wrapper_noop
47 ${DEFAULT_C_COMPILE_FLAGS}
49 target_link_libraries(socket_wrapper_noop
50 PRIVATE ${SWRAP_REQUIRED_LIBRARIES} ${CMAKE_THREAD_LIBS_INIT})
51 set_target_properties(socket_wrapper_noop
53 VERSION ${NOOP_LIBRARY_VERSION}
54 SOVERSION ${NOOP_LIBRARY_SOVERSION})
55 if (DEFINED DEFAULT_LINK_FLAGS)
56 set_target_properties(socket_wrapper_noop
58 LINK_FLAGS ${DEFAULT_LINK_FLAGS})
61 install(TARGETS socket_wrapper_noop
62 EXPORT socket_wrapper_noop-config
63 RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
64 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
65 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
68 install(EXPORT socket_wrapper_noop-config
69 DESTINATION ${CMAKE_INSTALL_LIBDIR}/cmake/socket_wrapper)
73 ${CMAKE_CURRENT_SOURCE_DIR}/socket_wrapper.h
75 ${CMAKE_INSTALL_INCLUDEDIR}