mirror of
				https://github.com/ton-blockchain/ton
				synced 2025-03-09 15:40:10 +00:00 
			
		
		
		
	* Bugfixes in TVM and node * Upgrade to C++17 * Improve GitHub builds * Fix existing tests and partially integrate them into builds --------- Co-authored-by: neodiX42 <namlem@gmail.com> Co-authored-by: EmelyanenkoK <emelyanenko.kirill@gmail.com>
		
			
				
	
	
		
			83 lines
		
	
	
	
		
			2.4 KiB
		
	
	
	
		
			CMake
		
	
	
	
	
	
			
		
		
	
	
			83 lines
		
	
	
	
		
			2.4 KiB
		
	
	
	
		
			CMake
		
	
	
	
	
	
| cmake_minimum_required(VERSION 3.5 FATAL_ERROR)
 | |
| 
 | |
| file(MAKE_DIRECTORY auto/tl)
 | |
| 
 | |
| set(TL_TON_API
 | |
|   ${CMAKE_CURRENT_SOURCE_DIR}/auto/tl/ton_api.cpp
 | |
|   ${CMAKE_CURRENT_SOURCE_DIR}/auto/tl/ton_api.h
 | |
|   ${CMAKE_CURRENT_SOURCE_DIR}/auto/tl/ton_api.hpp
 | |
| 
 | |
|   ${CMAKE_CURRENT_SOURCE_DIR}/auto/tl/ton_api_json.cpp
 | |
|   ${CMAKE_CURRENT_SOURCE_DIR}/auto/tl/ton_api_json.h
 | |
| )
 | |
| set(TL_TON_API ${TL_TON_API} PARENT_SCOPE)
 | |
| 
 | |
| set(TL_LITE_API
 | |
|   ${CMAKE_CURRENT_SOURCE_DIR}/auto/tl/lite_api.cpp
 | |
|   ${CMAKE_CURRENT_SOURCE_DIR}/auto/tl/lite_api.h
 | |
|   ${CMAKE_CURRENT_SOURCE_DIR}/auto/tl/lite_api.hpp
 | |
| )
 | |
| set(TL_LITE_API ${TL_LITE_API} PARENT_SCOPE)
 | |
| 
 | |
| set(TL_TONLIB_API
 | |
|   ${CMAKE_CURRENT_SOURCE_DIR}/auto/tl/tonlib_api.cpp
 | |
|   ${CMAKE_CURRENT_SOURCE_DIR}/auto/tl/tonlib_api.h
 | |
|   ${CMAKE_CURRENT_SOURCE_DIR}/auto/tl/tonlib_api.hpp
 | |
| )
 | |
| set(TL_TONLIB_API ${TL_TONLIB_API} PARENT_SCOPE)
 | |
| 
 | |
| set(TL_TONLIB_API_JSON
 | |
|   ${CMAKE_CURRENT_SOURCE_DIR}/auto/tl/tonlib_api_json.cpp
 | |
|   ${CMAKE_CURRENT_SOURCE_DIR}/auto/tl/tonlib_api_json.h
 | |
| )
 | |
| set(TL_TONLIB_API_JSON ${TL_TONLIB_API_JSON} PARENT_SCOPE)
 | |
| 
 | |
| set(TL_GENERATE_COMMON_SOURCE
 | |
|   generate_common.cpp
 | |
| 
 | |
|   tl_json_converter.cpp
 | |
|   tl_writer_cpp.cpp
 | |
|   tl_writer_h.cpp
 | |
|   tl_writer_hpp.cpp
 | |
|   tl_writer_td.cpp
 | |
|   tl_writer_jni_cpp.cpp
 | |
|   tl_writer_jni_h.cpp
 | |
| 
 | |
|   tl_json_converter.h
 | |
|   tl_writer_cpp.h
 | |
|   tl_writer_h.h
 | |
|   tl_writer_hpp.h
 | |
|   tl_writer_td.h
 | |
|   tl_writer_jni_cpp.h
 | |
|   tl_writer_jni_h.h
 | |
| )
 | |
| 
 | |
| set(TL_GENERATE_JAVA_SOURCE
 | |
|   generate_java.cpp
 | |
|   tl_writer_java.cpp
 | |
| 
 | |
|   tl_writer_java.h
 | |
| )
 | |
| add_executable(tonlib_generate_java_api ${TL_GENERATE_JAVA_SOURCE})
 | |
| target_link_libraries(tonlib_generate_java_api PRIVATE tdtl)
 | |
| 
 | |
| if (NOT CMAKE_CROSSCOMPILING)
 | |
|   find_program(PHP_EXECUTABLE php)
 | |
| 
 | |
|   set(GENERATE_COMMON_CMD generate_common)
 | |
|   add_executable(generate_common ${TL_GENERATE_COMMON_SOURCE})
 | |
|   target_link_libraries(generate_common PRIVATE tdtl tdutils)
 | |
|   add_custom_command(
 | |
|     WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
 | |
|     COMMAND ${GENERATE_COMMON_CMD}
 | |
|     COMMENT "Generate common tl source files"
 | |
|     DEPENDS generate_common scheme/ton_api.tlo scheme/lite_api.tlo scheme/tonlib_api.tlo
 | |
|     OUTPUT ${TL_TON_API} ${TL_LITE_API} ${TL_TONLIB_API} ${TL_TONLIB_API_JSON}
 | |
|   )
 | |
|   add_custom_target(tl_generate_common DEPENDS ${TL_TON_API} ${TL_LITE_API} ${TL_TONLIB_API} ${TL_TONLIB_API_JSON})
 | |
|   if (TONLIB_ENABLE_JNI)
 | |
|     target_compile_definitions(generate_common PRIVATE TONLIB_ENABLE_JNI=1)
 | |
|   endif()
 | |
| else()
 | |
|   add_custom_target(tl_generate_common)
 | |
| endif()
 |