1#
2# Copyright (C) 2011 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)
19include $(LOCAL_PATH)/../libbcc-config.mk
20
21#=====================================================================
22# Device Static Library: libbccCompilerRT
23#=====================================================================
24
25include $(CLEAR_VARS)
26
27LOCAL_MODULE := libbccCompilerRT
28LOCAL_MODULE_TAGS := optional
29LOCAL_MODULE_CLASS := STATIC_LIBRARIES
30
31ifeq ($(TARGET_ARCH),arm)
32  LOCAL_SRC_FILES += \
33    lib/arm/adddf3vfp.S \
34    lib/arm/addsf3vfp.S \
35    lib/arm/divdf3vfp.S \
36    lib/arm/divsf3vfp.S \
37    lib/arm/eqdf2vfp.S \
38    lib/arm/eqsf2vfp.S \
39    lib/arm/extendsfdf2vfp.S \
40    lib/arm/fixdfsivfp.S \
41    lib/arm/fixsfsivfp.S \
42    lib/arm/fixunsdfsivfp.S \
43    lib/arm/fixunssfsivfp.S \
44    lib/arm/floatsidfvfp.S \
45    lib/arm/floatsisfvfp.S \
46    lib/arm/floatunssidfvfp.S \
47    lib/arm/floatunssisfvfp.S \
48    lib/arm/gedf2vfp.S \
49    lib/arm/gesf2vfp.S \
50    lib/arm/gtdf2vfp.S \
51    lib/arm/gtsf2vfp.S \
52    lib/arm/ledf2vfp.S \
53    lib/arm/lesf2vfp.S \
54    lib/arm/ltdf2vfp.S \
55    lib/arm/ltsf2vfp.S \
56    lib/arm/muldf3vfp.S \
57    lib/arm/mulsf3vfp.S \
58    lib/arm/nedf2vfp.S \
59    lib/arm/negdf2vfp.S \
60    lib/arm/negsf2vfp.S \
61    lib/arm/nesf2vfp.S \
62    lib/arm/subdf3vfp.S \
63    lib/arm/subsf3vfp.S \
64    lib/arm/truncdfsf2vfp.S \
65    lib/arm/unorddf2vfp.S \
66    lib/arm/unordsf2vfp.S
67else
68  ifeq ($(TARGET_ARCH),x86) # We don't support x86-64 right now
69    LOCAL_SRC_FILES += \
70      lib/i386/ashldi3.S \
71      lib/i386/ashrdi3.S \
72      lib/i386/divdi3.S \
73      lib/i386/floatdidf.S \
74      lib/i386/floatdisf.S \
75      lib/i386/floatdixf.S \
76      lib/i386/floatundidf.S \
77      lib/i386/floatundisf.S \
78      lib/i386/floatundixf.S \
79      lib/i386/lshrdi3.S \
80      lib/i386/moddi3.S \
81      lib/i386/muldi3.S \
82      lib/i386/udivdi3.S \
83      lib/i386/umoddi3.S
84  else
85    $(error Unsupported TARGET_ARCH $(TARGET_ARCH))
86  endif
87endif
88
89include $(LIBBCC_ROOT_PATH)/libbcc-build-rules.mk
90include $(BUILD_STATIC_LIBRARY)
91