Elliott Hughes | 7c02d94 | 2014-09-16 19:06:31 -0700 | [diff] [blame] | 1 | # 32-bit arm. |
Ying Wang | f25d677 | 2014-01-23 15:17:50 -0800 | [diff] [blame] | 2 | |
Elliott Hughes | 7c02d94 | 2014-09-16 19:06:31 -0700 | [diff] [blame] | 3 | libc_bionic_src_files_arm += \ |
Dan Willemsen | 268a673 | 2015-10-15 14:49:45 -0700 | [diff] [blame] | 4 | arch-arm/generic/bionic/memcmp.S \ |
| 5 | arch-arm/generic/bionic/memcpy.S \ |
| 6 | arch-arm/generic/bionic/memset.S \ |
| 7 | arch-arm/generic/bionic/strcmp.S \ |
| 8 | arch-arm/generic/bionic/strcpy.S \ |
| 9 | arch-arm/generic/bionic/strlen.c \ |
Elliott Hughes | 7c02d94 | 2014-09-16 19:06:31 -0700 | [diff] [blame] | 10 | |
Dan Willemsen | 268a673 | 2015-10-15 14:49:45 -0700 | [diff] [blame] | 11 | libc_bionic_src_files_exclude_arm += \ |
| 12 | bionic/__memcpy_chk.cpp \ |
| 13 | bionic/__memset_chk.cpp \ |
Elliott Hughes | 7c02d94 | 2014-09-16 19:06:31 -0700 | [diff] [blame] | 14 | |
Dan Willemsen | 268a673 | 2015-10-15 14:49:45 -0700 | [diff] [blame] | 15 | libc_openbsd_src_files_exclude_arm += \ |
| 16 | upstream-openbsd/lib/libc/string/strcpy.c \ |
Ying Wang | f25d677 | 2014-01-23 15:17:50 -0800 | [diff] [blame] | 17 | |
Ying Wang | f25d677 | 2014-01-23 15:17:50 -0800 | [diff] [blame] | 18 | # |
Elliott Hughes | 7c02d94 | 2014-09-16 19:06:31 -0700 | [diff] [blame] | 19 | # Inherently architecture-specific code. |
| 20 | # |
Ying Wang | f25d677 | 2014-01-23 15:17:50 -0800 | [diff] [blame] | 21 | |
Ying Wang | f25d677 | 2014-01-23 15:17:50 -0800 | [diff] [blame] | 22 | libc_bionic_src_files_arm += \ |
Christopher Ferris | 04954a4 | 2013-02-26 01:30:00 -0800 | [diff] [blame] | 23 | arch-arm/bionic/abort_arm.S \ |
| 24 | arch-arm/bionic/atomics_arm.c \ |
Elliott Hughes | 36d6188 | 2013-11-19 13:31:58 -0800 | [diff] [blame] | 25 | arch-arm/bionic/__bionic_clone.S \ |
Christopher Ferris | 04954a4 | 2013-02-26 01:30:00 -0800 | [diff] [blame] | 26 | arch-arm/bionic/_exit_with_stack_teardown.S \ |
Christopher Ferris | 04954a4 | 2013-02-26 01:30:00 -0800 | [diff] [blame] | 27 | arch-arm/bionic/libgcc_compat.c \ |
Josh Gao | 06b3f70 | 2015-08-21 16:59:31 -0700 | [diff] [blame] | 28 | arch-arm/bionic/popcount_tab.c \ |
Elliott Hughes | 36f451a | 2014-09-10 15:20:40 -0700 | [diff] [blame] | 29 | arch-arm/bionic/__restore.S \ |
Christopher Ferris | 04954a4 | 2013-02-26 01:30:00 -0800 | [diff] [blame] | 30 | arch-arm/bionic/setjmp.S \ |
Christopher Ferris | 04954a4 | 2013-02-26 01:30:00 -0800 | [diff] [blame] | 31 | arch-arm/bionic/syscall.S \ |
Elliott Hughes | 5891abd | 2015-08-07 18:27:47 -0700 | [diff] [blame] | 32 | arch-arm/bionic/vfork.S \ |
Christopher Ferris | 04954a4 | 2013-02-26 01:30:00 -0800 | [diff] [blame] | 33 | |
Elliott Hughes | 6e39ba7 | 2014-02-20 11:36:55 -0800 | [diff] [blame] | 34 | libc_arch_static_src_files_arm := arch-arm/bionic/exidx_static.c |
| 35 | libc_arch_dynamic_src_files_arm := arch-arm/bionic/exidx_dynamic.c |
Christopher Ferris | 04954a4 | 2013-02-26 01:30:00 -0800 | [diff] [blame] | 36 | |
Ying Wang | f25d677 | 2014-01-23 15:17:50 -0800 | [diff] [blame] | 37 | ## CPU variant specific source files |
| 38 | ifeq ($(strip $(TARGET_$(my_2nd_arch_prefix)CPU_VARIANT)),) |
| 39 | $(warning TARGET_$(my_2nd_arch_prefix)ARCH is arm, but TARGET_$(my_2nd_arch_prefix)CPU_VARIANT is not defined) |
Christopher Ferris | 04954a4 | 2013-02-26 01:30:00 -0800 | [diff] [blame] | 40 | endif |
Dan Willemsen | 268a673 | 2015-10-15 14:49:45 -0700 | [diff] [blame] | 41 | ifneq ($(TARGET_$(my_2nd_arch_prefix)CPU_VARIANT),generic) |
Ying Wang | f25d677 | 2014-01-23 15:17:50 -0800 | [diff] [blame] | 42 | cpu_variant_mk := $(LOCAL_PATH)/arch-arm/$(TARGET_$(my_2nd_arch_prefix)CPU_VARIANT)/$(TARGET_$(my_2nd_arch_prefix)CPU_VARIANT).mk |
| 43 | ifeq ($(wildcard $(cpu_variant_mk)),) |
Shu Zhang | 5b5d6e7 | 2014-03-12 11:18:41 +0800 | [diff] [blame] | 44 | $(error "TARGET_$(my_2nd_arch_prefix)CPU_VARIANT not set or set to an unknown value. Possible values are cortex-a7, cortex-a8, cortex-a9, cortex-a15, krait, denver. Use generic for devices that do not have a CPU similar to any of the supported cpu variants.") |
Ying Wang | f25d677 | 2014-01-23 15:17:50 -0800 | [diff] [blame] | 45 | endif |
| 46 | include $(cpu_variant_mk) |
| 47 | libc_common_additional_dependencies += $(cpu_variant_mk) |
Christopher Ferris | 04954a4 | 2013-02-26 01:30:00 -0800 | [diff] [blame] | 48 | |
Ying Wang | f25d677 | 2014-01-23 15:17:50 -0800 | [diff] [blame] | 49 | cpu_variant_mk := |
Dan Willemsen | 268a673 | 2015-10-15 14:49:45 -0700 | [diff] [blame] | 50 | endif |
Ying Wang | f25d677 | 2014-01-23 15:17:50 -0800 | [diff] [blame] | 51 | |
Elliott Hughes | 6e39ba7 | 2014-02-20 11:36:55 -0800 | [diff] [blame] | 52 | |
Ying Wang | f25d677 | 2014-01-23 15:17:50 -0800 | [diff] [blame] | 53 | libc_crt_target_cflags_arm := \ |
| 54 | -I$(LOCAL_PATH)/arch-arm/include \ |
| 55 | -mthumb-interwork |
| 56 | |
| 57 | libc_crt_target_so_cflags_arm := |
| 58 | |
| 59 | libc_crt_target_crtbegin_file_arm := \ |
| 60 | $(LOCAL_PATH)/arch-common/bionic/crtbegin.c |
| 61 | |
| 62 | libc_crt_target_crtbegin_so_file_arm := \ |
| 63 | $(LOCAL_PATH)/arch-common/bionic/crtbegin_so.c |