154 lines
3.8 KiB
Plaintext
154 lines
3.8 KiB
Plaintext
// 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.
|
|
|
|
package {
|
|
default_applicable_licenses: ["external_fdlibm_license"],
|
|
}
|
|
|
|
// Added automatically by a large-scale-change
|
|
license {
|
|
name: "external_fdlibm_license",
|
|
visibility: [":__subpackages__"],
|
|
license_kinds: [
|
|
"SPDX-license-identifier-BSD",
|
|
],
|
|
license_text: [
|
|
"NOTICE",
|
|
],
|
|
}
|
|
|
|
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.
|
|
"-Werror",
|
|
"-Wno-sign-compare",
|
|
"-Wno-dangling-else",
|
|
"-Wno-unknown-pragmas",
|
|
|
|
"-Wno-dangling-else",
|
|
"-Wno-logical-op-parentheses",
|
|
"-Wno-sometimes-uninitialized",
|
|
],
|
|
|
|
apex_available: [
|
|
"com.android.art",
|
|
"com.android.art.debug",
|
|
],
|
|
min_sdk_version: "S",
|
|
}
|