mirror of
https://gitee.com/jiuyilian/embedded-framework.git
synced 2025-01-06 10:16:51 -05:00
88 lines
3.8 KiB
CMake
Executable File
88 lines
3.8 KiB
CMake
Executable File
set(DEFINE_LINUX "linux")
|
|
# set(CMAKE_SOURCE_DIR_IPCSDK "${CMAKE_SOURCE_DIR}")
|
|
# set(CMAKE_SOURCE_DIR_IPCSDK "${CMAKE_SOURCE_DIR_IPCSDK}${SUBMODULE_PATH_OF_IPC_SDK}")
|
|
set(EXEC_OUTPUT_PATH "${PLATFORM_PATH}/${PROJECT_OUTPUT_FOLDER}/bin")
|
|
set(LIBS_OUTPUT_PATH "${PLATFORM_PATH}/${PROJECT_OUTPUT_FOLDER}/libs")
|
|
set(TEST_TOOLS_OUTPUT_PATH "${PLATFORM_PATH}/${PROJECT_OUTPUT_FOLDER}/libs/test_tools")
|
|
set(EXTERNAL_LIBS_OUTPUT_PATH "${PLATFORM_PATH}/${PROJECT_OUTPUT_FOLDER}/libs/external")
|
|
set(TEST_OUTPUT_PATH "${PLATFORM_PATH}/${PROJECT_OUTPUT_FOLDER}/test")
|
|
|
|
set(PROJECT_ROOT_PATH "${PLATFORM_PATH}")
|
|
set(APPLICATION_SOURCE_PATH "${CMAKE_SOURCE_DIR_IPCSDK}/application")
|
|
set(MIDDLEWARE_SOURCE_PATH "${CMAKE_SOURCE_DIR_IPCSDK}/middleware")
|
|
set(UTILS_SOURCE_PATH "${CMAKE_SOURCE_DIR_IPCSDK}/utils")
|
|
set(HAL_SOURCE_PATH "${CMAKE_SOURCE_DIR_IPCSDK}/hal")
|
|
set(TEST_SOURCE_PATH "${CMAKE_SOURCE_DIR_IPCSDK}/test")
|
|
set(EXTERNAL_SOURCE_PATH "${CMAKE_SOURCE_DIR_IPCSDK}/external")
|
|
|
|
# -------------------------- clang-tidy tools -------------------------- #
|
|
set(CLANG_TIDY_CHECKS "-*,\
|
|
llvm-else-after-return,\
|
|
-llvm-include-order,\
|
|
llvm-namespace-comment,\
|
|
llvm-prefer-isa-or-dyn-cast-in-conditionals,\
|
|
llvm-prefer-register-over-unsigned,\
|
|
llvm-qualified-auto,\
|
|
llvm-twine-local,\
|
|
misc-confusable-identifiers,\
|
|
misc-definitions-in-headers,\
|
|
misc-header-include-cycle,\
|
|
misc-include-cleaner,\
|
|
misc-misleading-bidirectional,\
|
|
misc-misleading-identifier,\
|
|
misc-misplaced-const,\
|
|
misc-new-delete-overloads,\
|
|
misc-non-copyable-objects,\
|
|
misc-redundant-expression,\
|
|
misc-static-assert,\
|
|
misc-throw-by-value-catch-by-reference,\
|
|
misc-unconventional-assign-operator,\
|
|
misc-uniqueptr-reset-release,\
|
|
misc-unused-alias-decls,\
|
|
misc-unused-using-decls,\
|
|
readability-identifier-naming")
|
|
|
|
# set(CLANG_TIDY_CHECKS "${CLANG_TIDY_CHECKS},llvm-header-guard")
|
|
set(CLANG_TIDY_CHECKS "${CLANG_TIDY_CHECKS},-clang-diagnostic-error")
|
|
|
|
set(CLANG_TIDY_CONFIG "-header-filter=\'.*\'")
|
|
set(CLANG_TIDY_CONFIG "${CLANG_TIDY_CONFIG} -p ${CMAKE_SOURCE_DIR_IPCSDK}/cmake-shell")
|
|
|
|
# set(CLANG_FORMAT_FILE "${CMAKE_SOURCE_DIR_IPCSDK}/tools/clang-format/.clang-format")
|
|
set(CLANG_FORMAT_FILE "LLVM ${CMAKE_SOURCE_DIR_IPCSDK}/tools/clang-format/.clang-format")
|
|
# -------------------------- clang-tidy tools end -------------------------- #
|
|
# ------------ build clang-tools ------------ #
|
|
if(${LINUX_TEST} MATCHES "true")
|
|
set(CLANG_TIDY_SUPPORT "true")
|
|
set(CLANG_FORMAT_SUPPORT "true")
|
|
set(COMPILE_IMPROVE_SUPPORT "false") # 开启后每次编译可能会很慢
|
|
set(LLVM_PATH "$ENV{HOME}/llvm-project")
|
|
endif()
|
|
# ------------ build clang-tools end ------------ #
|
|
|
|
# -------------------------- log setting -------------------------- #
|
|
function(define_file_name target)
|
|
get_target_property(source_files "${target}" SOURCES)
|
|
foreach(source_file ${source_files})
|
|
get_property(defs SOURCE "${source_file}"
|
|
PROPERTY COMPILE_DEFINITIONS)
|
|
get_filename_component(file_name "${source_file}" NAME)
|
|
list(APPEND defs "__F_FILE__=\"${file_name}\"")
|
|
set_property(
|
|
SOURCE "${source_file}"
|
|
PROPERTY COMPILE_DEFINITIONS ${defs})
|
|
endforeach()
|
|
endfunction()
|
|
function(log_disable target)
|
|
get_target_property(source_files "${target}" SOURCES)
|
|
foreach(source_file ${source_files})
|
|
get_property(defs SOURCE "${source_file}"
|
|
PROPERTY COMPILE_DEFINITIONS)
|
|
get_filename_component(file_name "${source_file}" NAME)
|
|
list(APPEND defs "LOG_DISABLE")
|
|
set_property(
|
|
SOURCE "${source_file}"
|
|
PROPERTY COMPILE_DEFINITIONS ${defs})
|
|
endforeach()
|
|
endfunction()
|
|
# -------------------------- log setting end -------------------------- # |