Fixed bug #787.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/branches/stable_16.1.x@9884 35acf78f-673a-0410-8e92-d51de3d6d3f4
This commit is contained in:
parent
345382ecdb
commit
fdf2d7dfdc
|
@ -89,8 +89,8 @@ else
|
||||||
ACSRC += $(CSRC)
|
ACSRC += $(CSRC)
|
||||||
ACPPSRC += $(CPPSRC)
|
ACPPSRC += $(CPPSRC)
|
||||||
endif
|
endif
|
||||||
ASRC = $(ACSRC)$(ACPPSRC)
|
ASRC = $(ACSRC) $(ACPPSRC)
|
||||||
TSRC = $(TCSRC)$(TCPPSRC)
|
TSRC = $(TCSRC) $(TCPPSRC)
|
||||||
SRCPATHS = $(sort $(dir $(ASMXSRC)) $(dir $(ASMSRC)) $(dir $(ASRC)) $(dir $(TSRC)))
|
SRCPATHS = $(sort $(dir $(ASMXSRC)) $(dir $(ASMSRC)) $(dir $(ASRC)) $(dir $(TSRC)))
|
||||||
|
|
||||||
# Various directories
|
# Various directories
|
||||||
|
@ -124,24 +124,27 @@ ASFLAGS = $(MCFLAGS) -Wa,-amhls=$(LSTDIR)/$(notdir $(<:.s=.lst)) $(ADEFS)
|
||||||
ASXFLAGS = $(MCFLAGS) -Wa,-amhls=$(LSTDIR)/$(notdir $(<:.S=.lst)) $(ADEFS)
|
ASXFLAGS = $(MCFLAGS) -Wa,-amhls=$(LSTDIR)/$(notdir $(<:.S=.lst)) $(ADEFS)
|
||||||
CFLAGS = $(MCFLAGS) $(OPT) $(COPT) $(CWARN) -Wa,-alms=$(LSTDIR)/$(notdir $(<:.c=.lst)) $(DEFS)
|
CFLAGS = $(MCFLAGS) $(OPT) $(COPT) $(CWARN) -Wa,-alms=$(LSTDIR)/$(notdir $(<:.c=.lst)) $(DEFS)
|
||||||
CPPFLAGS = $(MCFLAGS) $(OPT) $(CPPOPT) $(CPPWARN) -Wa,-alms=$(LSTDIR)/$(notdir $(<:.cpp=.lst)) $(DEFS)
|
CPPFLAGS = $(MCFLAGS) $(OPT) $(CPPOPT) $(CPPWARN) -Wa,-alms=$(LSTDIR)/$(notdir $(<:.cpp=.lst)) $(DEFS)
|
||||||
LDFLAGS = $(MCFLAGS) $(OPT) -nostartfiles $(LLIBDIR) -Wl,-Map=$(BUILDDIR)/$(PROJECT).map,--cref,--no-warn-mismatch,--library-path=$(RULESPATH),--script=$(LDSCRIPT)$(LDOPT)
|
LDFLAGS = $(MCFLAGS) $(OPT) -nostartfiles $(LLIBDIR) -Wl,-Map=$(BUILDDIR)/$(PROJECT).map,--cref,--no-warn-mismatch,--library-path=$(RULESPATH)/ld,--script=$(LDSCRIPT)$(LDOPT)
|
||||||
|
|
||||||
# Thumb interwork enabled only if needed because it kills performance.
|
# Thumb interwork enabled only if needed because it kills performance.
|
||||||
ifneq ($(TSRC),)
|
ifneq ($(strip $(TSRC)),)
|
||||||
CFLAGS += -DTHUMB_PRESENT
|
CFLAGS += -DTHUMB_PRESENT
|
||||||
CPPFLAGS += -DTHUMB_PRESENT
|
CPPFLAGS += -DTHUMB_PRESENT
|
||||||
ASFLAGS += -DTHUMB_PRESENT
|
ASFLAGS += -DTHUMB_PRESENT
|
||||||
ifneq ($(ASRC),)
|
ASXFLAGS += -DTHUMB_PRESENT
|
||||||
|
ifneq ($(strip $(ASRC)),)
|
||||||
# Mixed ARM and THUMB mode.
|
# Mixed ARM and THUMB mode.
|
||||||
CFLAGS += -mthumb-interwork
|
CFLAGS += -mthumb-interwork
|
||||||
CPPFLAGS += -mthumb-interwork
|
CPPFLAGS += -mthumb-interwork
|
||||||
ASFLAGS += -mthumb-interwork
|
ASFLAGS += -mthumb-interwork
|
||||||
|
ASXFLAGS += -mthumb-interwork
|
||||||
LDFLAGS += -mthumb-interwork
|
LDFLAGS += -mthumb-interwork
|
||||||
else
|
else
|
||||||
# Pure THUMB mode, THUMB C code cannot be called by ARM asm code directly.
|
# Pure THUMB mode, THUMB C code cannot be called by ARM asm code directly.
|
||||||
CFLAGS += -mno-thumb-interwork -DTHUMB_NO_INTERWORKING
|
CFLAGS += -mno-thumb-interwork -DTHUMB_NO_INTERWORKING
|
||||||
CPPFLAGS += -mno-thumb-interwork -DTHUMB_NO_INTERWORKING
|
CPPFLAGS += -mno-thumb-interwork -DTHUMB_NO_INTERWORKING
|
||||||
ASFLAGS += -mno-thumb-interwork -DTHUMB_NO_INTERWORKING -mthumb
|
ASFLAGS += -mno-thumb-interwork -DTHUMB_NO_INTERWORKING -mthumb
|
||||||
|
ASXFLAGS += -mno-thumb-interwork -DTHUMB_NO_INTERWORKING -mthumb
|
||||||
LDFLAGS += -mno-thumb-interwork -mthumb
|
LDFLAGS += -mno-thumb-interwork -mthumb
|
||||||
endif
|
endif
|
||||||
else
|
else
|
||||||
|
@ -149,11 +152,13 @@ else
|
||||||
CFLAGS += -mno-thumb-interwork
|
CFLAGS += -mno-thumb-interwork
|
||||||
CPPFLAGS += -mno-thumb-interwork
|
CPPFLAGS += -mno-thumb-interwork
|
||||||
ASFLAGS += -mno-thumb-interwork
|
ASFLAGS += -mno-thumb-interwork
|
||||||
|
ASXFLAGS += -mno-thumb-interwork
|
||||||
LDFLAGS += -mno-thumb-interwork
|
LDFLAGS += -mno-thumb-interwork
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# Generate dependency information
|
# Generate dependency information
|
||||||
ASFLAGS += -MD -MP -MF .dep/$(@F).d
|
ASFLAGS += -MD -MP -MF .dep/$(@F).d
|
||||||
|
ASXFLAGS += -MD -MP -MF .dep/$(@F).d
|
||||||
CFLAGS += -MD -MP -MF .dep/$(@F).d
|
CFLAGS += -MD -MP -MF .dep/$(@F).d
|
||||||
CPPFLAGS += -MD -MP -MF .dep/$(@F).d
|
CPPFLAGS += -MD -MP -MF .dep/$(@F).d
|
||||||
|
|
||||||
|
|
|
@ -5,9 +5,9 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
# Compiler options
|
# Compiler options
|
||||||
OPT = $(USE_OPT)
|
OPT := $(USE_OPT)
|
||||||
COPT = $(USE_COPT)
|
COPT := $(USE_COPT)
|
||||||
CPPOPT = $(USE_CPPOPT)
|
CPPOPT := $(USE_CPPOPT)
|
||||||
|
|
||||||
# Garbage collection
|
# Garbage collection
|
||||||
ifeq ($(USE_LINK_GC),yes)
|
ifeq ($(USE_LINK_GC),yes)
|
||||||
|
@ -61,7 +61,7 @@ endif
|
||||||
ifeq ($(BUILDDIR),.)
|
ifeq ($(BUILDDIR),.)
|
||||||
BUILDDIR = build
|
BUILDDIR = build
|
||||||
endif
|
endif
|
||||||
OUTFILES = $(BUILDDIR)/$(PROJECT).elf \
|
OUTFILES := $(BUILDDIR)/$(PROJECT).elf \
|
||||||
$(BUILDDIR)/$(PROJECT).hex \
|
$(BUILDDIR)/$(PROJECT).hex \
|
||||||
$(BUILDDIR)/$(PROJECT).bin \
|
$(BUILDDIR)/$(PROJECT).bin \
|
||||||
$(BUILDDIR)/$(PROJECT).dmp \
|
$(BUILDDIR)/$(PROJECT).dmp \
|
||||||
|
@ -79,36 +79,36 @@ else
|
||||||
ACSRC += $(CSRC)
|
ACSRC += $(CSRC)
|
||||||
ACPPSRC += $(CPPSRC)
|
ACPPSRC += $(CPPSRC)
|
||||||
endif
|
endif
|
||||||
ASRC = $(ACSRC)$(ACPPSRC)
|
ASRC := $(ACSRC) $(ACPPSRC)
|
||||||
TSRC = $(TCSRC)$(TCPPSRC)
|
TSRC := $(TCSRC) $(TCPPSRC)
|
||||||
SRCPATHS = $(sort $(dir $(ASMXSRC)) $(dir $(ASMSRC)) $(dir $(ASRC)) $(dir $(TSRC)))
|
SRCPATHS := $(sort $(dir $(ASMXSRC)) $(dir $(ASMSRC)) $(dir $(ASRC)) $(dir $(TSRC)))
|
||||||
|
|
||||||
# Various directories
|
# Various directories
|
||||||
OBJDIR = $(BUILDDIR)/obj
|
OBJDIR := $(BUILDDIR)/obj
|
||||||
LSTDIR = $(BUILDDIR)/lst
|
LSTDIR := $(BUILDDIR)/lst
|
||||||
|
|
||||||
# Object files groups
|
# Object files groups
|
||||||
ACOBJS = $(addprefix $(OBJDIR)/, $(notdir $(ACSRC:.c=.o)))
|
ACOBJS := $(addprefix $(OBJDIR)/, $(notdir $(ACSRC:.c=.o)))
|
||||||
ACPPOBJS = $(addprefix $(OBJDIR)/, $(notdir $(ACPPSRC:.cpp=.o)))
|
ACPPOBJS := $(addprefix $(OBJDIR)/, $(notdir $(ACPPSRC:.cpp=.o)))
|
||||||
TCOBJS = $(addprefix $(OBJDIR)/, $(notdir $(TCSRC:.c=.o)))
|
TCOBJS := $(addprefix $(OBJDIR)/, $(notdir $(TCSRC:.c=.o)))
|
||||||
TCPPOBJS = $(addprefix $(OBJDIR)/, $(notdir $(TCPPSRC:.cpp=.o)))
|
TCPPOBJS := $(addprefix $(OBJDIR)/, $(notdir $(TCPPSRC:.cpp=.o)))
|
||||||
ASMOBJS = $(addprefix $(OBJDIR)/, $(notdir $(ASMSRC:.s=.o)))
|
ASMOBJS := $(addprefix $(OBJDIR)/, $(notdir $(ASMSRC:.s=.o)))
|
||||||
ASMXOBJS = $(addprefix $(OBJDIR)/, $(notdir $(ASMXSRC:.S=.o)))
|
ASMXOBJS := $(addprefix $(OBJDIR)/, $(notdir $(ASMXSRC:.S=.o)))
|
||||||
OBJS = $(ASMXOBJS) $(ASMOBJS) $(ACOBJS) $(TCOBJS) $(ACPPOBJS) $(TCPPOBJS)
|
OBJS := $(ASMXOBJS) $(ASMOBJS) $(ACOBJS) $(TCOBJS) $(ACPPOBJS) $(TCPPOBJS)
|
||||||
|
|
||||||
# Paths
|
# Paths
|
||||||
IINCDIR = $(patsubst %,-I%,$(INCDIR) $(DINCDIR) $(UINCDIR))
|
IINCDIR := $(patsubst %,-I%,$(INCDIR) $(DINCDIR) $(UINCDIR))
|
||||||
LLIBDIR = $(patsubst %,-L%,$(DLIBDIR) $(ULIBDIR))
|
LLIBDIR := $(patsubst %,-L%,$(DLIBDIR) $(ULIBDIR))
|
||||||
|
|
||||||
# Macros
|
# Macros
|
||||||
DEFS = $(DDEFS) $(UDEFS)
|
DEFS := $(DDEFS) $(UDEFS)
|
||||||
ADEFS = $(DADEFS) $(UADEFS)
|
ADEFS := $(DADEFS) $(UADEFS)
|
||||||
|
|
||||||
# Libs
|
# Libs
|
||||||
LIBS = $(DLIBS) $(ULIBS)
|
LIBS := $(DLIBS) $(ULIBS)
|
||||||
|
|
||||||
# Various settings
|
# Various settings
|
||||||
MCFLAGS = -mcpu=$(MCU)
|
MCFLAGS := -mcpu=$(MCU)
|
||||||
ODFLAGS = -x --syms
|
ODFLAGS = -x --syms
|
||||||
ASFLAGS = $(MCFLAGS) -Wa,-amhls=$(LSTDIR)/$(notdir $(<:.s=.lst)) $(ADEFS)
|
ASFLAGS = $(MCFLAGS) -Wa,-amhls=$(LSTDIR)/$(notdir $(<:.s=.lst)) $(ADEFS)
|
||||||
ASXFLAGS = $(MCFLAGS) -Wa,-amhls=$(LSTDIR)/$(notdir $(<:.S=.lst)) $(ADEFS)
|
ASXFLAGS = $(MCFLAGS) -Wa,-amhls=$(LSTDIR)/$(notdir $(<:.S=.lst)) $(ADEFS)
|
||||||
|
@ -117,21 +117,24 @@ CPPFLAGS = $(MCFLAGS) $(OPT) $(CPPOPT) $(CPPWARN) -Wa,-alms=$(LSTDIR)/$(notdir
|
||||||
LDFLAGS = $(MCFLAGS) $(OPT) -nostartfiles $(LLIBDIR) -Wl,-Map=$(BUILDDIR)/$(PROJECT).map,--cref,--no-warn-mismatch,--library-path=$(RULESPATH),--script=$(LDSCRIPT)$(LDOPT)
|
LDFLAGS = $(MCFLAGS) $(OPT) -nostartfiles $(LLIBDIR) -Wl,-Map=$(BUILDDIR)/$(PROJECT).map,--cref,--no-warn-mismatch,--library-path=$(RULESPATH),--script=$(LDSCRIPT)$(LDOPT)
|
||||||
|
|
||||||
# Thumb interwork enabled only if needed because it kills performance.
|
# Thumb interwork enabled only if needed because it kills performance.
|
||||||
ifneq ($(TSRC),)
|
ifneq ($(strip $(TSRC)),)
|
||||||
CFLAGS += -DTHUMB_PRESENT
|
CFLAGS += -DTHUMB_PRESENT
|
||||||
CPPFLAGS += -DTHUMB_PRESENT
|
CPPFLAGS += -DTHUMB_PRESENT
|
||||||
ASFLAGS += -DTHUMB_PRESENT
|
ASFLAGS += -DTHUMB_PRESENT
|
||||||
ifneq ($(ASRC),)
|
ASXFLAGS += -DTHUMB_PRESENT
|
||||||
|
ifneq ($(strip $(ASRC)),)
|
||||||
# Mixed ARM and THUMB mode.
|
# Mixed ARM and THUMB mode.
|
||||||
CFLAGS += -mthumb-interwork
|
CFLAGS += -mthumb-interwork
|
||||||
CPPFLAGS += -mthumb-interwork
|
CPPFLAGS += -mthumb-interwork
|
||||||
ASFLAGS += -mthumb-interwork
|
ASFLAGS += -mthumb-interwork
|
||||||
|
ASXFLAGS += -mthumb-interwork
|
||||||
LDFLAGS += -mthumb-interwork
|
LDFLAGS += -mthumb-interwork
|
||||||
else
|
else
|
||||||
# Pure THUMB mode, THUMB C code cannot be called by ARM asm code directly.
|
# Pure THUMB mode, THUMB C code cannot be called by ARM asm code directly.
|
||||||
CFLAGS += -mno-thumb-interwork -DTHUMB_NO_INTERWORKING
|
CFLAGS += -mno-thumb-interwork -DTHUMB_NO_INTERWORKING
|
||||||
CPPFLAGS += -mno-thumb-interwork -DTHUMB_NO_INTERWORKING
|
CPPFLAGS += -mno-thumb-interwork -DTHUMB_NO_INTERWORKING
|
||||||
ASFLAGS += -mno-thumb-interwork -DTHUMB_NO_INTERWORKING -mthumb
|
ASFLAGS += -mno-thumb-interwork -DTHUMB_NO_INTERWORKING -mthumb
|
||||||
|
ASXFLAGS += -mno-thumb-interwork -DTHUMB_NO_INTERWORKING -mthumb
|
||||||
LDFLAGS += -mno-thumb-interwork -mthumb
|
LDFLAGS += -mno-thumb-interwork -mthumb
|
||||||
endif
|
endif
|
||||||
else
|
else
|
||||||
|
@ -139,11 +142,13 @@ else
|
||||||
CFLAGS += -mno-thumb-interwork
|
CFLAGS += -mno-thumb-interwork
|
||||||
CPPFLAGS += -mno-thumb-interwork
|
CPPFLAGS += -mno-thumb-interwork
|
||||||
ASFLAGS += -mno-thumb-interwork
|
ASFLAGS += -mno-thumb-interwork
|
||||||
|
ASXFLAGS += -mno-thumb-interwork
|
||||||
LDFLAGS += -mno-thumb-interwork
|
LDFLAGS += -mno-thumb-interwork
|
||||||
endif
|
endif
|
||||||
|
|
||||||
# Generate dependency information
|
# Generate dependency information
|
||||||
ASFLAGS += -MD -MP -MF .dep/$(@F).d
|
ASFLAGS += -MD -MP -MF .dep/$(@F).d
|
||||||
|
ASXFLAGS += -MD -MP -MF .dep/$(@F).d
|
||||||
CFLAGS += -MD -MP -MF .dep/$(@F).d
|
CFLAGS += -MD -MP -MF .dep/$(@F).d
|
||||||
CPPFLAGS += -MD -MP -MF .dep/$(@F).d
|
CPPFLAGS += -MD -MP -MF .dep/$(@F).d
|
||||||
|
|
||||||
|
|
|
@ -100,6 +100,7 @@ LDFLAGS = $(MCFLAGS) $(OPT) -nostartfiles $(LLIBDIR) -Wl,-Map=$(BUILDDIR)/$(PR
|
||||||
|
|
||||||
# Generate dependency information
|
# Generate dependency information
|
||||||
ASFLAGS += -MD -MP -MF .dep/$(@F).d
|
ASFLAGS += -MD -MP -MF .dep/$(@F).d
|
||||||
|
ASXFLAGS += -MD -MP -MF .dep/$(@F).d
|
||||||
CFLAGS += -MD -MP -MF .dep/$(@F).d
|
CFLAGS += -MD -MP -MF .dep/$(@F).d
|
||||||
CPPFLAGS += -MD -MP -MF .dep/$(@F).d
|
CPPFLAGS += -MD -MP -MF .dep/$(@F).d
|
||||||
|
|
||||||
|
|
|
@ -73,6 +73,7 @@
|
||||||
*****************************************************************************
|
*****************************************************************************
|
||||||
|
|
||||||
*** 16.1.6 ***
|
*** 16.1.6 ***
|
||||||
|
- HAL: Fixed Makefile dependencies not generated for .S files (bug #787).
|
||||||
- HAL: Fixed OTGv1 driver not functional on STM32L4 (bug #786).
|
- HAL: Fixed OTGv1 driver not functional on STM32L4 (bug #786).
|
||||||
- HAL: Fixed wrong bit offset in STM32F37x ADC_CR2_EXTSEL_SRC() macro
|
- HAL: Fixed wrong bit offset in STM32F37x ADC_CR2_EXTSEL_SRC() macro
|
||||||
(bug #785).
|
(bug #785).
|
||||||
|
|
Loading…
Reference in New Issue