Changeset View
Changeset View
Standalone View
Standalone View
intern/libc_compat/libc_compat.c
| /* SPDX-License-Identifier: GPL-2.0-or-later | /* SPDX-License-Identifier: GPL-2.0-or-later | ||||
| * Copyright 2020 Blender Foundation. All rights reserved. */ | * Copyright 2020 Blender Foundation. All rights reserved. */ | ||||
| /* On Linux, precompiled libraries may be made with an glibc version that is | /* On Linux, precompiled libraries may be made with an glibc version that is | ||||
| * incompatible with the system libraries that Blender is built on. To solve | * incompatible with the system libraries that Blender is built on. To solve | ||||
| * this we add a few -ffast-math symbols that can be missing. */ | * this we add a few -ffast-math symbols that can be missing. */ | ||||
| /** \file | /** \file | ||||
| * \ingroup intern_libc_compat | * \ingroup intern_libc_compat | ||||
| */ | */ | ||||
| #ifdef __linux__ | #ifdef __linux__ | ||||
| # include <features.h> | # include <features.h> | ||||
| # include <math.h> | # include <math.h> | ||||
| # if defined(__GLIBC__) | |||||
| # if defined(__GLIBC_PREREQ) && __GLIBC_PREREQ(2, 31) | # if defined(__GLIBC_PREREQ) && __GLIBC_PREREQ(2, 31) | ||||
| # endif /* __GLIBC__ */ | |||||
| double __exp_finite(double x); | double __exp_finite(double x); | ||||
| double __exp2_finite(double x); | double __exp2_finite(double x); | ||||
| double __acos_finite(double x); | double __acos_finite(double x); | ||||
| double __asin_finite(double x); | double __asin_finite(double x); | ||||
| double __log2_finite(double x); | double __log2_finite(double x); | ||||
| double __log10_finite(double x); | double __log10_finite(double x); | ||||
| double __log_finite(double x); | double __log_finite(double x); | ||||
| ▲ Show 20 Lines • Show All 82 Lines • ▼ Show 20 Lines | float __logf_finite(float x) | ||||
| return logf(x); | return logf(x); | ||||
| } | } | ||||
| float __powf_finite(float x, float y) | float __powf_finite(float x, float y) | ||||
| { | { | ||||
| return powf(x, y); | return powf(x, y); | ||||
| } | } | ||||
| # if defined(__GLIBC__) | |||||
| # endif /* __GLIBC_PREREQ */ | # endif /* __GLIBC_PREREQ */ | ||||
| # endif /* __GLIBC__ */ | |||||
| #endif /* __linux__ */ | #endif /* __linux__ */ | ||||