src/CMakeLists.txt

Wed, 08 Jun 2022 21:33:31 +0200

author
Mike Becker <universe@uap-core.de>
date
Wed, 08 Jun 2022 21:33:31 +0200
changeset 563
69a83fad8a35
parent 558
9b767b07602c
child 571
f83583a0bbac
permissions
-rw-r--r--

improve hash key handling

universe@375 1 set(sources
universe@483 2 utils.c
universe@391 3 allocator.c
universe@503 4 list.c
universe@398 5 linked_list.c
olaf@424 6 tree.c
universe@483 7 buffer.c
universe@563 8 hash_key.c
universe@549 9 hash_map.c
universe@375 10 )
universe@377 11 set(headers
universe@549 12 cx/common.h
universe@483 13 cx/utils.h
universe@391 14 cx/allocator.h
universe@494 15 cx/iterator.h
universe@390 16 cx/list.h
universe@398 17 cx/linked_list.h
universe@470 18 cx/tree.h
universe@483 19 cx/buffer.h
universe@549 20 cx/map.h
universe@563 21 cx/hash_key.h
universe@549 22 cx/hash_map.h
universe@549 23 )
universe@375 24
universe@375 25 add_library(ucx SHARED ${sources})
universe@375 26 add_library(ucx_static STATIC ${sources})
universe@375 27
universe@375 28 target_include_directories(ucx PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
universe@375 29 target_include_directories(ucx_static PUBLIC ${CMAKE_CURRENT_SOURCE_DIR})
universe@375 30
universe@390 31 set_target_properties(ucx PROPERTIES SOVERSION 4 VERSION 4.0.0)
universe@375 32 set_target_properties(ucx_static PROPERTIES VERSION ${CMAKE_PROJECT_VERSION})
universe@377 33
universe@377 34 # it is sufficient to specify the headers for one of the targets
universe@377 35 set_target_properties(ucx PROPERTIES PUBLIC_HEADER "${headers}")
universe@377 36
universe@377 37 include(GNUInstallDirs)
universe@377 38 install(TARGETS ucx ucx_static
universe@377 39 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
universe@377 40 ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
universe@377 41 PUBLIC_HEADER DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/ucx)

mercurial