cmake_minimum_required(VERSION 2.8.7 FATAL_ERROR)
project(AppLinux)
if (${CMAKE_SYSTEM_NAME} MATCHES "Linux")
set(APP_OS Linux)
elseif(${CMAKE_SYSTEM_NAME} MATCHES "Windows")
set(APP_OS Windows)
add_definitions(-DUNICODE -D_UNICODE)
else()
set(APP_OS NULL)
message(STATUS "other platform: ${CMAKE_SYSTEM_NAME}")
endif()
# if(WIN32)
# message(STATUS "Now is windows")
# elseif(APPLE)
# message(STATUS "Now is Apple systens.")
# elseif(UNIX)
# message(STATUS "Now is UNIX-like OS's.")
# endif()
if(CMAKE_CL_64)
set(APP_BTYPE 64)
else(CMAKE_CL_64)
set(APP_BTYPE 32)
endif(CMAKE_CL_64)
if($ENV{BUILD_NUMBER})
set(BUILD_NUMBER $ENV{BUILD_NUMBER})
else()
set(BUILD_NUMBER 0)
endif()
set(DEBUG_FLAGS "-g -O0 -Wall -DEBUG")
set(RELEASE_FLAGS "-O3")
set(CMAKE_CXX_FLAGS ${RELEASE_FLAGS})
set(CMAKE_C_FLAGS ${RELEASE_FLAGS})
set(CMAKE_CXX_FLAGS_DEBUG ${DEBUG_FLAGS})
set(CMAKE_CXX_FLAGS_DEBUG ${GCOV_FLAGS})
set(CMAKE_C_FLAGS_DEBUG ${DEBUG_FLAGS})
set(CMAKE_C_FLAGS_DEBUG ${GCOV_FLAGS})
set(CMAKE_EXE_LINKER_FLAGS_DEBUG ${GCOV_FLAGS})
set(EXECUTABLE_OUTPUT_PATH "${PROJECT_SOURCE_DIR}/Bin")
set(LIBRARY_OUTPUT_PATH "${PROJECT_SOURCE_DIR}/Lib/${APP_OS}")
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_DEBUG ${PROJECT_SOURCE_DIR}/Bin)
set(CMAKE_RUNTIME_OUTPUT_DIRECTORY_RELEASE ${PROJECT_SOURCE_DIR}/Bin)
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY_DEBUG "${PROJECT_SOURCE_DIR}/Lib/${APP_OS}")
set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY_RELEASE "${PROJECT_SOURCE_DIR}/Lib/${APP_OS}")
#库文件的后缀名
set(CMAKE_DEBUG_POSTFIX "-${APP_BTYPE}D")
set(CMAKE_RELEASE_POSTFIX "-${APP_BTYPE}")
# TODO OP check how this works on multiple configurations generators
# available configurations in multiple configurations enabled generators
set(CMAKE_CONFIGURATION_TYPES Debug Release)
message("Src path = ${PROJECT_SOURCE_DIR}")
message("Build path = ${PROJECT_BINARY_DIR}")
message("Bin path = ${EXECUTABLE_OUTPUT_PATH}")
message("Lib path = ${LIBRARY_OUTPUT_PATH}")
message("Build type = ${APP_BTYPE}")
message("OS type = ${APP_OS}")
add_subdirectory(Source/Thread)
add_subdirectory(Source/Net)
add_subdirectory(Source/Test)
# Licensing and stuff like that
set(LICENSE_FILE ${PROJECT_SOURCE_DIR}/LICENSE-MIT)
# CMAKE_INSTALL_PREFIX
install(FILES
${README_FILE}
${LICENSE_FILE}
DESTINATION .
)
没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
构建 Windows : 在项目根目录中打开 Joynet.sln, 编译即可在当前目录产生可执行文件 Joynet Linux : 在项目根本执行 make 即可生成可执行文件 Joynet 使用 examples 包含测试代码。 譬如我们要在Windows下运行PingPong测试: 先在项目根目录执行 Joynet examples\PingpongServer.lua,然后执行 Joynet examples\PingpongClient.lua 一个小问题 当前Joynet是作为一个宿主程序,由其运行业务Lua文件。 不过我们能轻松的把它作为动态库集成到已有的应用系统里。 关于协程 协程是轻量级线程,所以多线程有的问题它也有,只是影响程度不同。 在协程中使用同步API会阻塞当前协程,所以当你的应用程序只有一个协程从外部收取网络消息时,且在消息处理中使用同步API 操作Redis或者Http的话,效率会很低。 这时有两个方案可解决:1 、提供回调形式的异步API, 但这样会使开发概念混乱 ;
资源推荐
资源详情
资源评论
收起资源包目录
异步高性能网络库, 依赖少,跨平台.rar (310个子文件)
build_doc.bat 40B
AntNet.cbp 10KB
AntThread.cbp 3KB
Test.cbp 3KB
http_parser.cpp 79KB
CNetProtocal.cpp 30KB
CDict.cpp 28KB
CNetSocket.cpp 19KB
CNetServerAcceptor.cpp 17KB
CNetSynPing.cpp 16KB
CCheckCRC.cpp 15KB
App.cpp 14KB
CNetService.cpp 14KB
HashSIP.cpp 13KB
CProcessManager.cpp 13KB
CNetAddress.cpp 13KB
CThread.cpp 12KB
CFileManager.cpp 12KB
IUtility.cpp 12KB
CNetSessionWindows.cpp 11KB
CNetHttpsServer.cpp 11KB
CNetSessionLinux.cpp 10KB
CNetClientNatPuncher.cpp 10KB
StrConverter.cpp 10KB
HashMurmur.cpp 9KB
CNetServerSeniorUDP.cpp 9KB
CNetServerNatPuncher.cpp 9KB
CNetCheckIP.cpp 9KB
CStreamFile.cpp 9KB
CEncoderMD5.cpp 8KB
CTimer.cpp 7KB
CTlsContext.cpp 7KB
CNetPacket.cpp 7KB
CNetHttpClient.cpp 7KB
CNetClientUDP.cpp 7KB
CThreadPool.cpp 7KB
CNetServiceWindows.cpp 7KB
CSemaphore.cpp 6KB
CTimerWheel.cpp 6KB
CNetEchoClient.cpp 6KB
CLogger.cpp 6KB
CNetProxy.cpp 6KB
CEventPoller.cpp 6KB
CNetServerTCP.cpp 6KB
CNetClientTCP.cpp 5KB
CThreadEvent.cpp 5KB
HHashFunctions.cpp 5KB
CNetServiceLinux.cpp 5KB
CBase64Coder.cpp 4KB
CMemoryHub.cpp 4KB
HAtomicOperator.cpp 4KB
CNetPing.cpp 4KB
CBufferQueue.cpp 4KB
CMutex.cpp 4KB
CCheckSum.cpp 3KB
CCondition.cpp 3KB
CNetHttpURL.cpp 3KB
CHtmlLogReceiver.cpp 3KB
CFileWriter.cpp 3KB
CPipe.cpp 3KB
CNamedMutex.cpp 3KB
CNetEchoServer.cpp 3KB
CNetSessionPool.cpp 3KB
CNetHttpsClient.cpp 3KB
CQueueNode.cpp 2KB
CAtomicValue32.cpp 2KB
CNetSession.cpp 2KB
CProcessHandle.cpp 2KB
HNetConfig.cpp 2KB
CFileReader.cpp 2KB
CReadWriteLock.cpp 2KB
CNetUtility.cpp 1KB
CNetCert.cpp 1KB
CNetHttpHead.cpp 1KB
CNetHttpRequest.cpp 1KB
CQueue1Way.cpp 1KB
CQueue2Way.cpp 1KB
CConsoleLogReceiver.cpp 1KB
CFileLogReceiver.cpp 1KB
CSpeedLimiter.cpp 956B
CNetHttpResponse.cpp 944B
CTimeManager.cpp 930B
CSpinlock.cpp 440B
SClientContext.cpp 286B
CNetMailMessage.cpp 106B
CNetMailClient.cpp 105B
Test.depend 14KB
AntThread.depend 31B
AntNet.depend 31B
Config.dox 105KB
AntNet.vcxproj.filters 20KB
Thread.vcxproj.filters 5KB
Tester.vcxproj.filters 3KB
.gitignore 209B
ssl.h 193KB
crypto.h 169KB
compat-1.3.h 127KB
config.h 121KB
crypto_values.h 73KB
crypto_se_driver.h 65KB
共 310 条
- 1
- 2
- 3
- 4
资源评论
野生的狒狒
- 粉丝: 3396
- 资源: 2436
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功