nuttx/libs/libc/machine/arm/Make.defs
Huang Qi 69cfe8d626 arch/arm: Support setjmp/longjmp for all socs
After check the official specification of ARM ISA
and Thumb ISA, the arch_setjmp_thumb.S are written
by arm unified assembly language,
so it easy to make it works for ARM and thumb ISA.

Signed-off-by: Huang Qi <huangqi3@xiaomi.com>
2022-03-09 17:13:21 +02:00

65 lines
2.7 KiB
Plaintext

############################################################################
# libs/libc/machine/arm/Make.defs
#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership. The
# ASF licenses this file to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance with the
# License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
#
############################################################################
ifeq ($(CONFIG_ARCH_ARM7TDMI),y) # ARM7TDMI is ARMv4T
include $(TOPDIR)/libs/libc/machine/arm/arm/Make.defs
else ifeq ($(CONFIG_ARCH_ARM920T),y) # ARM920T is ARMv4T
include $(TOPDIR)/libs/libc/machine/arm/arm/Make.defs
else ifeq ($(CONFIG_ARCH_ARM926EJS),y) # ARM926EJS is ARMv5TEJ
include $(TOPDIR)/libs/libc/machine/arm/arm/Make.defs
else ifeq ($(CONFIG_ARCH_ARM1136J),y) # ARM1136J is ARMv6
include $(TOPDIR)/libs/libc/machine/arm/arm/Make.defs
else ifeq ($(CONFIG_ARCH_ARM1156T2),y) # ARM1156T2 is ARMv6T2
include $(TOPDIR)/libs/libc/machine/arm/arm/Make.defs
else ifeq ($(CONFIG_ARCH_ARM1176JZ),y) # ARM1176JZ is ARMv6Z
include $(TOPDIR)/libs/libc/machine/arm/arm/Make.defs
else ifeq ($(CONFIG_ARCH_ARMV7A),y) # All ARMv7-A
include $(TOPDIR)/libs/libc/machine/arm/armv7-a/Make.defs
else ifeq ($(CONFIG_ARCH_ARMV7R),y) # All ARMv7-R
include $(TOPDIR)/libs/libc/machine/arm/armv7-r/Make.defs
else ifeq ($(CONFIG_ARCH_ARMV6M),y) # All ARMv6-M
include $(TOPDIR)/libs/libc/machine/arm/armv6-m/Make.defs
else ifeq ($(CONFIG_ARCH_ARMV7M),y) # All ARMv7-M
include $(TOPDIR)/libs/libc/machine/arm/armv7-m/Make.defs
else ifeq ($(CONFIG_ARCH_ARMV8M),y) # All ARMv8-M
include $(TOPDIR)/libs/libc/machine/arm/armv8-m/Make.defs
endif
CSRCS += aeabi_memclr.c aeabi_memclr4.c aeabi_memclr8.c
CSRCS += aeabi_memcpy.c aeabi_memcpy4.c aeabi_memcpy8.c
CSRCS += aeabi_memmove.c aeabi_memmove4.c aeabi_memmove8.c
CSRCS += aeabi_memset.c aeabi_memset4.c aeabi_memset8.c
ifeq ($(CONFIG_CXX_EXCEPTION),y)
CSRCS += gnu_unwind_find_exidx.c
endif
ifeq ($(CONFIG_ARCH_SETJMP_H),y)
ASRCS += arch_setjmp.S
endif
ifeq ($(CONFIG_ARCH_TOOLCHAIN_GNU),y)
DEPPATH += --dep-path machine/arm/gnu
VPATH += :machine/arm/gnu
endif
DEPPATH += --dep-path machine/arm
VPATH += :machine/arm