mirror of
				https://gitee.com/jiuyilian/embedded-framework.git
				synced 2025-10-24 18:20:15 -04:00 
			
		
		
		
	
		
			
				
	
	
		
			69 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			CMake
		
	
	
	
	
	
			
		
		
	
	
			69 lines
		
	
	
		
			2.2 KiB
		
	
	
	
		
			CMake
		
	
	
	
	
	
| include(${CMAKE_SOURCE_DIR_IPCSDK}/build/global_config.cmake)
 | |
| set(EXECUTABLE_OUTPUT_PATH ${EXEC_OUTPUT_PATH})
 | |
| set(LIBRARY_OUTPUT_PATH ${LIBS_OUTPUT_PATH})
 | |
| 
 | |
| 
 | |
| set(MAIN_INCLUDE_PATH     "${APPLICATION_SOURCE_PATH}/main/src" CACHE STRING INTERNAL FORCE)
 | |
| set(MAIN_INCLUDE_PATH     "${MAIN_INCLUDE_PATH};${UTILS_SOURCE_PATH}/StatusCode/include" CACHE STRING INTERNAL FORCE)
 | |
| set(MAIN_INCLUDE_PATH     "${MAIN_INCLUDE_PATH};${UTILS_SOURCE_PATH}/Log/include" CACHE STRING INTERNAL FORCE)
 | |
| set(MAIN_INCLUDE_PATH     "${MAIN_INCLUDE_PATH};${HAL_SOURCE_PATH}/include" CACHE STRING INTERNAL FORCE)
 | |
| include_directories(${MAIN_INCLUDE_PATH})
 | |
| 
 | |
| link_directories(
 | |
|     ${LIBS_OUTPUT_PATH}
 | |
|     ${HAL_SOURCE_PATH}/include
 | |
| )
 | |
| 
 | |
| set(CMAKE_AUTOMOC ON)
 | |
| set(CMAKE_INCLUDE_CURRENT_DIR ON)
 | |
| 
 | |
| aux_source_directory(./ SRC_FILES)
 | |
| # aux_source_directory(./src SRC_FILES)
 | |
| 
 | |
| # Mark src files for test.
 | |
| file(GLOB_RECURSE MAIN_SRC_FILE_THIS src/*.cpp src/*.c)
 | |
| set(MAIN_SRC_FILE     "${MAIN_SRC_FILE_THIS}" CACHE STRING INTERNAL FORCE)
 | |
| 
 | |
| 
 | |
| set(TARGET_LIB MainLib)
 | |
| add_library(${TARGET_LIB} STATIC ${MAIN_SRC_FILE_THIS})
 | |
| set(TARGET_NAME ipc_x86)
 | |
| add_executable(${TARGET_NAME} ${SRC_FILES})
 | |
| 
 | |
| set(LINK_LIB StatusCode Log Hal pthread dl)
 | |
| set(MAIN_LINK_LIB     "${LINK_LIB}" CACHE STRING INTERNAL FORCE)
 | |
| target_link_libraries(${TARGET_LIB} ${MAIN_LINK_LIB})
 | |
| target_link_libraries(${TARGET_NAME} ${TARGET_LIB})
 | |
| if(${TEST_COVERAGE} MATCHES "true")
 | |
|     target_link_libraries(${TARGET_NAME} gcov)
 | |
| endif()
 | |
| 
 | |
| if ("${CLANG_TIDY_SUPPORT}" MATCHES "true")
 | |
| add_custom_target(
 | |
|     ipc_x86_code_check
 | |
|     COMMAND ${CLANG_TIDY_EXE}
 | |
|     -checks='${CLANG_TIDY_CHECKS}'
 | |
|     --header-filter=.*
 | |
|     --system-headers=false
 | |
|     ${MAIN_SRC_FILE_THIS}
 | |
|     ${CLANG_TIDY_CONFIG}
 | |
|     -p ${PLATFORM_PATH}/cmake-shell
 | |
|     WORKING_DIRECTORY ${APPLICATION_SOURCE_PATH}/main
 | |
| )
 | |
| file(GLOB_RECURSE HEADER_FILES *.h)
 | |
| add_custom_target(
 | |
|     ipc_x86_code_format
 | |
|     COMMAND ${CLANG_FORMAT_EXE}
 | |
|     -style=file
 | |
|     -i ${SRC_FILES} ${HEADER_FILES} ${MAIN_SRC_FILE_THIS}
 | |
|     WORKING_DIRECTORY ${APPLICATION_SOURCE_PATH}/main
 | |
| )
 | |
| add_custom_command(
 | |
|     TARGET ${TARGET_NAME}
 | |
|     PRE_BUILD
 | |
|     COMMAND make ipc_x86_code_check
 | |
|     COMMAND make ipc_x86_code_format
 | |
|     WORKING_DIRECTORY ${PLATFORM_PATH}/cmake-shell/
 | |
| )
 | |
| endif()
 | 
