@@ -226,11 +226,15 @@ macro(astcenc_set_properties ASTCENC_TARGET_NAME ASTCENC_VENEER_TYPE)
226226 target_compile_options (${ASTCENC_TARGET_NAME}
227227 PRIVATE
228228 $<${is_msvccl} :/fp :precise >
229- $<${is_clangcl} :/fp :precise >
230229 $<$<AND :${is_msvccl} ,$<VERSION_GREATER_EQUAL :$<CXX_COMPILER_VERSION >,19.30>>:/fp :contract >
230+
231+ $<${is_clangcl} :/fp :precise >
231232 $<$<AND :${is_clangcl} ,$<VERSION_GREATER_EQUAL :$<CXX_COMPILER_VERSION >,14.0.0>>:-Xclang -ffp -contract =fast >
233+
232234 $<$<AND :${is_clang} ,$<VERSION_GREATER_EQUAL :$<CXX_COMPILER_VERSION >,10.0.0>>:-fno -unsafe -math -optimizations >
233- $<${is_gnu_fe} :-ffp -contract =fast >)
235+
236+ $<${is_gnu_fe} :-ffp -contract =fast >
237+ $<${is_gnu_fe} :-fno -math -errno >)
234238 else ()
235239 # For Visual Studio prior to 2022 (compiler < 19.30) /fp:strict
236240 # For Visual Studio 2022 (compiler >= 19.30) /fp:precise
@@ -242,10 +246,14 @@ macro(astcenc_set_properties ASTCENC_TARGET_NAME ASTCENC_VENEER_TYPE)
242246 PRIVATE
243247 $<$<AND :${is_msvccl} ,$<VERSION_LESS :$<CXX_COMPILER_VERSION >,19.30>>:/fp :strict >
244248 $<$<AND :${is_msvccl} ,$<VERSION_GREATER_EQUAL :$<CXX_COMPILER_VERSION >,19.30>>:/fp :precise >
249+
245250 $<${is_clangcl} :/fp :precise >
246251 $<$<AND :${is_clangcl} ,$<VERSION_GREATER_EQUAL :$<CXX_COMPILER_VERSION >,14.0.0>>:-Xclang -ffp -contract =off >
252+
247253 $<$<AND :${is_clang} ,$<VERSION_GREATER_EQUAL :$<CXX_COMPILER_VERSION >,10.0.0>>:-fno -unsafe -math -optimizations >
248- $<${is_gnu_fe} :-ffp -contract =off >)
254+
255+ $<${is_gnu_fe} :-ffp -contract =off >
256+ $<${is_gnu_fe} :-fno -math -errno >)
249257 endif ()
250258
251259 if (${ASTCENC_CLI} )
0 commit comments