Browse Source

cmake: Introduce AvrGcc/AnyAvrGcc toolchains, replacing LocalAvrGcc

- AvrGcc: use avr-gcc from dependencies
- AnyAvrGcc: use system's avr-gcc for testing
Yuri D'Elia 1 year ago
parent
commit
036a04938d
3 changed files with 7 additions and 3 deletions
  1. 1 0
      CMakeLists.txt
  2. 2 3
      cmake/LocalAvrGcc.cmake
  3. 4 0
      cmake/AvrGcc.cmake

+ 1 - 0
CMakeLists.txt

@@ -92,6 +92,7 @@ message("Language maximum size (from config.h): ${LANG_MAX_SIZE} bytes")
 # Ditto, this in xflash_layout.h but needs invocation of the preprocessor... :-/
 set(LANG_BIN_MAX 249856)
 
+# Check GCC Version
 get_recommended_gcc_version(RECOMMENDED_TOOLCHAIN_VERSION)
 if(CMAKE_CROSSCOMPILING AND NOT CMAKE_CXX_COMPILER_VERSION VERSION_EQUAL
                             ${RECOMMENDED_TOOLCHAIN_VERSION}

+ 2 - 3
cmake/LocalAvrGcc.cmake

@@ -2,9 +2,7 @@ get_filename_component(PROJECT_CMAKE_DIR "${CMAKE_CURRENT_LIST_FILE}" DIRECTORY)
 include("${PROJECT_CMAKE_DIR}/Utilities.cmake")
 set(CMAKE_SYSTEM_NAME Generic)
 set(CMAKE_SYSTEM_PROCESSOR avr)
-set(CMAKE_CROSSCOMPILING 1)
-get_dependency_directory("avr-gcc" AVR_TOOLCHAIN_DIR)
-message( "tc dir is ${AVR_TOOLCHAIN_DIR}")
+
 #
 # Utilities
 
@@ -27,6 +25,7 @@ set(TOOLCHAIN_PREFIX avr-)
 
 if(AVR_TOOLCHAIN_DIR)
   # using toolchain set by AvrGcc.cmake (locked version)
+  message("ToolChain dir is ${AVR_TOOLCHAIN_DIR}")
   set(BINUTILS_PATH "${AVR_TOOLCHAIN_DIR}/bin")
 else()
   # search for ANY avr-gcc toolchain

+ 4 - 0
cmake/AvrGcc.cmake

@@ -0,0 +1,4 @@
+get_filename_component(PROJECT_CMAKE_DIR "${CMAKE_CURRENT_LIST_FILE}" DIRECTORY)
+include("${PROJECT_CMAKE_DIR}/Utilities.cmake")
+get_dependency_directory("avr-gcc" AVR_TOOLCHAIN_DIR)
+include("${PROJECT_CMAKE_DIR}/AnyAvrGcc.cmake")