LLVM-related.
git-svn-id: svn://svn.code.sf.net/p/chibios/svn/trunk@15674 27425a3e-05d8-49a3-a47f-9c15f0e5edd8
This commit is contained in:
parent
e0d0d5bee1
commit
76cb8defd5
|
@ -1,19 +1,20 @@
|
|||
##############################################################################
|
||||
# Compiler settings
|
||||
#
|
||||
|
||||
TRGT = aarch32-
|
||||
CC = clang
|
||||
CPPC = clang++
|
||||
LD = clang
|
||||
CP = $(TRGT)objcopy
|
||||
AS = $(TRGT)as -x assembler-with-cpp
|
||||
AR = $(TRGT)ar
|
||||
OD = $(TRGT)objdump
|
||||
SZ = $(TRGT)size
|
||||
HEX = $(CP) -O ihex
|
||||
BIN = $(CP) -O binary
|
||||
|
||||
#
|
||||
# Compiler settings
|
||||
##############################################################################
|
||||
##############################################################################
|
||||
# Compiler settings
|
||||
#
|
||||
|
||||
TRGT = llvm-
|
||||
CC = clang
|
||||
GCC_CC = arm-none-eabi-gcc
|
||||
CPPC = clang++
|
||||
LD = $(GCC_CC)
|
||||
CP = $(TRGT)objcopy
|
||||
AS = $(TRGT)as -x assembler-with-cpp
|
||||
AR = $(TRGT)ar
|
||||
OD = $(TRGT)objdump
|
||||
SZ = $(TRGT)size
|
||||
HEX = $(CP) -O ihex
|
||||
BIN = $(CP) -O binary
|
||||
|
||||
#
|
||||
# Compiler settings
|
||||
##############################################################################
|
||||
|
|
|
@ -98,14 +98,13 @@ LSTDIR := $(BUILDDIR)/lst
|
|||
|
||||
# Object files groups
|
||||
TCOBJS := $(addprefix $(OBJDIR)/, $(notdir $(TCSRC:.c=.o)))
|
||||
TCPPOBJS := $(addprefix $(OBJDIR)/, $(notdir $(TCPPSRC:.cpp=.o)))
|
||||
#TCPPOBJS := $(addprefix $(OBJDIR)/, $(notdir $(TCPPSRC:.cpp=.o)))
|
||||
TCPPOBJS := $(addprefix $(OBJDIR)/, $(notdir $(patsubst %.cpp, %.o, $(filter %.cpp, $(TCPPSRC)))))
|
||||
TCCOBJS := $(addprefix $(OBJDIR)/, $(notdir $(patsubst %.cc, %.o, $(filter %.cc, $(TCPPSRC)))))
|
||||
ASMOBJS := $(addprefix $(OBJDIR)/, $(notdir $(ASMSRC:.s=.o)))
|
||||
ASMXOBJS := $(addprefix $(OBJDIR)/, $(notdir $(ASMXSRC:.S=.o)))
|
||||
OBJS := $(ASMXOBJS) $(ASMOBJS) $(ACOBJS) $(TCOBJS) $(ACPPOBJS) $(TCPPOBJS)
|
||||
|
||||
# Paths
|
||||
IINCDIR := $(patsubst %,-I%,$(INCDIR) $(DINCDIR) $(UINCDIR))
|
||||
LLIBDIR := $(patsubst %,-L%,$(DLIBDIR) $(ULIBDIR))
|
||||
#OBJS := $(ASMXOBJS) $(ASMOBJS) $(ACOBJS) $(TCOBJS) $(ACPPOBJS) $(TCPPOBJS)
|
||||
OBJS := $(ASMXOBJS) $(ASMOBJS) $(ACOBJS) $(TCOBJS) $(ACPPOBJS) $(TCPPOBJS) $(TCCOBJS)
|
||||
|
||||
# Macros
|
||||
DEFS := $(DDEFS) $(UDEFS)
|
||||
|
@ -121,11 +120,18 @@ ASFLAGS = $(MCFLAGS) $(OPT) $(ADEFS)
|
|||
ASXFLAGS = $(MCFLAGS) $(OPT) $(ADEFS)
|
||||
CFLAGS = $(MCFLAGS) $(OPT) $(COPT) $(CWARN) $(DEFS)
|
||||
CPPFLAGS = $(MCFLAGS) $(OPT) $(CPPOPT) $(CPPWARN) $(DEFS)
|
||||
#ASFLAGS = $(MCFLAGS) $(OPT) -Wa,-amhls=$(LSTDIR)/$(notdir $(<:.s=.lst)) $(ADEFS)
|
||||
#ASXFLAGS = $(MCFLAGS) $(OPT) -Wa,-amhls=$(LSTDIR)/$(notdir $(<:.S=.lst)) $(ADEFS)
|
||||
#CFLAGS = $(MCFLAGS) $(OPT) $(COPT) $(CWARN) -Wa,-alms=$(LSTDIR)/$(notdir $(<:.c=.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=$(STARTUPLD),--script=$(LDSCRIPT)$(LDOPT)
|
||||
|
||||
ARM_CORTEXM_SYSROOT := \
|
||||
$(shell $(GCC_CC) $(CFLAGS) -print-sysroot 2>&1)
|
||||
ARM_CORTEXM_MULTI_DIR := \
|
||||
$(shell $(GCC_CC) $(CFLAGS) -print-multi-directory 2>&1)
|
||||
ARM_CORTEXM_BUILTINS := \
|
||||
$(shell $(GCC_CC) $(CFLAGS) -print-libgcc-file-name 2>&1)
|
||||
|
||||
ASFLAGS += --target=arm-none-eabi --sysroot=$(ARM_CORTEXM_SYSROOT)
|
||||
ASXFLAGS += --target=arm-none-eabi --sysroot=$(ARM_CORTEXM_SYSROOT)
|
||||
CFLAGS += --target=arm-none-eabi --sysroot=$(ARM_CORTEXM_SYSROOT)
|
||||
CPPFLAGS += --target=arm-none-eabi --sysroot=$(ARM_CORTEXM_SYSROOT)
|
||||
|
||||
# Generate dependency information
|
||||
ASFLAGS += -MD -MP -MF $(DEPDIR)/$(@F).d
|
||||
|
@ -133,6 +139,11 @@ ASXFLAGS += -MD -MP -MF $(DEPDIR)/$(@F).d
|
|||
CFLAGS += -MD -MP -MF $(DEPDIR)/$(@F).d
|
||||
CPPFLAGS += -MD -MP -MF $(DEPDIR)/$(@F).d
|
||||
|
||||
# Paths
|
||||
IINCDIR := $(patsubst %,-I%,$(INCDIR) $(DINCDIR) $(UINCDIR))
|
||||
LLIBDIR := $(patsubst %,-L%,$(DLIBDIR) $(ULIBDIR) $(ARM_CORTEXM_SYSROOT)/lib/$(ARM_CORTEXM_MULTI_DIR))
|
||||
LDFLAGS = $(MCFLAGS) $(OPT) -nostartfiles $(LLIBDIR) $(ARM_CORTEXM_BUILTINS) -Wl,-Map=$(BUILDDIR)/$(PROJECT).map,--cref,--no-warn-mismatch,--library-path=$(STARTUPLD),--script=$(LDSCRIPT)$(LDOPT)
|
||||
|
||||
# Paths where to search for sources
|
||||
VPATH = $(SRCPATHS)
|
||||
|
||||
|
@ -174,6 +185,15 @@ else
|
|||
@$(CPPC) -c $(CPPFLAGS) -I. $(IINCDIR) $< -o $@
|
||||
endif
|
||||
|
||||
$(TCCOBJS) : $(OBJDIR)/%.o : %.cc $(MAKEFILE_LIST)
|
||||
ifeq ($(USE_VERBOSE_COMPILE),yes)
|
||||
@echo
|
||||
$(CPPC) -c $(CPPFLAGS) -I. $(IINCDIR) $< -o $@
|
||||
else
|
||||
@echo Compiling $(<F)
|
||||
@$(CPPC) -c $(CPPFLAGS) -I. $(IINCDIR) $< -o $@
|
||||
endif
|
||||
|
||||
$(TCOBJS) : $(OBJDIR)/%.o : %.c $(MAKEFILE_LIST)
|
||||
ifeq ($(USE_VERBOSE_COMPILE),yes)
|
||||
@echo
|
||||
|
|
|
@ -74,6 +74,7 @@
|
|||
*****************************************************************************
|
||||
|
||||
*** Next ***
|
||||
- NEW: Non-proprietary LLVM build support.
|
||||
- NEW: Added palReadGroupLatch() to PAL driver.
|
||||
- NEW: Added a Posix-favored shell named "msh" (Mini Shell). The shell is able
|
||||
to run sub-apps inside the same sandbox. The shell can either be placed
|
||||
|
|
Loading…
Reference in New Issue