1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119
| ➜ vi CMakeLists.txt cmake_minimum_required(VERSION 3.0 FATAL_ERROR) project(redis VERSION 4.0) set(CMAKE_BUILD_TYPE "Debug")
get_filename_component(REDIS_ROOT "${CMAKE_CURRENT_SOURCE_DIR}" ABSOLUTE)
add_subdirectory(deps) add_subdirectory(src/modules)
set(SRC_SERVER_TMP src/adlist.c src/ae.c src/anet.c src/dict.c src/sds.c src/zmalloc.c src/lzf_c.c src/lzf_d.c src/pqsort.c src/zipmap.c src/sha1.c src/ziplist.c src/release.c src/networking.c src/util.c src/object.c src/db.c src/replication.c src/rdb.c src/t_string.c src/t_list.c src/t_set.c src/t_zset.c src/evict.c src/defrag.c src/module.c src/quicklist.c src/expire.c src/childinfo.c src/redis-check-aof.c src/redis-check-rdb.c src/lazyfree.c src/geohash.c src/rax.c src/geohash_helper.c src/siphash.c src/geo.c src/t_hash.c src/config.c src/aof.c src/pubsub.c src/multi.c src/debug.c src/sort.c src/intset.c src/syncio.c src/cluster.c src/crc16.c src/endianconv.c src/slowlog.c src/scripting.c src/bio.c src/rio.c src/rand.c src/memtest.c src/crc64.c src/bitops.c src/sentinel.c src/notify.c src/setproctitle.c src/blocked.c src/hyperloglog.c src/latency.c src/sparkline.c ) set(SRC_SERVER src/server.c ${SRC_SERVER_TMP})
set(SRC_CLI src/anet.c src/sds.c src/adlist.c src/redis-cli.c src/zmalloc.c src/release.c src/anet.c src/ae.c src/crc64.c )
set(EXECUTABLE_OUTPUT_PATH src) link_directories(deps/linenoise/ deps/lua/src deps/hiredis)
add_executable(redis-server ${SRC_SERVER}) target_include_directories(redis-server PRIVATE ${REDIS_ROOT}/deps/linenoise PRIVATE ${REDIS_ROOT}/deps/hiredis PRIVATE ${REDIS_ROOT}/deps/lua/src) target_link_libraries(redis-server PRIVATE pthread PRIVATE m PRIVATE lua PRIVATE linenoise PRIVATE hiredis)
add_executable(redis-cli ${SRC_CLI}) target_include_directories(redis-cli PRIVATE ${REDIS_ROOT}/deps/linenoise PRIVATE ${REDIS_ROOT}/deps/hiredis PRIVATE ${REDIS_ROOT}/deps/lua/src)
target_link_libraries(redis-cli PRIVATE pthread PRIVATE m PRIVATE linenoise PRIVATE hiredis)
|