build on macos.
							parent
							
								
									b900af6787
								
							
						
					
					
						commit
						b4014b5af6
					
				|  | @ -9,6 +9,9 @@ | |||
| *.aps | ||||
| **/ipch | ||||
| 
 | ||||
| *.tpr | ||||
| *.tpd | ||||
| 
 | ||||
| # for CMake | ||||
| CMakeFiles | ||||
| cmake_install.cmake | ||||
|  |  | |||
|  | @ -14,17 +14,16 @@ if ("${CMAKE_SYSTEM_NAME}" STREQUAL "Darwin") | |||
|     MESSAGE(STATUS "build on macOS...") | ||||
|     set(OS_MACOS 1) | ||||
|     set(OS_POSIX 1) | ||||
|     set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") | ||||
|     set(TP_EXTERNAL_RELEASE_DIR "${PROJECT_SOURCE_DIR}/external/macos/release") | ||||
| elseif ("${CMAKE_SYSTEM_NAME}" STREQUAL "Linux") | ||||
|     set(OS_LINUX 1) | ||||
|     set(OS_POSIX 1) | ||||
|     MESSAGE(STATUS "build on Linux...") | ||||
|     # add_subdirectory(server/tp_web/src) | ||||
|     # set(CMAKE_CXX_STANDARD 11) | ||||
|     set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11") | ||||
|     set(TP_EXTERNAL_RELEASE_DIR "${PROJECT_SOURCE_DIR}/external/linux/release") | ||||
| elseif ("${CMAKE_SYSTEM_NAME}" STREQUAL "Windows") | ||||
|     #    MESSAGE(FATAL_ERROR "unsupported platform: Windows") | ||||
|     MESSAGE(FATAL_ERROR "unsupported platform: Windows") | ||||
| else () | ||||
|     MESSAGE(FATAL_ERROR "unsupported platform: ${CMAKE_SYSTEM_NAME}") | ||||
| endif () | ||||
|  |  | |||
|  | @ -540,7 +540,7 @@ class BuilderLinux(BuilderBase): | |||
|                        ' -DWITH_EXAMPLES=OFF' \ | ||||
|                        ' -DWITH_BENCHMARKS=OFF' \ | ||||
|                        ' -DWITH_NACL=OFF' \ | ||||
|                        ' ..'.format(path_release=self.PATH_RELEASE) | ||||
|                        ''.format(path_release=self.PATH_RELEASE) | ||||
| 
 | ||||
|         # ' -DWITH_STATIC_LIB=ON' | ||||
| 
 | ||||
|  | @ -743,8 +743,8 @@ class BuilderMacOS(BuilderBase): | |||
|         os.chdir(old_p) | ||||
| 
 | ||||
|     def _build_libssh(self, file_name): | ||||
|         cc.n('skip build libssh on macOS.') | ||||
|         return | ||||
|         # cc.n('skip build libssh on macOS.') | ||||
|         # return | ||||
|          | ||||
|         if not self._download_libssh(file_name): | ||||
|             return | ||||
|  | @ -761,13 +761,16 @@ class BuilderMacOS(BuilderBase): | |||
|         build_path = os.path.join(self.LIBSSH_PATH_SRC, 'build') | ||||
| 
 | ||||
|         cmake_define = ' -DCMAKE_INSTALL_PREFIX={path_release}' \ | ||||
|                        ' -DOPENSSL_INCLUDE_DIR={path_release}/include' \ | ||||
|                        ' -DOPENSSL_LIBRARIES={path_release}/lib' \ | ||||
|                        ' -DOPENSSL_INCLUDE_DIR=/usr/local/opt/openssl/include' \ | ||||
|                        ' -DOPENSSL_LIBRARIES=/usr/local/opt/openssl/lib' \ | ||||
|                        ' -DWITH_GCRYPT=OFF' \ | ||||
|                        ' -DWITH_GEX=OFF' \ | ||||
|                        ' -DWITH_SFTP=ON' \ | ||||
|                        ' -DWITH_SERVER=ON' \ | ||||
|                        ' -DWITH_GSSAPI=OFF' \ | ||||
|                        ' -DWITH_ZLIB=OFF' \ | ||||
|                        ' -DWITH_ZLIB=ON' \ | ||||
|                        ' -DWITH_PCAP=OFF' \ | ||||
|                        ' -DBUILD_SHARED_LIBS=OFF' \ | ||||
|                        ' -DUNIT_TESTING=OFF' \ | ||||
|                        ' -DWITH_EXAMPLES=OFF' \ | ||||
|                        ' -DWITH_BENCHMARKS=OFF' \ | ||||
|  |  | |||
|  | @ -3,19 +3,17 @@ cmake_minimum_required(VERSION 3.5) | |||
| MESSAGE(STATUS "=======================================================") | ||||
| MESSAGE(STATUS "               tp_core") | ||||
| MESSAGE(STATUS "=======================================================") | ||||
| #MESSAGE(STATUS "operation system is ${CMAKE_SYSTEM}") | ||||
| #MESSAGE(STATUS "current source directory is ${CMAKE_CURRENT_SOURCE_DIR}") | ||||
| include(../../../CMakeCfg.txt) | ||||
| 
 | ||||
| ADD_DEFINITIONS( | ||||
|         -DMG_ENABLE_THREADS | ||||
|         -DMG_DISABLE_HTTP_DIGEST_AUTH | ||||
|         -DMG_DISABLE_MQTT | ||||
|         -DMG_DISABLE_SSI | ||||
|         # -DMG_DISABLE_FILESYSTEM | ||||
|         -DHAVE_CONFIG_H | ||||
|         # -DCS_COMMON_MD5_H_ | ||||
|         -DCS_DISABLE_MD5 | ||||
|     -DMG_ENABLE_THREADS | ||||
|     -DMG_DISABLE_HTTP_DIGEST_AUTH | ||||
|     -DMG_DISABLE_MQTT | ||||
|     -DMG_DISABLE_SSI | ||||
|     # -DMG_DISABLE_FILESYSTEM | ||||
|     -DHAVE_CONFIG_H | ||||
|     # -DCS_COMMON_MD5_H_ | ||||
|     -DCS_DISABLE_MD5 | ||||
| ) | ||||
| 
 | ||||
| aux_source_directory(. DIR_SRCS) | ||||
|  | @ -30,16 +28,26 @@ include_directories( | |||
|         ../../../external/jsoncpp/include | ||||
| ) | ||||
| 
 | ||||
| include_directories( | ||||
| if (OS_LINUX) | ||||
|     set(CMAKE_EXE_LINKER_FLAGS "-export-dynamic") | ||||
|     include_directories( | ||||
|         ${TP_EXTERNAL_RELEASE_DIR}/include | ||||
| ) | ||||
| link_directories(${TP_EXTERNAL_RELEASE_DIR}/lib) | ||||
| 
 | ||||
|     ) | ||||
|     link_directories(${TP_EXTERNAL_RELEASE_DIR}/lib) | ||||
| elseif (OS_MACOS) | ||||
|     include_directories( | ||||
|         /usr/local/opt/openssl/include | ||||
|         ${TP_EXTERNAL_RELEASE_DIR}/include | ||||
|     ) | ||||
|     link_directories( | ||||
|         /usr/local/opt/openssl/lib | ||||
|         ${TP_EXTERNAL_RELEASE_DIR}/lib | ||||
|     ) | ||||
| endif () | ||||
| 
 | ||||
| add_executable(tp_core ${DIR_SRCS}) | ||||
| 
 | ||||
| if (OS_LINUX) | ||||
|     set(CMAKE_EXE_LINKER_FLAGS "-export-dynamic") | ||||
|     target_link_libraries(tp_core ssl crypto mbedx509 mbedtls mbedcrypto dl pthread rt util) | ||||
| elseif (OS_MACOS) | ||||
|     target_link_libraries(tp_core ssl crypto mbedx509 mbedtls mbedcrypto dl pthread util) | ||||
|  |  | |||
|  | @ -3,8 +3,6 @@ cmake_minimum_required(VERSION 3.5) | |||
| MESSAGE(STATUS "=======================================================") | ||||
| MESSAGE(STATUS "               libtpssh") | ||||
| MESSAGE(STATUS "=======================================================") | ||||
| #MESSAGE(STATUS "operation system is ${CMAKE_SYSTEM}") | ||||
| #MESSAGE(STATUS "current source directory is ${CMAKE_CURRENT_SOURCE_DIR}") | ||||
| include(../../../../CMakeCfg.txt) | ||||
| 
 | ||||
| 
 | ||||
|  | @ -27,13 +25,25 @@ include_directories( | |||
| 		../../../../external/jsoncpp/include | ||||
| ) | ||||
| 
 | ||||
| include_directories( | ||||
| 	${TP_EXTERNAL_RELEASE_DIR}/include | ||||
| 	) | ||||
| link_directories( | ||||
| 	${TP_EXTERNAL_RELEASE_DIR}/lib | ||||
| 	${TP_EXTERNAL_RELEASE_DIR}/lib64 | ||||
| 	) | ||||
| if (OS_LINUX) | ||||
|     include_directories( | ||||
|         ${TP_EXTERNAL_RELEASE_DIR}/include | ||||
|     ) | ||||
|     link_directories( | ||||
|         ${TP_EXTERNAL_RELEASE_DIR}/lib | ||||
|         ${TP_EXTERNAL_RELEASE_DIR}/lib64 | ||||
|     ) | ||||
| elseif (OS_MACOS) | ||||
|     include_directories( | ||||
|         /usr/local/opt/openssl/include | ||||
|         ${TP_EXTERNAL_RELEASE_DIR}/include | ||||
|     ) | ||||
|     link_directories( | ||||
|         /usr/local/opt/openssl/lib | ||||
|         ${TP_EXTERNAL_RELEASE_DIR}/lib | ||||
|     ) | ||||
| endif () | ||||
| 
 | ||||
| 
 | ||||
| 
 | ||||
| add_library(tpssh SHARED ${DIR_SSH_SRCS}) | ||||
|  |  | |||
|  | @ -14,19 +14,30 @@ include_directories( | |||
|         ../../../common/libex/include | ||||
| ) | ||||
| 
 | ||||
| include_directories( | ||||
| if (OS_LINUX) | ||||
|     set(CMAKE_EXE_LINKER_FLAGS "-export-dynamic") | ||||
|     include_directories( | ||||
|         ${TP_EXTERNAL_RELEASE_DIR}/include | ||||
| ) | ||||
| link_directories( | ||||
|     ${TP_EXTERNAL_RELEASE_DIR}/lib | ||||
|     ${TP_EXTERNAL_RELEASE_DIR}/lib64 | ||||
|     ) | ||||
|     link_directories( | ||||
|         ${TP_EXTERNAL_RELEASE_DIR}/lib | ||||
|         ${TP_EXTERNAL_RELEASE_DIR}/lib64 | ||||
|     ) | ||||
| elseif (OS_MACOS) | ||||
|     include_directories( | ||||
|         /usr/local/opt/openssl/include | ||||
|         ${TP_EXTERNAL_RELEASE_DIR}/include | ||||
|     ) | ||||
|     link_directories( | ||||
|         /usr/local/opt/openssl/lib | ||||
|         ${TP_EXTERNAL_RELEASE_DIR}/lib | ||||
|     ) | ||||
| endif () | ||||
| 
 | ||||
| 
 | ||||
| add_executable(testssh ${DIR_SRCS}) | ||||
| 
 | ||||
| if (OS_LINUX) | ||||
|     set(CMAKE_EXE_LINKER_FLAGS "-export-dynamic") | ||||
|     target_link_libraries(testssh ssh ssl z crypto dl pthread rt util) | ||||
| elseif (OS_MACOS) | ||||
|     target_link_libraries(testssh ssh ssl z crypto dl pthread util) | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	 Apex Liu
						Apex Liu