• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1#
2# Copyright (C) 2012 The Android Open Source Project
3#
4# Licensed under the Apache License, Version 2.0 (the "License");
5# you may not use this file except in compliance with the License.
6# You may obtain a copy of the License at
7#
8#      http://www.apache.org/licenses/LICENSE-2.0
9#
10# Unless required by applicable law or agreed to in writing, software
11# distributed under the License is distributed on an "AS IS" BASIS,
12# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13# See the License for the specific language governing permissions and
14# limitations under the License.
15#
16#
17
18LOCAL_PATH := $(call my-dir)
19COMPILER_RT_PATH := $(LOCAL_PATH)
20
21#=====================================================================
22# Device Static Library: libbccCompilerRT
23#=====================================================================
24
25include $(CLEAR_VARS)
26
27LOCAL_MODULE := libcompiler-rt
28LOCAL_MODULE_TAGS := optional
29LOCAL_MODULE_CLASS := STATIC_LIBRARIES
30LOCAL_CLANG := true
31LOCAL_CFLAGS := -integrated-as
32
33# Pull in platform-independent functionality
34LOCAL_WHOLE_STATIC_LIBRARIES += libcompiler-rt-builtins libcompiler-rt-extras
35
36ifeq ($(TARGET_ARCH),arm)
37  LOCAL_SRC_FILES += \
38    lib/arm/adddf3vfp.S \
39    lib/arm/addsf3vfp.S \
40    lib/arm/divdf3vfp.S \
41    lib/arm/divsf3vfp.S \
42    lib/arm/eqdf2vfp.S \
43    lib/arm/eqsf2vfp.S \
44    lib/arm/extendsfdf2vfp.S \
45    lib/arm/fixdfsivfp.S \
46    lib/arm/fixsfsivfp.S \
47    lib/arm/fixunsdfsivfp.S \
48    lib/arm/fixunssfsivfp.S \
49    lib/arm/floatsidfvfp.S \
50    lib/arm/floatsisfvfp.S \
51    lib/arm/floatunssidfvfp.S \
52    lib/arm/floatunssisfvfp.S \
53    lib/arm/gedf2vfp.S \
54    lib/arm/gesf2vfp.S \
55    lib/arm/gtdf2vfp.S \
56    lib/arm/gtsf2vfp.S \
57    lib/arm/ledf2vfp.S \
58    lib/arm/lesf2vfp.S \
59    lib/arm/ltdf2vfp.S \
60    lib/arm/ltsf2vfp.S \
61    lib/arm/muldf3vfp.S \
62    lib/arm/mulsf3vfp.S \
63    lib/arm/nedf2vfp.S \
64    lib/arm/negdf2vfp.S \
65    lib/arm/negsf2vfp.S \
66    lib/arm/nesf2vfp.S \
67    lib/arm/subdf3vfp.S \
68    lib/arm/subsf3vfp.S \
69    lib/arm/truncdfsf2vfp.S \
70    lib/arm/unorddf2vfp.S \
71    lib/arm/unordsf2vfp.S
72else
73  ifeq ($(TARGET_ARCH),x86) # We don't support x86-64 right now
74    LOCAL_SRC_FILES += \
75      lib/i386/ashldi3.S \
76      lib/i386/ashrdi3.S \
77      lib/i386/divdi3.S \
78      lib/i386/floatdidf.S \
79      lib/i386/floatdisf.S \
80      lib/i386/floatdixf.S \
81      lib/i386/floatundidf.S \
82      lib/i386/floatundisf.S \
83      lib/i386/floatundixf.S \
84      lib/i386/lshrdi3.S \
85      lib/i386/moddi3.S \
86      lib/i386/muldi3.S \
87      lib/i386/udivdi3.S \
88      lib/i386/umoddi3.S
89  else
90    ifeq ($(TARGET_ARCH),mips)
91      # nothing to add
92    else
93      $(error Unsupported TARGET_ARCH $(TARGET_ARCH))
94    endif
95  endif
96endif
97
98include $(BUILD_STATIC_LIBRARY)
99
100include $(COMPILER_RT_PATH)/lib/Android.mk
101
102include $(COMPILER_RT_PATH)/lib/asan/Android.mk
103