Files
Linux_Drivers/freertos/cvitek/common/CMakeLists.txt
carbon ca03037500 freertos: release the generic version source code
freertos runs on the second core (small one) of the CPU
2023-10-19 14:31:43 +08:00

73 lines
2.3 KiB
CMake

cmake_minimum_required(VERSION 3.16.5)
project(arch C ASM)
set(CMAKE_CXX_STANDARD 11)
set(CMAKE_CXX_STANDARD_REQUIRED ON)
set(CMAKE_CXX_EXTENSIONS ON)
set(CMAKE_INSTALL_PREFIX ${TOP_DIR}/install)
set(CMAKE_INSTALL_INC_PREFIX ${TOP_DIR}/install/include)
set(SAFETY_FLAGS "-Wall -Wextra -fno-strict-aliasing")
#set(SAFETY_FLAGS "-Werror -Wall -Wextra -fno-strict-aliasing")
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} ${SAFETY_FLAGS}")
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${SAFETY_FLAGS}")
include(${TOP_DIR}/scripts/ParseConfiguration.cmake)
ParseConfiguration("${BUILD_ENV_PATH}/.config")
if (ARCH STREQUAL "")
message(*** Please set ARCH in scripts/*cmake. ***)
exit()
endif()
if (CONFIG_CHIP_ARCH_cv181x STREQUAL "y")
add_compile_definitions(__CV181X__)
endif()
if (CONFIG_CHIP_ARCH_cv180x STREQUAL "y")
add_compile_definitions(__CV180X__)
endif()
if (RUN_ARCH STREQUAL "riscv64")
file(GLOB _SOURCES "src/${RUN_ARCH}/*.c"
"src/${RUN_ARCH}/riscv_optimized/*.S"
)
file(GLOB _HEADERS "include/${RUN_ARCH}/*.h"
"include/interdrv/common/*.h"
"include/interdrv/chip/${RUN_ARCH}/*.h"
"include/interdrv/chip/${RUN_ARCH}/isp/*.h"
)
file(GLOB _HEADERS_LINUX "include/${RUN_ARCH}/linux/*.h")
include_directories(include/${RUN_ARCH})
include_directories(include/interdrv/common)
include_directories(include/interdrv/chip/${RUN_ARCH})
install(FILES ${_HEADERS_LINUX} DESTINATION include/common/linux)
else()
file(GLOB _SOURCES "src/${CHIP}/*.c"
"src/${CHIP}/media/*.c"
"src/${CHIP}/arm_optimized-routines/*.c"
"src/${CHIP}/arm_optimized-routines/${ARCH}/*.c"
"src/${CHIP}/arm_optimized-routines/${ARCH}/*.S")
file(GLOB _HEADERS "include/${CHIP}/*.h"
"include/${CHIP}/arm_optimized-routines/*.h")
file(GLOB _HEADERS_LINUX "include/${CHIP}/linux/*.h")
file(GLOB _HEADERS_MEDIA "include/${CHIP}/media/*.h")
include_directories(include/${CHIP})
include_directories(include/${CHIP}/arm_optimized-routines)
install(FILES ${_HEADERS_LINUX} DESTINATION include/common/linux)
install(FILES ${_HEADERS_MEDIA} DESTINATION include/common/media)
endif()
include_directories(${CMAKE_INSTALL_INC_PREFIX}/arch)
include_directories(${CMAKE_INSTALL_INC_PREFIX}/kernel)
add_library(common STATIC ${_SOURCES})
install(TARGETS common DESTINATION lib)
install(FILES ${_HEADERS} DESTINATION include/common)