cmake_minimum_required(VERSION 3.0) project(simple-dict-server C) SET(CMAKE_BUILD_TYPE "Release") add_definitions(-DLISTEN_ON_IPV6) #add_definitions(-DDEBUG) IF(CMAKE_SIZEOF_VOID_P EQUAL 8) add_definitions("-DCPUBIT64") ELSE() add_definitions("-DCPUBIT32") ENDIF() if(DEFINED ENV{DEBUG}) message("compile in debug mode") add_definitions(-DDEBUG) endif() if(DEFINED ENV{DICTKEYSZ}) message("custom dict key size: $ENV{DICTKEYSZ}") add_definitions(-DDICTKEYSZ=$ENV{DICTKEYSZ}) endif() if(DEFINED ENV{DICTDATSZ}) message("custom dict data size: $ENV{DICTDATSZ}") add_definitions(-DDICTDATSZ=$ENV{DICTDATSZ}) endif() if(DEFINED ENV{CRYPTO_SUMTABLE}) message("custom suntable: $ENV{CRYPTO_SUMTABLE}") add_definitions(-DCRYPTO_SUMTABLE=$ENV{CRYPTO_SUMTABLE}) endif() if(DEFINED ENV{THREADCNT}) message("custom suntable: $ENV{THREADCNT}") add_definitions(-DTHREADCNT=$ENV{THREADCNT}) endif() if(DEFINED ENV{MAXWAITSEC}) message("custom suntable: $ENV{MAXWAITSEC}") add_definitions(-DMAXWAITSEC=$ENV{MAXWAITSEC}) endif() if(DEFINED ENV{DICTPOOLBIT}) message("custom suntable: $ENV{DICTPOOLBIT}") add_definitions(-DDICTPOOLBIT=$ENV{DICTPOOLBIT}) endif() include_directories("/usr/local/include") link_directories("/usr/local/lib") #在编译选项中加入c99支持 add_compile_options(-std=gnu99) message(STATUS "optional:-std=gnu99") add_executable(simple-dict-server server.c) add_executable(simple-dict-client client.c) add_executable(cfgwriter cfgwriter.c) add_executable(printall printall.c) #add_executable(migrate migrate.c) #add_executable(migratenew migratenew.c) target_link_libraries(simple-dict-server scrypto libspb.a pthread) target_link_libraries(simple-dict-client scrypto libspb.a pthread) target_link_libraries(cfgwriter libspb.a) target_link_libraries(printall libspb.a) #target_link_libraries(migrate libspb.a) #target_link_libraries(migratenew libspb.a) INSTALL(TARGETS simple-dict-server RUNTIME DESTINATION bin) #INSTALL(TARGETS simple-dict-client RUNTIME DESTINATION bin) #INSTALL(TARGETS cfgwriter RUNTIME DESTINATION bin)