init
This commit is contained in:
		
							
								
								
									
										95
									
								
								Gateway/srvlib/CMakeLists.txt
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										95
									
								
								Gateway/srvlib/CMakeLists.txt
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,95 @@ | ||||
| cmake_minimum_required (VERSION 2.8.1) | ||||
|  | ||||
| #项目名 | ||||
| project (srv) | ||||
|  | ||||
| set( CMAKE_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/../../sdk) # include 文件夹 | ||||
|   | ||||
| #头文件 | ||||
| include_directories( | ||||
| 	${CMAKE_INCLUDE_DIR}/public | ||||
| 	${CMAKE_INCLUDE_DIR}/system | ||||
| 	${CMAKE_INCLUDE_DIR}/utils  | ||||
| 	 | ||||
| 	${CMAKE_INCLUDE_DIR}/lua-5.1/src  | ||||
| 	${CMAKE_INCLUDE_DIR}/tolua++/src | ||||
| 	${CMAKE_INCLUDE_DIR}/zlib 1.1.4/src  | ||||
| 	${CMAKE_INCLUDE_DIR}/mysql-5.2/include | ||||
| 	./ | ||||
| #  	./include | ||||
| # 	./3rd/gtest-1.3.0 | ||||
| # 	./3rd/lua | ||||
| # 	./3rd/zlib | ||||
| # 	./3rd/tolua++ | ||||
| ) | ||||
|  | ||||
|  message( "main ---- CMAKE_INCLUDE_DIR 1******************************-> ${CMAKE_INCLUDE_DIR}" ) | ||||
| # message( "main ---- CMAKE_CURRENT_SOURCE_DIR 1******************************-> ${CMAKE_CURRENT_SOURCE_DIR}" ) | ||||
|  | ||||
|  | ||||
| #源目录 | ||||
| FILE(GLOB_RECURSE H_LIST "*.h") | ||||
| FILE(GLOB_RECURSE HPP_LIST "*.hpp") | ||||
| FILE(GLOB_RECURSE CPP_LIST "*.cpp") | ||||
| FILE(GLOB_RECURSE CC_LIST "*.cc") | ||||
| FILE(GLOB_RECURSE C_LIST "*.c") | ||||
| set(SRV_SRCS ${CPP_LIST} ${CC_LIST} ${C_LIST}) | ||||
| set(HEAD_SRCS ${H_LIST} ${HPP_LIST}) | ||||
|  | ||||
| if(MSVC) | ||||
| 	# 头文件 | ||||
| 	include_directories( | ||||
| 	./3rd/mysql | ||||
| 	) | ||||
| 	# 编译选项 | ||||
| 	ADD_DEFINITIONS(/W3 /wd"4996" /wd"4819" /wd"4091" /wd"4099" /wd"4800" /wd"4996") | ||||
| 	SET(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} /MTd /MP4") | ||||
|   	SET(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /MT") | ||||
| else() | ||||
| 	# 头文件 | ||||
| 	include_directories( | ||||
| 	/usr/local/mysql/include | ||||
| 	/usr/local/include/curl | ||||
| 	) | ||||
|  | ||||
| 	# 编译选项 | ||||
| 	SET(CMAKE_CXX_FLAGS_DEBUG "-O0 -g3 -Wall -Wextra -Wfatal-errors -std=c++11 -fpermissive -D_DEBUG -g -ggdb") | ||||
| 	SET(CMAKE_CXX_FLAGS_RELEASE "-O0 -g -Wall -std=c++11 -fpermissive -DNDEBUG") | ||||
| 	#add_definitions("-O0 -g3 -gdwarf-2 -std=c++11 -Wall -c -fmessage-length=0 -MMD -MP") | ||||
| endif(MSVC) | ||||
|  | ||||
|  | ||||
| if(MSVC) | ||||
| # 项目内文件分组工具 | ||||
| function(group_by_dir source_dir) | ||||
| 	message(STATUS "${ARGV0}") | ||||
|     foreach(FILE ${ARGN}) | ||||
|     	message(STATUS "${FILE}") | ||||
|  | ||||
|         # 获取文件绝对路径 | ||||
|         get_filename_component(FULL_NAME "${FILE}" ABSOLUTE) | ||||
|         # 获取文件父路径 | ||||
|         get_filename_component(PARENT_DIR "${FULL_NAME}" PATH) | ||||
|         # 移除父路径中的源码根路径 | ||||
|         string(REPLACE "${ARGV0}" "" GROUP "${PARENT_DIR}") | ||||
|             | ||||
|         # 确保路径使用windows路径符号 | ||||
|         string(REPLACE "/" "\\" GROUP "${GROUP}") | ||||
|         # 分组 | ||||
|         source_group("${GROUP}" FILES "${FILE}") | ||||
|     endforeach() | ||||
| endfunction(group_by_dir) | ||||
|  | ||||
|  | ||||
| # 项目分组 | ||||
| group_by_dir(${PROJECT_SOURCE_DIR} ${SRV_SRCS}) | ||||
| group_by_dir(${PROJECT_SOURCE_DIR} ${HEAD_SRCS}) | ||||
| endif(MSVC) | ||||
|  | ||||
| link_directories ( | ||||
|  ${CMAKE_CURRENT_SOURCE_DIR}/../common/cpp/libs/3rd/bin | ||||
| ) | ||||
| #生成目标 | ||||
| set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY_DEBUG ${CMAKE_SOURCE_DIR}/../libs/gateway/) | ||||
| set(CMAKE_ARCHIVE_OUTPUT_DIRECTORY_RELEASE ${CMAKE_SOURCE_DIR}/../libs/gateway/) | ||||
| add_library(srv STATIC ${SRV_SRCS} ${HEAD_SRCS}) | ||||
		Reference in New Issue
	
	Block a user