Migrate libasyncio from boost.signal to signals2 (#8756)
[libasyncio] / asyncio / CMakeLists.txt
CommitLineData
6cb16c21
KK
1# Sources
2set(libasyncio_SOURCES
3 async_callout.cpp
4 async_io.cpp
5 async_pipe.cpp
6 async_process.cpp
7 async_socket.cpp
8 async_timer.cpp
9)
10set(libasyncio_HEADERS
11 async_callout.hpp
12 async_io.hpp
13 async_pipe.hpp
14 async_process.hpp
15 async_socket.hpp
16 async_timer.hpp
623f402c 17 asyncio_config.hpp
6cb16c21
KK
18)
19include_directories(BEFORE
20 ${CMAKE_CURRENT_SOURCE_DIR}
21 ${CMAKE_SOURCE_DIR}/utils
22 ${CMAKE_SOURCE_DIR}/utils/i2ncommon
23 )
24
25# Libraries
26add_library(libasyncio SHARED ${libasyncio_SOURCES} ${libasyncio_HEADERS})
4ad8653b 27set_target_properties(libasyncio PROPERTIES VERSION ${VERSION} SOVERSION 1)
6cb16c21 28set_target_properties(libasyncio PROPERTIES OUTPUT_NAME asyncio)
623f402c
KK
29set_target_properties(libasyncio PROPERTIES CLEAN_DIRECT_OUTPUT 1)
30
31add_library(libasyncio-static STATIC ${libasyncio_SOURCES} ${libasyncio_HEADERS})
32set_target_properties(libasyncio-static PROPERTIES OUTPUT_NAME asyncio)
33set_target_properties(libasyncio-static PROPERTIES CLEAN_DIRECT_OUTPUT 1)
6cb16c21
KK
34
35# Dependencies
983acc1f
VP
36target_link_libraries(libasyncio ${LIBI2NCOMMON_LIBRARIES})
37target_link_libraries(libasyncio-static ${LIBI2NCOMMON_LIBRARIES})
6cb16c21
KK
38
39# Headerlist
40foreach(header_file_in ${libasyncio_HEADERS})
41 set(header_files_out "${header_files_out}${includedir}/${header_file_in}\n")
42endforeach()
43file(WRITE ${CMAKE_BINARY_DIR}/headerlist.asyncio ${header_files_out})
44
45# Installation
46install(TARGETS libasyncio LIBRARY DESTINATION lib)
623f402c 47install(TARGETS libasyncio-static ARCHIVE DESTINATION lib)
6cb16c21 48install(FILES ${libasyncio_HEADERS} DESTINATION include)