cmake: fix INSTALL_RPATH
[awesomized/libmemcached] / src / libhashkit / CMakeLists.txt
1 if(HAVE_HSIEH_HASH)
2 set(HSIEH_CC hsieh.cc)
3 else()
4 set(HSIEH_CC nohsieh.cc)
5 endif()
6
7 add_library(libhashkit SHARED
8 aes.cc
9 algorithm.cc
10 behavior.cc
11 common.h
12 crc32.cc
13 digest.cc
14 encrypt.cc
15 fnv_32.cc
16 fnv_64.cc
17 function.cc
18 has.cc
19 hashkit.cc
20 ${HSIEH_CC}
21 jenkins.cc
22 ketama.cc
23 md5.cc
24 murmur.cc
25 murmur3.cc
26 murmur3_api.cc
27 one_at_a_time.cc
28 rijndael.cc
29 str_algorithm.cc
30 strerror.cc
31 string.cc
32 )
33 add_library(hashkit ALIAS libhashkit)
34 set_target_properties(libhashkit PROPERTIES
35 LIBRARY_OUTPUT_NAME hashkit
36 INSTALL_RPATH $ORIGIN
37 SOVERSION ${LIBHASHKIT_SO_VERSION}
38 VERSION v${LIBHASHKIT_VERSION})
39 target_compile_options(libhashkit PRIVATE -DBUILDING_HASHKIT)
40 target_include_directories(libhashkit PRIVATE
41 ${CMAKE_SOURCE_DIR}/src
42 ${CMAKE_BINARY_DIR}/src
43 ${CMAKE_BINARY_DIR})
44 target_include_directories(libhashkit PUBLIC
45 $<BUILD_INTERFACE:${CMAKE_SOURCE_DIR}/include>
46 $<BUILD_INTERFACE:${CMAKE_BINARY_DIR}/include>
47 $<INSTALL_INTERFACE:include>)
48 configure_file(hashkitcon.h.in hashkitcon.h @ONLY)
49
50 install(TARGETS libhashkit EXPORT libhashkit
51 LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR})
52 export(EXPORT libhashkit)
53 install(EXPORT libhashkit DESTINATION ${CMAKE_INSTALL_DATADIR}/${PROJECT_NAME}/cmake)
54
55 install_public_headers(
56 libhashkit
57
58 hashkit.h
59 )