Add COMPILER_PATH optional variable to the BUILD build system module.

pull/1469/head
Dean Camera 11 years ago
parent 22b3970338
commit 910c6eb599

@ -9,7 +9,7 @@
LUFA_BUILD_MODULES += BUILD LUFA_BUILD_MODULES += BUILD
LUFA_BUILD_TARGETS += size symbol-sizes all lib elf bin hex lss clean mostlyclean LUFA_BUILD_TARGETS += size symbol-sizes all lib elf bin hex lss clean mostlyclean
LUFA_BUILD_MANDATORY_VARS += TARGET ARCH MCU SRC F_USB LUFA_PATH LUFA_BUILD_MANDATORY_VARS += TARGET ARCH MCU SRC F_USB LUFA_PATH
LUFA_BUILD_OPTIONAL_VARS += BOARD OPTIMIZATION C_STANDARD CPP_STANDARD F_CPU C_FLAGS CPP_FLAGS ASM_FLAGS CC_FLAGS LD_FLAGS OBJDIR OBJECT_FILES DEBUG_TYPE DEBUG_LEVEL LINKER_RELAXATIONS LUFA_BUILD_OPTIONAL_VARS += BOARD OPTIMIZATION C_STANDARD CPP_STANDARD F_CPU C_FLAGS CPP_FLAGS ASM_FLAGS CC_FLAGS LD_FLAGS OBJDIR OBJECT_FILES DEBUG_TYPE DEBUG_LEVEL LINKER_RELAXATIONS COMPILER_PATH
LUFA_BUILD_PROVIDED_VARS += LUFA_BUILD_PROVIDED_VARS +=
LUFA_BUILD_PROVIDED_MACROS += LUFA_BUILD_PROVIDED_MACROS +=
@ -72,6 +72,7 @@ LUFA_BUILD_PROVIDED_MACROS +=
# generate in the compiled object files # generate in the compiled object files
# DEBUG_LEVEL - Level the debugging information to generate in # DEBUG_LEVEL - Level the debugging information to generate in
# the compiled object files # the compiled object files
# COMPILER_PATH - Location of the GCC toolchain to use
# #
# PROVIDED VARIABLES: # PROVIDED VARIABLES:
# #
@ -90,6 +91,7 @@ ERROR_IF_EMPTY ?= $(if $(strip $($(strip $(1)))), , $(error Makefile $(strip $
ERROR_IF_NONBOOL ?= $(if $(filter Y N, $($(strip $(1)))), , $(error Makefile $(strip $(1)) option must be Y or N)) ERROR_IF_NONBOOL ?= $(if $(filter Y N, $($(strip $(1)))), , $(error Makefile $(strip $(1)) option must be Y or N))
# Default values of optionally user-supplied variables # Default values of optionally user-supplied variables
COMPILER_PATH ?=
BOARD ?= NONE BOARD ?= NONE
OPTIMIZATION ?= s OPTIMIZATION ?= s
F_CPU ?= F_CPU ?=
@ -123,12 +125,12 @@ $(call ERROR_IF_NONBOOL, LINKER_RELAXATIONS)
# Determine the utility prefix to use for the selected architecture # Determine the utility prefix to use for the selected architecture
ifeq ($(ARCH), AVR8) ifeq ($(ARCH), AVR8)
CROSS := avr CROSS := $(COMPILER_PATH)avr
else ifeq ($(ARCH), XMEGA) else ifeq ($(ARCH), XMEGA)
CROSS := avr CROSS := $(COMPILER_PATH)avr
$(warning The XMEGA device support is currently EXPERIMENTAL (incomplete and/or non-functional), and is included for preview purposes only.) $(warning The XMEGA device support is currently EXPERIMENTAL (incomplete and/or non-functional), and is included for preview purposes only.)
else ifeq ($(ARCH), UC3) else ifeq ($(ARCH), UC3)
CROSS := avr32 CROSS := $(COMPILER_PATH)avr32
$(warning The UC3 device support is currently EXPERIMENTAL (incomplete and/or non-functional), and is included for preview purposes only.) $(warning The UC3 device support is currently EXPERIMENTAL (incomplete and/or non-functional), and is included for preview purposes only.)
else else
$(error Unsupported architecture "$(ARCH)") $(error Unsupported architecture "$(ARCH)")

@ -190,6 +190,10 @@
* <td>Common flags to pass to the C/C++ compiler and assembler, after the automatically generated flags.</td> * <td>Common flags to pass to the C/C++ compiler and assembler, after the automatically generated flags.</td>
* </tr> * </tr>
* <tr> * <tr>
* <td><tt>COMPILER_PATH</tt></td>
* <td>Directory where the C/C++ toolchain is located, if not available in the system <tt>PATH</tt>.</td>
* </tr>
* <tr>
* <td><tt>LD_FLAGS</tt></td> * <td><tt>LD_FLAGS</tt></td>
* <td>Flags to pass to the linker, after the automatically generated flags.</td> * <td>Flags to pass to the linker, after the automatically generated flags.</td>
* </tr> * </tr>

@ -7,12 +7,17 @@
/** \page Page_ChangeLog Project Changelog /** \page Page_ChangeLog Project Changelog
* *
* \section Sec_ChangeLogXXXXXX Version XXXXXX * \section Sec_ChangeLogXXXXXX Version XXXXXX
* <b>New:</b>
* - Core:
* - Updated the BUILD build system module to add a new COMPILER_PATH optional variable
*
* <b>Fixed:</b> * <b>Fixed:</b>
* - Core: * - Core:
* - Fixed device class driver pipe configuration routines returning success with a partially constructed instance * - Fixed device class driver pipe configuration routines returning success with a partially constructed instance
* when a pipe configuration failed (thanks to Helge Suess) * when a pipe configuration failed (thanks to Helge Suess)
* - Fixed incorrect LED driver definitions for the Arduino Leonardo board (thanks to Zoltán Szőke) * - Fixed incorrect LED driver definitions for the Arduino Leonardo board (thanks to Zoltán Szőke)
* - Fixed incorrect XMEGA DFLL reference frequency (thanks to Martin Aakerberg) * - Fixed incorrect XMEGA DFLL reference frequency (thanks to Martin Aakerberg)
* - Fixed possible infinite loop in the control endpoint stream write function (thanks to Clayton Knight)
* - Library Applications: * - Library Applications:
* - Fixed spurious 0xFE USART byte sent in the USBtoSerial project when the baud rate is changed (thanks to Carl Kjeldsen) * - Fixed spurious 0xFE USART byte sent in the USBtoSerial project when the baud rate is changed (thanks to Carl Kjeldsen)
* *

Loading…
Cancel
Save