From eb828549502a54aa481faaff9fa99179aff3ca5a Mon Sep 17 00:00:00 2001 From: Ben Levinsky Date: Tue, 16 Jul 2024 15:08:52 -0700 Subject: [PATCH] lib: xlnx: Update logic to pull in vendor-specific logic based on PROJECT_VENDOR Simplify logic that coordinates when to pull in Xilinx-AMD BSP and setup code basedd on new CMake variable 'PROJECT_VENDOR'. Add PROJECT_VENDOR check in cmake/options.cmake for case where PROJECT_VENDOR is not defined. Signed-off-by: Ben Levinsky --- cmake/options.cmake | 12 ++++++------ lib/system/freertos/CMakeLists.txt | 14 ++++---------- lib/system/generic/CMakeLists.txt | 12 +++--------- 3 files changed, 13 insertions(+), 25 deletions(-) diff --git a/cmake/options.cmake b/cmake/options.cmake index a3216a7..1c77653 100644 --- a/cmake/options.cmake +++ b/cmake/options.cmake @@ -75,11 +75,11 @@ option (WITH_DOC "Build with documentation" ON) set_property (GLOBAL PROPERTY "PROJECT_EC_FLAGS" -Wall -Werror -Wextra) -if ("${PROJECT_MACHINE}" STREQUAL "zynqmp_a53" OR - "${PROJECT_MACHINE}" STREQUAL "zynqmp_a72" OR - "${PROJECT_MACHINE}" STREQUAL "zynqmp_a78" OR - "${PROJECT_MACHINE}" STREQUAL "zynqmp_r5" OR - "${PROJECT_MACHINE}" STREQUAL "microblaze_generic" OR - "${PROJECT_MACHINE}" STREQUAL "zynq7") +if (NOT DEFINED PROJECT_VENDOR) +set (PROJECT_VENDOR "none") +endif (NOT DEFINED PROJECT_VENDOR) +message ("-- Vendor: ${PROJECT_VENDOR}") + +if (${PROJECT_VENDOR} STREQUAL xlnx) add_definitions( -DXLNX_PLATFORM ) endif() diff --git a/lib/system/freertos/CMakeLists.txt b/lib/system/freertos/CMakeLists.txt index c4f56a4..9d31aa3 100644 --- a/lib/system/freertos/CMakeLists.txt +++ b/lib/system/freertos/CMakeLists.txt @@ -17,14 +17,8 @@ collect (PROJECT_LIB_SOURCES irq.c) collect (PROJECT_LIB_SOURCES shmem.c) collect (PROJECT_LIB_SOURCES time.c) -if (EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_MACHINE}) +if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_VENDOR}) + add_subdirectory(${PROJECT_VENDOR}) +elseif(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_MACHINE}) add_subdirectory(${PROJECT_MACHINE}) -endif (EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_MACHINE}) - -if ("${PROJECT_MACHINE}" STREQUAL "zynqmp_a53" OR - "${PROJECT_MACHINE}" STREQUAL "zynqmp_a72" OR - "${PROJECT_MACHINE}" STREQUAL "zynqmp_a78" OR - "${PROJECT_MACHINE}" STREQUAL "zynqmp_r5" OR - "${PROJECT_MACHINE}" STREQUAL "zynq7") -add_subdirectory(xlnx) -endif() +endif(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_VENDOR}) diff --git a/lib/system/generic/CMakeLists.txt b/lib/system/generic/CMakeLists.txt index 9427635..9d31aa3 100644 --- a/lib/system/generic/CMakeLists.txt +++ b/lib/system/generic/CMakeLists.txt @@ -17,14 +17,8 @@ collect (PROJECT_LIB_SOURCES irq.c) collect (PROJECT_LIB_SOURCES shmem.c) collect (PROJECT_LIB_SOURCES time.c) -if ("${PROJECT_MACHINE}" STREQUAL "zynqmp_a53" OR - "${PROJECT_MACHINE}" STREQUAL "zynqmp_a72" OR - "${PROJECT_MACHINE}" STREQUAL "zynqmp_a78" OR - "${PROJECT_MACHINE}" STREQUAL "zynqmp_r5" OR - "${PROJECT_MACHINE}" STREQUAL "microblaze_generic" OR - "${PROJECT_MACHINE}" STREQUAL "zynq7") - add_subdirectory(xlnx) +if(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_VENDOR}) + add_subdirectory(${PROJECT_VENDOR}) elseif(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_MACHINE}) add_subdirectory(${PROJECT_MACHINE}) -endif() - +endif(EXISTS ${CMAKE_CURRENT_SOURCE_DIR}/${PROJECT_VENDOR})