mirror of
https://github.com/thelsing/knx.git
synced 2025-08-22 13:46:21 +02:00
Change cmake build
This commit is contained in:
parent
7584e325d2
commit
779ab2a5fd
@ -1,18 +1,30 @@
|
|||||||
##
|
##
|
||||||
## Uatecho Example
|
## KNX for CC1310
|
||||||
##
|
##
|
||||||
|
|
||||||
project(knx-cc1310 C CXX ASM)
|
project(knx-cc1310 C CXX ASM)
|
||||||
cmake_minimum_required(VERSION 3.6)
|
cmake_minimum_required(VERSION 3.12)
|
||||||
|
|
||||||
|
# Generate a "compile_commands.json" file containing the exact compiler calls for all translation units of the project in machine-readable form.
|
||||||
|
# Useful for C/CPP extension of VS code
|
||||||
|
set(CMAKE_EXPORT_COMPILE_COMMANDS ON)
|
||||||
|
|
||||||
|
# Use <Package>_ROOT variables for locating in find_path, find_package, etc.
|
||||||
|
cmake_policy(SET CMP0074 NEW)
|
||||||
|
|
||||||
|
# Append current directory to CMAKE_MODULE_PATH for making device specific cmake modules visible
|
||||||
|
list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_LIST_DIR}/cmake)
|
||||||
message("CMAKE_MODULE_PATH: ${CMAKE_MODULE_PATH}")
|
message("CMAKE_MODULE_PATH: ${CMAKE_MODULE_PATH}")
|
||||||
|
|
||||||
# Configure Toolchain for CC13xx
|
# Configure Toolchain for CC13xx
|
||||||
set(LINKER_SCRIPT "${CMAKE_CURRENT_SOURCE_DIR}/CC1310_LAUNCHXL_NoRTOS.lds")
|
set(LINKER_SCRIPT "${CMAKE_CURRENT_SOURCE_DIR}/CC1310_LAUNCHXL_NoRTOS.lds")
|
||||||
include(cc13xx)
|
include(cc13xx)
|
||||||
|
|
||||||
|
set(SimpleLinkCC13X0SDKnortos_ROOT "${CMAKE_CURRENT_SOURCE_DIR}/coresdk_cc13xx_cc26xx")
|
||||||
|
message("SimpleLinkCC13X0SDKnortos_ROOT: ${SimpleLinkCC13X0SDKnortos_ROOT}")
|
||||||
|
|
||||||
# Find dependencies
|
# Find dependencies
|
||||||
find_package(SimpleLinkCC13X0SDK_nortos REQUIRED)
|
find_package(SimpleLinkCC13X0SDKnortos REQUIRED)
|
||||||
|
|
||||||
#
|
#
|
||||||
# Target
|
# Target
|
||||||
|
@ -1,2 +1,2 @@
|
|||||||
cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DCMAKE_PREFIX_PATH="~/ti/simplelink_cc13x0_sdk_4_10_02_04" -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchain-arm-none-eabi.cmake ..
|
#cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_EXPORT_COMPILE_COMMANDS=ON -DCMAKE_PREFIX_PATH="~/ti/simplelink_cc13x0_sdk_4_10_02_04" -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchain-arm-none-eabi.cmake ..
|
||||||
|
cmake -DCMAKE_BUILD_TYPE=Debug -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchain-arm-none-eabi.cmake ..
|
||||||
|
@ -1,6 +1,27 @@
|
|||||||
|
## Derived from this project: https://github.com/jobroe/cmake-arm-embedded
|
||||||
##
|
##
|
||||||
## Author: Johannes Bruder
|
## MIT License
|
||||||
## License: See LICENSE.TXT file included in the project
|
##
|
||||||
|
## Copyright (c) 2018 Johannes Bruder
|
||||||
|
##
|
||||||
|
## Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
## of this software and associated documentation files (the "Software"), to deal
|
||||||
|
## in the Software without restriction, including without limitation the rights
|
||||||
|
## to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
## copies of the Software, and to permit persons to whom the Software is
|
||||||
|
## furnished to do so, subject to the following conditions:
|
||||||
|
##
|
||||||
|
## The above copyright notice and this permission notice shall be included in all
|
||||||
|
## copies or substantial portions of the Software.
|
||||||
|
##
|
||||||
|
## THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
## IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
## FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
## AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
## LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
## OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
## SOFTWARE.
|
||||||
|
|
||||||
##
|
##
|
||||||
## Find TI's SimpleLink CC13X0 SDK
|
## Find TI's SimpleLink CC13X0 SDK
|
||||||
##
|
##
|
||||||
@ -25,10 +46,10 @@ find_library(SimpleLinkCC13X0SDK_rf_singleMode_cc13x0_LIBRARY
|
|||||||
)
|
)
|
||||||
|
|
||||||
# Find cc13x0 radio multi mode lib
|
# Find cc13x0 radio multi mode lib
|
||||||
#find_library(SimpleLinkCC13X0SDK_rf_multiMode_cc13x0_LIBRARY
|
find_library(SimpleLinkCC13X0SDK_rf_multiMode_cc13x0_LIBRARY
|
||||||
# NAMES rf_multiMode_cc13x0.am3g
|
NAMES rf_multiMode_cc13x0.am3g
|
||||||
# PATH_SUFFIXES "source/ti/drivers/rf/lib"
|
PATH_SUFFIXES "source/ti/drivers/rf/lib"
|
||||||
#)
|
)
|
||||||
|
|
||||||
# Find driver porting layer (NoRTOS) lib
|
# Find driver porting layer (NoRTOS) lib
|
||||||
find_library(SimpleLinkCC13X0SDK_dpl_cc13x0_LIBRARY
|
find_library(SimpleLinkCC13X0SDK_dpl_cc13x0_LIBRARY
|
||||||
@ -46,10 +67,9 @@ set(SimpleLinkCC13X0SDK_INCLUDE_DIRS
|
|||||||
"${SimpleLinkCC13X0SDK_DEVICES_DIR}/../.."
|
"${SimpleLinkCC13X0SDK_DEVICES_DIR}/../.."
|
||||||
"${SimpleLinkCC13X0SDK_DEVICES_DIR}/../../../kernel/nortos"
|
"${SimpleLinkCC13X0SDK_DEVICES_DIR}/../../../kernel/nortos"
|
||||||
)
|
)
|
||||||
message("Content of SimpleLinkCC13X0SDK_INCLUDE_DIRS " ${SimpleLinkCC13X0SDK_INCLUDE_DIRS})
|
|
||||||
|
|
||||||
# Handle arguments and set SimpleLinkCC13X0SDK_FOUND to TRUE if all listed variables are TRUE
|
# Handle arguments and set SimpleLinkCC13X0SDK_FOUND to TRUE if all listed variables are TRUE
|
||||||
find_package_handle_standard_args(SimpleLinkCC13X0SDK DEFAULT_MSG
|
find_package_handle_standard_args(SimpleLinkCC13X0SDK DEFAULT_MSG
|
||||||
SimpleLinkCC13X0SDK_drivers_cc13x0_LIBRARY
|
SimpleLinkCC13X0SDK_drivers_cc13x0_LIBRARY
|
||||||
SimpleLinkCC13X0SDK_rf_singleMode_cc13x0_LIBRARY
|
SimpleLinkCC13X0SDK_rf_singleMode_cc13x0_LIBRARY
|
||||||
SimpleLinkCC13X0SDK_dpl_cc13x0_LIBRARY
|
SimpleLinkCC13X0SDK_dpl_cc13x0_LIBRARY
|
@ -1,21 +0,0 @@
|
|||||||
MIT License
|
|
||||||
|
|
||||||
Copyright (c) 2018 Johannes Bruder
|
|
||||||
|
|
||||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
||||||
of this software and associated documentation files (the "Software"), to deal
|
|
||||||
in the Software without restriction, including without limitation the rights
|
|
||||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
||||||
copies of the Software, and to permit persons to whom the Software is
|
|
||||||
furnished to do so, subject to the following conditions:
|
|
||||||
|
|
||||||
The above copyright notice and this permission notice shall be included in all
|
|
||||||
copies or substantial portions of the Software.
|
|
||||||
|
|
||||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
||||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
||||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
||||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
||||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
||||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
||||||
SOFTWARE.
|
|
@ -1,7 +1,27 @@
|
|||||||
|
## Derived from this project: https://github.com/jobroe/cmake-arm-embedded
|
||||||
##
|
##
|
||||||
## Author: Johannes Bruder
|
## MIT License
|
||||||
## License: See LICENSE.TXT file included in the project
|
|
||||||
##
|
##
|
||||||
|
## Copyright (c) 2018 Johannes Bruder
|
||||||
|
##
|
||||||
|
## Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
## of this software and associated documentation files (the "Software"), to deal
|
||||||
|
## in the Software without restriction, including without limitation the rights
|
||||||
|
## to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
## copies of the Software, and to permit persons to whom the Software is
|
||||||
|
## furnished to do so, subject to the following conditions:
|
||||||
|
##
|
||||||
|
## The above copyright notice and this permission notice shall be included in all
|
||||||
|
## copies or substantial portions of the Software.
|
||||||
|
##
|
||||||
|
## THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
## IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
## FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
## AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
## LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
## OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
## SOFTWARE.
|
||||||
|
|
||||||
##
|
##
|
||||||
## CC13xx target specific CMake file
|
## CC13xx target specific CMake file
|
||||||
##
|
##
|
||||||
|
@ -1,16 +1,33 @@
|
|||||||
|
## Derived from this project: https://github.com/jobroe/cmake-arm-embedded
|
||||||
##
|
##
|
||||||
## Author: Johannes Bruder
|
## MIT License
|
||||||
## License: See LICENSE.TXT file included in the project
|
|
||||||
##
|
##
|
||||||
|
## Copyright (c) 2018 Johannes Bruder
|
||||||
|
##
|
||||||
|
## Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||||
|
## of this software and associated documentation files (the "Software"), to deal
|
||||||
|
## in the Software without restriction, including without limitation the rights
|
||||||
|
## to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||||
|
## copies of the Software, and to permit persons to whom the Software is
|
||||||
|
## furnished to do so, subject to the following conditions:
|
||||||
|
##
|
||||||
|
## The above copyright notice and this permission notice shall be included in all
|
||||||
|
## copies or substantial portions of the Software.
|
||||||
|
##
|
||||||
|
## THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||||
|
## IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
## FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||||
|
## AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||||
|
## LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||||
|
## OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||||
|
## SOFTWARE.
|
||||||
|
|
||||||
##
|
##
|
||||||
## CMake arm-none-eabi toolchain file
|
## CMake arm-none-eabi toolchain file
|
||||||
##
|
##
|
||||||
|
|
||||||
# Append current directory to CMAKE_MODULE_PATH for making device specific cmake modules visible
|
|
||||||
list(APPEND CMAKE_MODULE_PATH ${CMAKE_CURRENT_LIST_DIR})
|
|
||||||
|
|
||||||
# Target definition
|
# Target definition
|
||||||
set(CMAKE_SYSTEM_NAME Generic)
|
set(CMAKE_SYSTEM_NAME Generic)
|
||||||
set(CMAKE_SYSTEM_PROCESSOR ARM)
|
set(CMAKE_SYSTEM_PROCESSOR ARM)
|
||||||
|
|
||||||
#---------------------------------------------------------------------------------------
|
#---------------------------------------------------------------------------------------
|
||||||
@ -96,7 +113,6 @@ set(CMAKE_C_COMPILER ${TOOLCHAIN_BIN_DIR}/${TOOLCHAIN}-gcc${TOOLCHAIN_EXT} CACHE
|
|||||||
set(CMAKE_CXX_COMPILER ${TOOLCHAIN_BIN_DIR}/${TOOLCHAIN}-g++${TOOLCHAIN_EXT} CACHE INTERNAL "C++ Compiler")
|
set(CMAKE_CXX_COMPILER ${TOOLCHAIN_BIN_DIR}/${TOOLCHAIN}-g++${TOOLCHAIN_EXT} CACHE INTERNAL "C++ Compiler")
|
||||||
set(CMAKE_ASM_COMPILER ${TOOLCHAIN_BIN_DIR}/${TOOLCHAIN}-gcc${TOOLCHAIN_EXT} CACHE INTERNAL "ASM Compiler")
|
set(CMAKE_ASM_COMPILER ${TOOLCHAIN_BIN_DIR}/${TOOLCHAIN}-gcc${TOOLCHAIN_EXT} CACHE INTERNAL "ASM Compiler")
|
||||||
|
|
||||||
set(CMAKE_FIND_ROOT_PATH ${TOOLCHAIN_PREFIX}/${${TOOLCHAIN}} ${CMAKE_PREFIX_PATH})
|
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
|
set(CMAKE_FIND_ROOT_PATH_MODE_PROGRAM NEVER)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_LIBRARY ONLY)
|
||||||
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
set(CMAKE_FIND_ROOT_PATH_MODE_INCLUDE ONLY)
|
||||||
|
Loading…
Reference in New Issue
Block a user