- Added AddModule CMake function which simplifies specifying module requirementssimple
@@ -1,6 +1,6 @@ | |||
###| CMake Kiibohd Controller Debug Module |### | |||
# | |||
# Written by Jacob Alexander in 2014 for the Kiibohd Controller | |||
# Written by Jacob Alexander in 2014-2015 for the Kiibohd Controller | |||
# | |||
# Released into the Public Domain | |||
# | |||
@@ -11,31 +11,15 @@ | |||
# Module C files | |||
# | |||
set( DEBUG_SRCS | |||
set ( Module_SRCS | |||
cli.c | |||
) | |||
### | |||
# Setup File Dependencies | |||
# | |||
### | |||
# Module Specific Options | |||
# | |||
### | |||
# Just in case, you only want this module and are using others as well | |||
# | |||
add_definitions( -I${HEAD_DIR}/Debug/off ) | |||
### | |||
# Compiler Family Compatibility | |||
# | |||
set( DebugModuleCompatibility | |||
set ( ModuleCompatibility | |||
arm | |||
avr | |||
) |
@@ -1,6 +1,6 @@ | |||
###| CMake Kiibohd Controller Debug Module |### | |||
# | |||
# Written by Jacob Alexander in 2011-2014 for the Kiibohd Controller | |||
# Written by Jacob Alexander in 2011-2015 for the Kiibohd Controller | |||
# | |||
# Released into the Public Domain | |||
# | |||
@@ -8,31 +8,18 @@ | |||
### | |||
# Module C files | |||
# Required Submodules | |||
# | |||
#| XXX Requires the ../ due to how the paths are constructed | |||
set( DEBUG_SRCS | |||
../cli/cli.c | |||
../led/led.c | |||
../print/print.c | |||
) | |||
### | |||
# Module Specific Options | |||
# | |||
add_definitions( | |||
-I${HEAD_DIR}/Debug/cli | |||
-I${HEAD_DIR}/Debug/led | |||
-I${HEAD_DIR}/Debug/print | |||
) | |||
AddModule ( Debug cli ) | |||
AddModule ( Debug led ) | |||
AddModule ( Debug print ) | |||
### | |||
# Compiler Family Compatibility | |||
# | |||
set( DebugModuleCompatibility | |||
set ( ModuleCompatibility | |||
arm | |||
avr | |||
) |
@@ -1,6 +1,6 @@ | |||
###| CMake Kiibohd Controller Debug Module |### | |||
# | |||
# Written by Jacob Alexander in 2011,2014 for the Kiibohd Controller | |||
# Written by Jacob Alexander in 2011-2015 for the Kiibohd Controller | |||
# | |||
# Released into the Public Domain | |||
# | |||
@@ -11,26 +11,15 @@ | |||
# Module C files | |||
# | |||
set( DEBUG_SRCS | |||
set ( Module_SRCS | |||
led.c | |||
) | |||
### | |||
# Module Specific Options | |||
# | |||
### | |||
# Just in case, you only want this module and are using others as well | |||
# | |||
add_definitions( -I${HEAD_DIR}/Debug/off ) | |||
### | |||
# Compiler Family Compatibility | |||
# | |||
set( DebugModuleCompatibility | |||
set ( ModuleCompatibility | |||
arm | |||
avr | |||
) |
@@ -1,30 +0,0 @@ | |||
/* Copyright (C) 2011 by Jacob Alexander | |||
* | |||
* 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. | |||
*/ | |||
#ifndef __led_h | |||
#define __led_h | |||
// ----- Disabler Defines ----- | |||
#define init_errorLED() | |||
#define errorLED(on) | |||
#endif | |||
@@ -1,70 +0,0 @@ | |||
/* Copyright (C) 2011 by Jacob Alexander | |||
* | |||
* 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. | |||
*/ | |||
#ifndef print_h__ | |||
#define print_h__ | |||
// ----- Disabler Defines ----- | |||
#define dPrint(c) | |||
#define dPrintStr(c) | |||
#define dPrintStrs(...) | |||
#define dPrintStrNL(c) | |||
#define dPrintStrsNL(...) | |||
// Special Msg Constructs (Uses VT100 tags) | |||
#define dPrintMsg(colour_code_str,msg,...) | |||
#define printMsg(colour_code_str,msg,str) | |||
// Info Messages | |||
#define info_dPrint(...) | |||
#define info_print(str) | |||
// Warning Messages | |||
#define warn_dPrint(...) | |||
#define warn_print(str) | |||
// Error Messages | |||
#define erro_dPrint(...) | |||
#define erro_print(str) | |||
// Debug Messages | |||
#define dbug_dPrint(...) | |||
#define dbug_print(str) | |||
// Static String Printing | |||
#define print(s) _print(PSTR(s)) | |||
// Output Functions | |||
#define _print(s) | |||
#define usb_debug_putstr(s) | |||
#define usb_debug_putstrs(s, ...) | |||
// String Functions | |||
#define hexToStr(hex, out) | |||
#define int8ToStr(in, out) | |||
#define int16ToStr(in, out) | |||
#define hexToStr_op(in, out, op) | |||
#define revsStr(in) | |||
#define lenStr(in) | |||
#endif | |||
@@ -1,28 +0,0 @@ | |||
###| CMake Kiibohd Controller Debug Module |### | |||
# | |||
# Written by Jacob Alexander in 2011 for the Kiibohd Controller | |||
# | |||
# Released into the Public Domain | |||
# | |||
### | |||
### | |||
# Module C files | |||
# | |||
#| None! | |||
### | |||
# Module Specific Options | |||
# | |||
### | |||
# Compiler Family Compatibility | |||
# | |||
set( DebugModuleCompatibility | |||
arm | |||
avr | |||
) | |||
@@ -1,6 +1,6 @@ | |||
###| CMake Kiibohd Controller Debug Module |### | |||
# | |||
# Written by Jacob Alexander in 2011,2014 for the Kiibohd Controller | |||
# Written by Jacob Alexander in 2011-2015 for the Kiibohd Controller | |||
# | |||
# Released into the Public Domain | |||
# | |||
@@ -11,26 +11,15 @@ | |||
# Module C files | |||
# | |||
set( DEBUG_SRCS | |||
set ( Module_SRCS | |||
print.c | |||
) | |||
### | |||
# Module Specific Options | |||
# | |||
### | |||
# Just in case, you only want this module and are using others as well | |||
# | |||
add_definitions( -I${HEAD_DIR}/Debug/off ) | |||
### | |||
# Compiler Family Compatibility | |||
# | |||
set( DebugModuleCompatibility | |||
set ( ModuleCompatibility | |||
arm | |||
avr | |||
) |
@@ -24,6 +24,7 @@ endif () | |||
### | |||
# Path Setup | |||
# | |||
@@ -41,36 +42,16 @@ set( HEAD_DIR "${CMAKE_CURRENT_SOURCE_DIR}" ) | |||
# Module Check Function | |||
# | |||
#| Usage: | |||
#| PathPrepend( ModulePath <ListOfFamiliesSupported> ) | |||
#| Uses the ${COMPILER_FAMILY} variable | |||
function( ModuleCompatibility ModulePath ) | |||
foreach( mod_var ${ARGN} ) | |||
function ( ModuleCompatibility ModulePath ) | |||
foreach ( mod_var ${ARGN} ) | |||
if ( ${mod_var} STREQUAL ${COMPILER_FAMILY} ) | |||
# Module found, no need to scan further | |||
return() | |||
endif () | |||
endforeach() | |||
message( FATAL_ERROR "${ModulePath} does not support the ${COMPILER_FAMILY} family..." ) | |||
endfunction() | |||
### | |||
# Module Configuration | |||
# | |||
endforeach () | |||
#| Additional options, usually define settings | |||
add_definitions() | |||
#| Include path for each of the modules | |||
add_definitions( | |||
-I${HEAD_DIR}/${ScanModulePath} | |||
-I${HEAD_DIR}/${MacroModulePath} | |||
-I${HEAD_DIR}/${OutputModulePath} | |||
-I${HEAD_DIR}/${DebugModulePath} | |||
) | |||
message ( FATAL_ERROR "${ModulePath} does not support the ${COMPILER_FAMILY} family..." ) | |||
endfunction () | |||
@@ -81,54 +62,86 @@ add_definitions( | |||
#| Go through lists of sources and append paths | |||
#| Usage: | |||
#| PathPrepend( OutputListOfSources <Prepend Path> <InputListOfSources> ) | |||
macro( PathPrepend Output SourcesPath ) | |||
unset( tmpSource ) | |||
macro ( PathPrepend Output SourcesPath ) | |||
unset ( tmpSource ) | |||
# Loop through items | |||
foreach( item ${ARGN} ) | |||
foreach ( item ${ARGN} ) | |||
# Set the path | |||
set( tmpSource ${tmpSource} "${SourcesPath}/${item}" ) | |||
endforeach() | |||
set ( tmpSource ${tmpSource} "${SourcesPath}/${item}" ) | |||
endforeach () | |||
# Finalize by writing the new list back over the old one | |||
set( ${Output} ${tmpSource} ) | |||
endmacro() | |||
set ( ${Output} ${tmpSource} ) | |||
endmacro () | |||
#| Scan Module | |||
include ( "${ScanModulePath}/setup.cmake" ) | |||
PathPrepend( SCAN_SRCS ${ScanModulePath} ${SCAN_SRCS} ) | |||
#| Macro Module | |||
include ( "${MacroModulePath}/setup.cmake" ) | |||
PathPrepend( MACRO_SRCS ${MacroModulePath} ${MACRO_SRCS} ) | |||
### | |||
# Add Module Macro | |||
# | |||
# Optional Arg 1: Main Module Check, set to True/1 if adding a main module | |||
function ( AddModule ModuleType ModuleName ) | |||
# Module path | |||
set ( ModulePath ${ModuleType}/${ModuleName} ) | |||
set ( ModuleFullPath ${HEAD_DIR}/${ModuleType}/${ModuleName} ) | |||
# Include setup.cmake file | |||
include ( ${ModuleFullPath}/setup.cmake ) | |||
# Check if this is a main module add | |||
foreach ( extraArg ${ARGN} ) | |||
# Make sure this isn't a submodule | |||
if ( DEFINED SubModule ) | |||
message ( FATAL_ERROR | |||
"The '${ModuleName}' module is not a stand-alone module, and requires further setup." | |||
) | |||
endif () | |||
endforeach () | |||
# PathPrepend to give proper paths to each of the source files | |||
PathPrepend ( Module_SRCS ${ModulePath} ${Module_SRCS} ) | |||
# Check the current scope to see if a sub-module added some source files | |||
set ( Module_SRCS ${${ModuleType}_SRCS} ${Module_SRCS} ) | |||
# Append each of the sources to each type of module srcs list | |||
set ( ${ModuleType}_SRCS ${Module_SRCS} ) | |||
#| Output Module | |||
include ( "${OutputModulePath}/setup.cmake" ) | |||
PathPrepend( OUTPUT_SRCS ${OutputModulePath} ${OUTPUT_SRCS} ) | |||
# Add .h files | |||
add_definitions ( -I${ModuleFullPath} ) | |||
# Check module compatibility | |||
ModuleCompatibility( ${ModulePath} ${ModuleCompatibility} ) | |||
# Check if this is a main module add | |||
foreach ( extraArg ${ARGN} ) | |||
# Display detected source files | |||
if ( NOT DEFINED SubModule ) | |||
message ( STATUS "Detected ${ModuleType} Module Source Files:" ) | |||
message ( "${${ModuleType}_SRCS}" ) | |||
endif () | |||
endforeach () | |||
#| Debugging Module | |||
include ( "${DebugModulePath}/setup.cmake" ) | |||
PathPrepend( DEBUG_SRCS ${DebugModulePath} ${DEBUG_SRCS} ) | |||
# Finally, add the sources to the parent scope (i.e. return) | |||
set ( ${ModuleType}_SRCS ${${ModuleType}_SRCS} PARENT_SCOPE ) | |||
endfunction () | |||
#| Print list of all module sources | |||
message( STATUS "Detected Scan Module Source Files:" ) | |||
message( "${SCAN_SRCS}" ) | |||
message( STATUS "Detected Macro Module Source Files:" ) | |||
message( "${MACRO_SRCS}" ) | |||
message( STATUS "Detected Output Module Source Files:" ) | |||
message( "${OUTPUT_SRCS}" ) | |||
message( STATUS "Detected Debug Module Source Files:" ) | |||
message( "${DEBUG_SRCS}" ) | |||
#| Add main modules | |||
AddModule ( Scan ${ScanModule} 1 ) | |||
AddModule ( Macro ${MacroModule} 1 ) | |||
AddModule ( Output ${OutputModule} 1 ) | |||
AddModule ( Debug ${DebugModule} 1 ) | |||
### | |||
# CMake Module Checking | |||
# | |||
find_package( Git REQUIRED ) | |||
find_package( Ctags ) # Optional | |||
find_package ( Git REQUIRED ) | |||
find_package ( Ctags ) # Optional | |||
@@ -220,10 +233,10 @@ configure_file( ${CMAKE_CURRENT_SOURCE_DIR}/Lib/_buildvars.h buildvars.h ) | |||
set( SRCS | |||
${MAIN_SRCS} | |||
${COMPILER_SRCS} | |||
${SCAN_SRCS} | |||
${MACRO_SRCS} | |||
${OUTPUT_SRCS} | |||
${DEBUG_SRCS} | |||
${Scan_SRCS} | |||
${Macro_SRCS} | |||
${Output_SRCS} | |||
${Debug_SRCS} | |||
) | |||
#| Directories to include by default | |||
@@ -231,18 +244,6 @@ include_directories( ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR} ) | |||
### | |||
# Module Compatibility Check | |||
# | |||
#| Check for whether the set modules are compatible with the specified compiler family | |||
ModuleCompatibility( ${ScanModulePath} ${ScanModuleCompatibility} ) | |||
ModuleCompatibility( ${MacroModulePath} ${MacroModuleCompatibility} ) | |||
ModuleCompatibility( ${OutputModulePath} ${OutputModuleCompatibility} ) | |||
ModuleCompatibility( ${DebugModulePath} ${DebugModuleCompatibility} ) | |||
### | |||
# ctag Generation | |||
# |
@@ -1,6 +1,6 @@ | |||
###| CMake Kiibohd Controller Macro Module |### | |||
# | |||
# Written by Jacob Alexander in 2014 for the Kiibohd Controller | |||
# Written by Jacob Alexander in 2014-2015 for the Kiibohd Controller | |||
# | |||
# Released into the Public Domain | |||
# | |||
@@ -11,20 +11,15 @@ | |||
# Module C files | |||
# | |||
set( MACRO_SRCS | |||
set ( Module_SRCS | |||
macro.c | |||
) | |||
### | |||
# Module Specific Options | |||
# | |||
### | |||
# Compiler Family Compatibility | |||
# | |||
set( MacroModuleCompatibility | |||
set ( ModuleCompatibility | |||
arm | |||
avr | |||
) |
@@ -1,6 +1,6 @@ | |||
###| CMake Kiibohd Controller USB Module |### | |||
# | |||
# Written by Jacob Alexander in 2011-2013 for the Kiibohd Controller | |||
# Written by Jacob Alexander in 2011-2015 for the Kiibohd Controller | |||
# | |||
# Released into the Public Domain | |||
# | |||
@@ -11,11 +11,10 @@ | |||
# Module C files | |||
# | |||
#| AVR Compiler | |||
if ( ${COMPILER_FAMILY} MATCHES "avr" ) | |||
set( OUTPUT_SRCS | |||
set ( Module_SRCS | |||
output_com.c | |||
avr/usb_keyboard_serial.c | |||
) | |||
@@ -23,7 +22,7 @@ if ( ${COMPILER_FAMILY} MATCHES "avr" ) | |||
#| ARM Compiler | |||
elseif ( ${COMPILER_FAMILY} MATCHES "arm" ) | |||
set( OUTPUT_SRCS | |||
set ( Module_SRCS | |||
output_com.c | |||
arm/usb_desc.c | |||
arm/usb_dev.c | |||
@@ -35,14 +34,10 @@ elseif ( ${COMPILER_FAMILY} MATCHES "arm" ) | |||
endif ( ${COMPILER_FAMILY} MATCHES "avr" ) | |||
### | |||
# Module Specific Options | |||
# | |||
### | |||
# Compiler Family Compatibility | |||
# | |||
set( OutputModuleCompatibility | |||
set( ModuleCompatibility | |||
arm | |||
avr | |||
) |
@@ -1,4 +1,4 @@ | |||
/* Copyright (C) 2014 by Jacob Alexander | |||
/* Copyright (C) 2014-2015 by Jacob Alexander | |||
* | |||
* Permission is hereby granted, free of charge, to any person obtaining a copy | |||
* of this software and associated documentation files (the "Software"), to deal |
@@ -1,6 +1,6 @@ | |||
###| CMake Kiibohd Controller UART Output Module |### | |||
# | |||
# Written by Jacob Alexander in 2014 for the Kiibohd Controller | |||
# Written by Jacob Alexander in 2014-2015 for the Kiibohd Controller | |||
# | |||
# Released into the Public Domain | |||
# | |||
@@ -11,11 +11,10 @@ | |||
# Module C files | |||
# | |||
#| AVR Compiler | |||
if ( ${COMPILER_FAMILY} MATCHES "avr" ) | |||
set( OUTPUT_SRCS | |||
set ( Module_SRCS | |||
output_com.c | |||
avr/uart_serial.c | |||
) | |||
@@ -23,7 +22,7 @@ if ( ${COMPILER_FAMILY} MATCHES "avr" ) | |||
#| ARM Compiler | |||
elseif ( ${COMPILER_FAMILY} MATCHES "arm" ) | |||
set( OUTPUT_SRCS | |||
set ( Module_SRCS | |||
output_com.c | |||
arm/uart_serial.c | |||
) | |||
@@ -31,14 +30,10 @@ elseif ( ${COMPILER_FAMILY} MATCHES "arm" ) | |||
endif () | |||
### | |||
# Module Specific Options | |||
# | |||
### | |||
# Compiler Family Compatibility | |||
# | |||
set( OutputModuleCompatibility | |||
set( ModuleCompatibility | |||
arm | |||
# avr # TODO | |||
) |
@@ -1,6 +1,6 @@ | |||
###| CMake Kiibohd Controller Muxed UART and USB Output Module |### | |||
# | |||
# Written by Jacob Alexander in 2014 for the Kiibohd Controller | |||
# Written by Jacob Alexander in 2014-2015 for the Kiibohd Controller | |||
# | |||
# Released into the Public Domain | |||
# | |||
@@ -8,43 +8,26 @@ | |||
### | |||
# Module C files | |||
# Required Submodules | |||
# | |||
#| AVR Compiler | |||
if ( ${COMPILER_FAMILY} MATCHES "avr" ) | |||
set( OUTPUT_SRCS | |||
) | |||
#| ARM Compiler | |||
elseif ( ${COMPILER_FAMILY} MATCHES "arm" ) | |||
set( OUTPUT_SRCS | |||
output_com.c | |||
../pjrcUSB/arm/usb_desc.c | |||
../pjrcUSB/arm/usb_dev.c | |||
../pjrcUSB/arm/usb_keyboard.c | |||
../pjrcUSB/arm/usb_mem.c | |||
../pjrcUSB/arm/usb_serial.c | |||
../uartOut/arm/uart_serial.c | |||
) | |||
endif () | |||
AddModule ( Output pjrcUSB ) | |||
AddModule ( Output uartOut ) | |||
### | |||
# Module Specific Options | |||
# Module C files | |||
# | |||
set( Module_SRCS | |||
output_com.c | |||
) | |||
### | |||
# Compiler Family Compatibility | |||
# | |||
set( OutputModuleCompatibility | |||
set( ModuleCompatibility | |||
arm | |||
# avr # TODO | |||
) |
@@ -1,6 +1,6 @@ | |||
###| CMake Kiibohd Controller Scan Module |### | |||
# | |||
# Written by Jacob Alexander in 2013-2014 for the Kiibohd Controller | |||
# Written by Jacob Alexander in 2013-2015 for the Kiibohd Controller | |||
# | |||
# Released into the Public Domain | |||
# | |||
@@ -10,21 +10,15 @@ | |||
### | |||
# Module C files | |||
# | |||
set( SCAN_SRCS | |||
set ( Module_SRCS | |||
scan_loop.c | |||
) | |||
### | |||
# Module Specific Options | |||
# | |||
### | |||
# Compiler Family Compatibility | |||
# | |||
set( ScanModuleCompatibility | |||
set ( ModuleCompatibility | |||
avr | |||
) | |||
@@ -8,27 +8,25 @@ | |||
### | |||
# Module C files | |||
# Required Submodules | |||
# | |||
set( SCAN_SRCS | |||
scan_loop.c | |||
../MatrixARM/matrix_scan.c | |||
) | |||
AddModule ( Scan MatrixARM ) | |||
### | |||
# Module Specific Options | |||
# Module C files | |||
# | |||
add_definitions( | |||
-I${HEAD_DIR}/Scan/MatrixARM | |||
set ( Module_SRCS | |||
scan_loop.c | |||
) | |||
### | |||
# Compiler Family Compatibility | |||
# | |||
set( ScanModuleCompatibility | |||
set ( ModuleCompatibility | |||
arm | |||
) | |||
@@ -1,36 +1,30 @@ | |||
###| CMake Kiibohd Controller Scan Module |### | |||
# | |||
# Written by Jacob Alexander in 2014 for the Kiibohd Controller | |||
# Written by Jacob Alexander in 2014-2015 for the Kiibohd Controller | |||
# | |||
# Released into the Public Domain | |||
# | |||
### | |||
### | |||
# Warning, that this module is not meant to be built stand-alone | |||
# Sub-module flag, cannot be included stand-alone | |||
# | |||
message( FATAL_ERROR | |||
"The 'MatrixARM' module is not a stand-alone module, and requires further setup." | |||
) | |||
set ( SubModule 1 ) | |||
### | |||
# Module C files | |||
# | |||
set( SCAN_SRCS | |||
set ( Module_SRCS | |||
matrix_scan.c | |||
) | |||
### | |||
# Module Specific Options | |||
# | |||
### | |||
# Compiler Family Compatibility | |||
# | |||
set( ScanModuleCompatibility | |||
set ( ModuleCompatibility | |||
arm | |||
) | |||