当前位置:网站首页>CMake使用记录
CMake使用记录
2022-08-09 22:29:00 【洪大宇】
cmake_minimum_required(VERSION 3.12.2)
project(5G_NR_TDD_SOFT)
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
set(TARGETS 5g_nr_tdd.zu6cg.driver.d)
set(LDS "${PROJECT_SOURCE_DIR}/scripts/zynqmp_aarch64.lds")
set(ADRV9025_ROOT_PATH "adrv9025")
set(ADRV9025_COMMON_LIB_DIR "${ADRV9025_ROOT_PATH}/common")
set(ADRV9025_DEVICE_LIB "${ADRV9025_ROOT_PATH}/devices/adrv9025")
set(ADRV9025_PLATFORMS_LIB "${ADRV9025_ROOT_PATH}/platforms")
set(ADRV9025_PLATFORMS_ADS8_LIB "${ADRV9025_ROOT_PATH}/platforms/ads8")
set(ADRV9025_PLATFORMS_ADS9_LIB "${ADRV9025_ROOT_PATH}/platforms/ads9")
set(ADRV9025_CONFIG
INIT_H3C_RRU
AGC_ENABLE
ADRV9025_DL_ENABLE)
set(PLATFORM_CONFIG_BASE_CONFIG
DRIVER
TASK)
set(PLATFORM_CONFIG_HW_DRIVER_BASE_MODULE_CONIFG
FPGA
CLK
TXRX)
set(PLATFORM_CONFIG_HW_DRIVER_MODULE_CONFIG
ZYNQMP
ADRV9025
SI5386)
set(PLATFORM_CONFIG_TASK_BASE_CONFIG
SEM)
set(PLATFORM_CONFIG_TASK_MODULE_CONFIG
BASH
VIRTUAL_DATA_LAYER)
FILE(GLOB ADI_ERROR_SRC "${ADRV9025_COMMON_LIB_DIR}/adi_error/*.c")
FILE(GLOB ADI_HAL_SRC "${ADRV9025_COMMON_LIB_DIR}/adi_hal/*.c")
FILE(GLOB ADI_COMMON_SRC "${ADRV9025_COMMON_LIB_DIR}/adi_logging/*.c")
FILE(GLOB ADI_ADRV9025_PUBLIC_DEVICE_SRC "${ADRV9025_DEVICE_LIB}/public/src/*.c" )
FILE(GLOB ADI_ADRV9025_PRIVATE_DEVICE_SRC "${ADRV9025_DEVICE_LIB}/private/src/*.c")
FILE(GLOB ADI_PLAT_ADS8_SRC "${ADRV9025_PLATFORMS_ADS8_LIB}/*.c")
FILE(GLOB ADI_PLAT_ADS9_SRC "${ADRV9025_PLATFORMS_ADS9_LIB}/*.c")
FILE(GLOB ADI_PLAT_UTILS_SRC "${ADRV9025_PLATFORMS_LIB}/platform_utils/*.c")
FILE(GLOB ADI_PLAT_SRC "${ADRV9025_PLATFORMS_LIB}/*.c")
add_library(adi_adrv9025 STATIC
${ADI_ADRV9025_PUBLIC_DEVICE_SRC}
${ADI_ADRV9025_PRIVATE_DEVICE_SRC})
add_library(adi_plat STATIC ${ADI_PLAT_SRC} ${ADI_PLAT_UTILS_SRC})
add_library(adi_plat_ads8 STATIC ${ADI_PLAT_ADS8_SRC})
add_library(adi_plat_ads9 STATIC ${ADI_PLAT_ADS9_SRC})
add_library(adi_common STATIC ${ADI_COMMON_SRC}
${ADI_ERROR_SRC}
${ADI_HAL_SRC})
target_include_directories(adi_adrv9025 PUBLIC
"adrv9025/platforms/"
"adrv9025/platforms/ads8"
"adrv9025/platforms/ads9"
"adrv9025/platforms/platform_utils"
"adrv9025/common"
"adrv9025/common/adi_error"
"adrv9025/common/adi_logging"
"adrv9025/common/adi_hal"
"adrv9025"
"adrv9025/devices/adrv9025/private/include/"
"adrv9025/devices/adrv9025/public/include/")
target_include_directories(adi_plat PUBLIC
"adrv9025/platforms/"
"adrv9025/platforms/ads8"
"adrv9025/platforms/ads9"
"adrv9025/platforms/platform_utils"
"adrv9025/common"
"adrv9025/common/adi_error"
"adrv9025/common/adi_logging"
"adrv9025/common/adi_hal"
"adrv9025"
"adrv9025/devices/adrv9025/private/include/"
"adrv9025/devices/adrv9025/public/include/")
target_include_directories(adi_plat_ads8 PUBLIC
"adrv9025/platforms/"
"adrv9025/platforms/platform_utils"
"adrv9025/common"
"adrv9025/common/adi_error"
"adrv9025/common/adi_logging"
"adrv9025/common/adi_hal"
"adrv9025"
"adrv9025/devices/adrv9025/private/include/"
"adrv9025/devices/adrv9025/public/include/")
target_include_directories(adi_plat_ads9 PUBLIC
"adrv9025/platforms/"
"adrv9025/platforms/platform_utils"
"adrv9025/common"
"adrv9025/common/adi_error"
"adrv9025/common/adi_logging"
"adrv9025/common/adi_hal"
"adrv9025"
"adrv9025/devices/adrv9025/private/include/"
"adrv9025/devices/adrv9025/public/include/")
target_include_directories(adi_common PUBLIC
"adrv9025/platforms/"
"adrv9025/platforms/platform_utils"
"adrv9025/common"
"adrv9025/common/adi_error"
"adrv9025/common/adi_logging"
"adrv9025/common/adi_hal"
"adrv9025"
"adrv9025/devices/adrv9025/private/include/"
"adrv9025/devices/adrv9025/public/include/")
FILE(GLOB CXX_SRC
"*.cc"
"gpio/*.cc"
"clk/si5386/*.cc"
"fpga/*.cc"
"adrv9025/*.cc"
"signal/*.cc"
"mem/*.cc"
"dma/axidma/*.cc"
"common_interface/*.cc"
"sqlite/*.cc"
"tasks/events/*.cc"
"tasks/debug/*.cc"
"tasks/upgrade/ftp/*.cc")
FILE(GLOB C_SRC "adrv9025/*.c")
add_executable(${TARGETS} ${C_SRC} ${CXX_SRC})
target_compile_definitions(${TARGETS} PUBLIC ${ADRV9025_CONFIG})
target_compile_definitions(${TARGETS} PUBLIC ${PLATFORM_CONFIG_BASE_CONFIG})
target_compile_definitions(${TARGETS} PUBLIC ${PLATFORM_CONFIG_HW_DRIVER_BASE_MODULE_CONIFG})
target_compile_definitions(${TARGETS} PUBLIC ${PLATFORM_CONFIG_HW_DRIVER_MODULE_CONFIG})
target_compile_definitions(${TARGETS} PUBLIC ${PLATFORM_CONFIG_TASK_BASE_CONFIG})
target_compile_definitions(${TARGETS} PUBLIC ${PLATFORM_CONFIG_TASK_MODULE_CONFIG})
add_dependencies(${TARGETS} adi_adrv9025 adi_common adi_plat adi_plat_ads8 adi_plat_ads9)
target_include_directories(${TARGETS} PUBLIC
"./common_interface"
"./thread"
"./tasks/debug"
"./signal"
"./attribute"
"./clk"
"adrv9025/platforms/"
"adrv9025/platforms/ads8"
"adrv9025/platforms/ads9"
"adrv9025/platforms/platform_utils"
"adrv9025/common"
"adrv9025/common/adi_error"
"adrv9025/common/adi_logging"
"adrv9025/common/adi_hal"
"gpio"
"adrv9025"
"adrv9025/devices/adrv9025/private/include/"
"adrv9025/devices/adrv9025/public/include/"
"fpga"
"clk/si5386"
"mem"
"dma/axidma"
"./")
target_compile_options(${TARGETS} PUBLIC -Wno-write-strings -Wno-unused-result)
target_compile_options(${TARGETS} PUBLIC -Wall -Werror -O)
target_link_libraries(${TARGETS} PUBLIC sqlite3 m metal pthread -T${LDS}
adi_common adi_adrv9025 adi_plat adi_plat_ads8 adi_plat_ads9)
边栏推荐
猜你喜欢
随机推荐
Mysql/stonedb - slow SQL - 2022-08-09 Q16 analysis
CV review: softmax code implementation
多商户商城系统功能拆解25讲-平台端分销申请
【JZOF】82二叉树中和为某一值的路径(一)
高手这样看现货白银走势图
【Burning】It's time to show your true strength!Understand the technical highlights of the 2022 Huawei Developer Competition in one article
Leetcode 98. 验证二叉搜索树
Force buckle: 279. Perfect square
【面试高频题】可逐步优化的链表高频题
68.qt quick-qml多级折叠下拉导航菜单 支持动态添加/卸载 支持qml/widget加载等
A Shanghai technology company was fined 220,000 for brushing orders, exposing the gray industry chain of online brushing
The latest "Grain Academy Development Tutorial" in 2022: 10 - Front-end payment module
34. Fabric2.2 证书目录里各文件作用
【诗歌】爱你就像爱生命
2022-08-09 mysql/stonedb-subquery performance improvement-introduction
友元类和友元函数
VR全景拍摄如何拍摄?如何使用拍摄器材?
用函数统计最长单词的字母数量
高数_复习_第4章:向量代数和空间解析几何
如何知道电脑开机记录?