Merge "Convert external/fdlibm to Android.bp" am: 5a2abfb2d7
am: 4e6306a392

Change-Id: I10275ced942cdbbedbd5e0d22a2e380d86887c94
diff --git a/Android.bp b/Android.bp
new file mode 100644
index 0000000..0e75a44
--- /dev/null
+++ b/Android.bp
@@ -0,0 +1,130 @@
+// Copyright (C) 2007 The Android Open Source Project
+//
+// Licensed 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.
+
+cc_library_static {
+    name: "libfdlibm",
+    host_supported: true,
+
+    srcs: [
+        "k_standard.c",
+        "k_rem_pio2.c",
+        "k_cos.c",
+        "k_sin.c",
+        "k_tan.c",
+        "e_acos.c",
+        "e_acosh.c",
+        "e_asin.c",
+        "e_atan2.c",
+        "e_atanh.c",
+        "e_cosh.c",
+        "e_exp.c",
+        "e_fmod.c",
+        "e_gamma.c",
+        "e_gamma_r.c",
+        "e_hypot.c",
+        "e_j0.c",
+        "e_j1.c",
+        "e_jn.c",
+        "e_lgamma.c",
+        "e_lgamma_r.c",
+        "e_log.c",
+        "e_log10.c",
+        "e_pow.c",
+        "e_rem_pio2.c",
+        "e_remainder.c",
+        "e_scalb.c",
+        "e_sinh.c",
+        "e_sqrt.c",
+        "w_acos.c",
+        "w_acosh.c",
+        "w_asin.c",
+        "w_atan2.c",
+        "w_atanh.c",
+        "w_cosh.c",
+        "w_exp.c",
+        "w_fmod.c",
+        "w_gamma.c",
+        "w_gamma_r.c",
+        "w_hypot.c",
+        "w_j0.c",
+        "w_j1.c",
+        "w_jn.c",
+        "w_lgamma.c",
+        "w_lgamma_r.c",
+        "w_log.c",
+        "w_log10.c",
+        "w_pow.c",
+        "w_remainder.c",
+        "w_scalb.c",
+        "w_sinh.c",
+        "w_sqrt.c",
+        "s_asinh.c",
+        "s_atan.c",
+        "s_cbrt.c",
+        "s_ceil.c",
+        "s_copysign.c",
+        "s_cos.c",
+        "s_erf.c",
+        "s_expm1.c",
+        "s_fabs.c",
+        "s_finite.c",
+        "s_floor.c",
+        "s_frexp.c",
+        "s_ilogb.c",
+        "s_isnan.c",
+        "s_ldexp.c",
+        "s_lib_version.c",
+        "s_log1p.c",
+        "s_logb.c",
+        "s_matherr.c",
+        "s_modf.c",
+        "s_nextafter.c",
+        "s_rint.c",
+        "s_scalbn.c",
+        "s_signgam.c",
+        "s_significand.c",
+        "s_sin.c",
+        "s_tan.c",
+        "s_tanh.c",
+    ],
+
+    // c99 specifies a less relaxed floating point model that does not
+    // enable floating point expession contraction (e.g: fused multiply-add
+    // operations).
+    c_std: "c99",
+
+    cflags: [
+        // This is necessary to guarantee that the FDLIBM functions are in
+        // "IEEE spirit", i.e. to guarantee that the IEEE 754 core functions
+        // are used.
+        "-D_IEEE_LIBM",
+
+        // Android only supports little-endian.
+        "-D__LITTLE_ENDIAN",
+
+        // Disable compiler optimizations that interact badly with this crufty
+        // library (see their own admission in 'readme'). Without this, we
+        // fail StrictMath tests on x86.
+        "-fno-strict-aliasing",
+
+        // Disable warnings. We need a specific version of fdlibm and can't fix this upstream.
+        "-Wno-sign-compare",
+        "-Wno-dangling-else",
+        "-Wno-unknown-pragmas",
+
+        "-Wno-dangling-else",
+        "-Wno-logical-op-parentheses",
+        "-Wno-sometimes-uninitialized",
+    ],
+}
diff --git a/Android.mk b/Android.mk
deleted file mode 100644
index 716259b..0000000
--- a/Android.mk
+++ /dev/null
@@ -1,86 +0,0 @@
-# Copyright (C) 2007 The Android Open Source Project
-#
-# Licensed 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.
-
-LOCAL_PATH:= $(call my-dir)
-
-#
-# Common definitions for host and device.
-#
-
-src_files := \
-	k_standard.c k_rem_pio2.c \
-	k_cos.c k_sin.c k_tan.c \
-	e_acos.c e_acosh.c e_asin.c e_atan2.c \
-	e_atanh.c e_cosh.c e_exp.c e_fmod.c \
-	e_gamma.c e_gamma_r.c e_hypot.c e_j0.c \
-	e_j1.c e_jn.c e_lgamma.c e_lgamma_r.c \
-	e_log.c e_log10.c e_pow.c e_rem_pio2.c e_remainder.c \
-	e_scalb.c e_sinh.c e_sqrt.c \
-	w_acos.c w_acosh.c w_asin.c w_atan2.c \
-	w_atanh.c w_cosh.c w_exp.c w_fmod.c \
-	w_gamma.c w_gamma_r.c w_hypot.c w_j0.c \
-	w_j1.c w_jn.c w_lgamma.c w_lgamma_r.c \
-	w_log.c w_log10.c w_pow.c w_remainder.c \
-	w_scalb.c w_sinh.c w_sqrt.c \
-	s_asinh.c s_atan.c s_cbrt.c s_ceil.c s_copysign.c \
-	s_cos.c s_erf.c s_expm1.c s_fabs.c s_finite.c s_floor.c \
-	s_frexp.c s_ilogb.c s_isnan.c s_ldexp.c s_lib_version.c \
-	s_log1p.c s_logb.c s_matherr.c s_modf.c s_nextafter.c \
-	s_rint.c s_scalbn.c s_signgam.c s_significand.c s_sin.c \
-	s_tan.c s_tanh.c
-
-# This is necessary to guarantee that the FDLIBM functions are in
-# "IEEE spirit", i.e. to guarantee that the IEEE 754 core functions
-# are used.
-cflags := -D_IEEE_LIBM
-
-# Android only supports little-endian.
-cflags += -D__LITTLE_ENDIAN
-
-# Disable compiler optimizations that interact badly with this crufty
-# library (see their own admission in 'readme'). Without this, we
-# fail StrictMath tests on x86.
-cflags += -fno-strict-aliasing
-
-# c99 specifies a less relaxed floating point model that does not enable
-# floating point expession contraction (e.g: fused multiply-add operations).
-cflags += -std=c99
-
-# Disable warnings. We need a specific version of fdlibm and can't fix this upstream.
-cflags += -Wno-sign-compare -Wno-dangling-else -Wno-unknown-pragmas
-clang_cflags := -Wno-dangling-else -Wno-logical-op-parentheses -Wno-sometimes-uninitialized
-
-#
-# Build for the target (device).
-#
-
-include $(CLEAR_VARS)
-LOCAL_CFLAGS := $(cflags)
-LOCAL_CLANG_CFLAGS := $(clang_cflags)
-LOCAL_MODULE := libfdlibm
-LOCAL_SRC_FILES:= $(src_files)
-include $(BUILD_STATIC_LIBRARY)
-
-
-#
-# Build for the host.
-#
-
-include $(CLEAR_VARS)
-LOCAL_CFLAGS := $(cflags)
-LOCAL_CLANG_CFLAGS := $(clang_cflags)
-LOCAL_MODULE := libfdlibm
-LOCAL_MULTILIB := both
-LOCAL_SRC_FILES:= $(src_files)
-include $(BUILD_HOST_STATIC_LIBRARY)