diff --git a/src/libm/CMakeLists.txt b/src/libm/CMakeLists.txt index 70a6ae48..6889a7ef 100644 --- a/src/libm/CMakeLists.txt +++ b/src/libm/CMakeLists.txt @@ -981,29 +981,28 @@ endif() # TARGET_LIBSLEEFSCALAR # -------------------------------------------------------------------- # Build scalar-only library from sleefdp.c and sleefsp.c +if(SLEEF_BUILD_SCALAR_LIB) + if(SLEEF_BUILD_SHARED_LIBS) + add_library(sleefscalar SHARED sleefdp.c sleefsp.c rempitab.c) + else() + add_library(sleefscalar STATIC sleefdp.c sleefsp.c rempitab.c) + endif() + add_dependencies(sleefscalar ${TARGET_HEADERS}) + set_target_properties(sleefscalar PROPERTIES + VERSION ${SLEEF_VERSION} + SOVERSION ${SLEEF_SOVERSION} + PUBLIC_HEADER ${SLEEF_INCLUDE_HEADER} + ${COMMON_TARGET_PROPERTIES} + ) -if(SLEEF_BUILD_SHARED_LIBS) - add_library(sleefscalar SHARED sleefdp.c sleefsp.c rempitab.c) -else() - add_library(sleefscalar STATIC sleefdp.c sleefsp.c rempitab.c) -endif() -add_dependencies(sleefscalar ${TARGET_HEADERS}) -set_target_properties(sleefscalar PROPERTIES - VERSION ${SLEEF_VERSION} - SOVERSION ${SLEEF_SOVERSION} - PUBLIC_HEADER ${SLEEF_INCLUDE_HEADER} - ${COMMON_TARGET_PROPERTIES} -) - -target_compile_definitions(sleefscalar - PRIVATE DORENAME=1 ${COMMON_TARGET_DEFINITIONS} -) + target_compile_definitions(sleefscalar + PRIVATE DORENAME=1 ${COMMON_TARGET_DEFINITIONS} + ) -if(COMPILER_SUPPORTS_BUILTIN_MATH) - target_compile_definitions(sleefscalar PRIVATE ENABLE_BUILTIN_MATH=1) -endif() + if(COMPILER_SUPPORTS_BUILTIN_MATH) + target_compile_definitions(sleefscalar PRIVATE ENABLE_BUILTIN_MATH=1) + endif() -if(SLEEF_BUILD_SCALAR_LIB) install( TARGETS sleefscalar EXPORT sleefTargets diff --git a/src/libm/sleefdp.c b/src/libm/sleefdp.c index 985073a9..e5ffd857 100644 --- a/src/libm/sleefdp.c +++ b/src/libm/sleefdp.c @@ -28,9 +28,9 @@ extern const double Sleef_rempitabdp[]; #if defined(_MSC_VER) && !defined (__clang__) #pragma fp_contract (off) -#endif - +#else #pragma STDC FP_CONTRACT OFF +#endif #define MLA mla #define C2V(x) (x) diff --git a/src/libm/sleefinline_header.h.org b/src/libm/sleefinline_header.h.org index df0c8215..0b19d593 100644 --- a/src/libm/sleefinline_header.h.org +++ b/src/libm/sleefinline_header.h.org @@ -18,9 +18,9 @@ #if defined(_MSC_VER) && !defined (__clang__) #pragma fp_contract (off) -#endif - +#else #pragma STDC FP_CONTRACT OFF +#endif #ifndef SLEEF_FP_ILOGB0 #define SLEEF_FP_ILOGB0 ((int)0x80000000) diff --git a/src/libm/sleefsimddp.c b/src/libm/sleefsimddp.c index 9b837fe4..ef6cfc13 100644 --- a/src/libm/sleefsimddp.c +++ b/src/libm/sleefsimddp.c @@ -23,9 +23,9 @@ extern const double Sleef_rempitabdp[]; #if defined(_MSC_VER) && !defined (__clang__) #pragma fp_contract (off) -#endif - +#else #pragma STDC FP_CONTRACT OFF +#endif // Intel diff --git a/src/libm/sleefsimdsp.c b/src/libm/sleefsimdsp.c index d9e9100c..c3168d33 100644 --- a/src/libm/sleefsimdsp.c +++ b/src/libm/sleefsimdsp.c @@ -23,9 +23,9 @@ extern const float Sleef_rempitabsp[]; #if defined(_MSC_VER) && !defined (__clang__) #pragma fp_contract (off) -#endif - +#else #pragma STDC FP_CONTRACT OFF +#endif // Intel diff --git a/src/libm/sleefsp.c b/src/libm/sleefsp.c index aa325f42..7d53b573 100644 --- a/src/libm/sleefsp.c +++ b/src/libm/sleefsp.c @@ -28,9 +28,9 @@ extern const float Sleef_rempitabsp[]; #if defined(_MSC_VER) && !defined (__clang__) #pragma fp_contract (off) -#endif - +#else #pragma STDC FP_CONTRACT OFF +#endif #define MLA mlaf #define C2V(x) (x) diff --git a/src/quad/sleefquadinline_cuda_header.h.org b/src/quad/sleefquadinline_cuda_header.h.org index d815a729..15ee0cce 100644 --- a/src/quad/sleefquadinline_cuda_header.h.org +++ b/src/quad/sleefquadinline_cuda_header.h.org @@ -17,6 +17,8 @@ #if defined(_MSC_VER) && !defined (__clang__) #pragma fp_contract (off) +#else +#pragma STDC FP_CONTRACT OFF #endif __device__ const double Sleef_rempitabqp[] = { diff --git a/src/quad/sleefquadinline_header.h.org b/src/quad/sleefquadinline_header.h.org index 0986f6fb..80fd2225 100644 --- a/src/quad/sleefquadinline_header.h.org +++ b/src/quad/sleefquadinline_header.h.org @@ -18,9 +18,9 @@ #if defined(_MSC_VER) && !defined (__clang__) #pragma fp_contract (off) -#endif - +#else #pragma STDC FP_CONTRACT OFF +#endif #ifndef SLEEF_FP_ILOGB0 #define SLEEF_FP_ILOGB0 ((int)0x80000000) diff --git a/src/quad/sleefsimdqp.c b/src/quad/sleefsimdqp.c index 5a7f267d..3134c14c 100644 --- a/src/quad/sleefsimdqp.c +++ b/src/quad/sleefsimdqp.c @@ -23,9 +23,9 @@ extern const double Sleef_rempitabqp[]; #if defined(_MSC_VER) && !defined (__clang__) #pragma fp_contract (off) -#endif - +#else #pragma STDC FP_CONTRACT OFF +#endif #ifdef ENABLE_PUREC_SCALAR #define CONFIG 1