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 += \ |
Yingshiuan Pan | 120bf18 | 2015-04-23 04:07:59 +0100 | [diff] [blame] | 4 | arch-arm/generic/bionic/memchr.S \ |
Dan Willemsen | 268a673 | 2015-10-15 14:49:45 -0700 | [diff] [blame] | 5 | arch-arm/generic/bionic/memcmp.S \ |
| 6 | arch-arm/generic/bionic/memcpy.S \ |
| 7 | arch-arm/generic/bionic/memset.S \ |
| 8 | arch-arm/generic/bionic/strcmp.S \ |
| 9 | arch-arm/generic/bionic/strcpy.S \ |
| 10 | arch-arm/generic/bionic/strlen.c \ |
Elliott Hughes | 7c02d94 | 2014-09-16 19:06:31 -0700 | [diff] [blame] | 11 | |
Dan Willemsen | 268a673 | 2015-10-15 14:49:45 -0700 | [diff] [blame] | 12 | libc_bionic_src_files_exclude_arm += \ |
| 13 | bionic/__memcpy_chk.cpp \ |
| 14 | bionic/__memset_chk.cpp \ |
Elliott Hughes | 7c02d94 | 2014-09-16 19:06:31 -0700 | [diff] [blame] | 15 | |
Dan Willemsen | 268a673 | 2015-10-15 14:49:45 -0700 | [diff] [blame] | 16 | libc_openbsd_src_files_exclude_arm += \ |
Yingshiuan Pan | 120bf18 | 2015-04-23 04:07:59 +0100 | [diff] [blame] | 17 | upstream-openbsd/lib/libc/string/memchr.c \ |
| 18 | upstream-openbsd/lib/libc/string/strcpy.c |
Ying Wang | f25d677 | 2014-01-23 15:17:50 -0800 | [diff] [blame] | 19 | |
Ying Wang | f25d677 | 2014-01-23 15:17:50 -0800 | [diff] [blame] | 20 | # |
Elliott Hughes | 7c02d94 | 2014-09-16 19:06:31 -0700 | [diff] [blame] | 21 | # Inherently architecture-specific code. |
| 22 | # |
Ying Wang | f25d677 | 2014-01-23 15:17:50 -0800 | [diff] [blame] | 23 | |
Ying Wang | f25d677 | 2014-01-23 15:17:50 -0800 | [diff] [blame] | 24 | libc_bionic_src_files_arm += \ |
Christopher Ferris | 04954a4 | 2013-02-26 01:30:00 -0800 | [diff] [blame] | 25 | arch-arm/bionic/abort_arm.S \ |
| 26 | arch-arm/bionic/atomics_arm.c \ |
Elliott Hughes | 36d6188 | 2013-11-19 13:31:58 -0800 | [diff] [blame] | 27 | arch-arm/bionic/__bionic_clone.S \ |
Christopher Ferris | 04954a4 | 2013-02-26 01:30:00 -0800 | [diff] [blame] | 28 | arch-arm/bionic/_exit_with_stack_teardown.S \ |
Christopher Ferris | 04954a4 | 2013-02-26 01:30:00 -0800 | [diff] [blame] | 29 | arch-arm/bionic/libgcc_compat.c \ |
Josh Gao | 06b3f70 | 2015-08-21 16:59:31 -0700 | [diff] [blame] | 30 | arch-arm/bionic/popcount_tab.c \ |
Elliott Hughes | 36f451a | 2014-09-10 15:20:40 -0700 | [diff] [blame] | 31 | arch-arm/bionic/__restore.S \ |
Christopher Ferris | 04954a4 | 2013-02-26 01:30:00 -0800 | [diff] [blame] | 32 | arch-arm/bionic/setjmp.S \ |
Christopher Ferris | 04954a4 | 2013-02-26 01:30:00 -0800 | [diff] [blame] | 33 | arch-arm/bionic/syscall.S \ |
Elliott Hughes | 5891abd | 2015-08-07 18:27:47 -0700 | [diff] [blame] | 34 | arch-arm/bionic/vfork.S \ |
Christopher Ferris | 04954a4 | 2013-02-26 01:30:00 -0800 | [diff] [blame] | 35 | |
Elliott Hughes | 6e39ba7 | 2014-02-20 11:36:55 -0800 | [diff] [blame] | 36 | libc_arch_static_src_files_arm := arch-arm/bionic/exidx_static.c |
| 37 | libc_arch_dynamic_src_files_arm := arch-arm/bionic/exidx_dynamic.c |
Christopher Ferris | 04954a4 | 2013-02-26 01:30:00 -0800 | [diff] [blame] | 38 | |
Ying Wang | f25d677 | 2014-01-23 15:17:50 -0800 | [diff] [blame] | 39 | ## CPU variant specific source files |
| 40 | ifeq ($(strip $(TARGET_$(my_2nd_arch_prefix)CPU_VARIANT)),) |
| 41 | $(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] | 42 | endif |
Dan Willemsen | 268a673 | 2015-10-15 14:49:45 -0700 | [diff] [blame] | 43 | ifneq ($(TARGET_$(my_2nd_arch_prefix)CPU_VARIANT),generic) |
Ying Wang | f25d677 | 2014-01-23 15:17:50 -0800 | [diff] [blame] | 44 | cpu_variant_mk := $(LOCAL_PATH)/arch-arm/$(TARGET_$(my_2nd_arch_prefix)CPU_VARIANT)/$(TARGET_$(my_2nd_arch_prefix)CPU_VARIANT).mk |
| 45 | ifeq ($(wildcard $(cpu_variant_mk)),) |
Steve Kondik | 32822a4 | 2013-08-09 21:56:10 -0700 | [diff] [blame] | 46 | $(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, scorpion, 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] | 47 | endif |
| 48 | include $(cpu_variant_mk) |
| 49 | libc_common_additional_dependencies += $(cpu_variant_mk) |
Christopher Ferris | 04954a4 | 2013-02-26 01:30:00 -0800 | [diff] [blame] | 50 | |
Ying Wang | f25d677 | 2014-01-23 15:17:50 -0800 | [diff] [blame] | 51 | cpu_variant_mk := |
Dan Willemsen | 268a673 | 2015-10-15 14:49:45 -0700 | [diff] [blame] | 52 | endif |
Ying Wang | f25d677 | 2014-01-23 15:17:50 -0800 | [diff] [blame] | 53 | |
Elliott Hughes | 6e39ba7 | 2014-02-20 11:36:55 -0800 | [diff] [blame] | 54 | |
Ying Wang | f25d677 | 2014-01-23 15:17:50 -0800 | [diff] [blame] | 55 | libc_crt_target_cflags_arm := \ |
| 56 | -I$(LOCAL_PATH)/arch-arm/include \ |
| 57 | -mthumb-interwork |
| 58 | |
| 59 | libc_crt_target_so_cflags_arm := |
| 60 | |
| 61 | libc_crt_target_crtbegin_file_arm := \ |
| 62 | $(LOCAL_PATH)/arch-common/bionic/crtbegin.c |
| 63 | |
| 64 | libc_crt_target_crtbegin_so_file_arm := \ |
| 65 | $(LOCAL_PATH)/arch-common/bionic/crtbegin_so.c |