diff options
Diffstat (limited to 'cmake/FindWrapDoubleConversion.cmake')
-rw-r--r-- | cmake/FindWrapDoubleConversion.cmake | 23 |
1 files changed, 15 insertions, 8 deletions
diff --git a/cmake/FindWrapDoubleConversion.cmake b/cmake/FindWrapDoubleConversion.cmake index c93525af23..749965a7b8 100644 --- a/cmake/FindWrapDoubleConversion.cmake +++ b/cmake/FindWrapDoubleConversion.cmake @@ -1,5 +1,15 @@ include(CheckCXXSourceCompiles) +add_library(WrapDoubleConversion INTERFACE) + +find_package(double-conversion) +if (double-conversion_FOUND) + set_package_properties(double-conversion PROPERTIES TYPE REQUIRED) + target_link_libraries(WrapDoubleConversion INTERFACE double-conversion::double-conversion) + set(WrapDoubleConversion_FOUND 1) + return() +endif() + check_cxx_source_compiles(" #include <stdio.h> #include <locale.h> @@ -25,12 +35,9 @@ int main(int argc, char *argv[]) { return 0; }" HAVE_SPRINTF_L) -add_library(WrapDoubleConversion INTERFACE) -if (NOT HAVE__SPRINTF_L AND NOT HAVE_SPRINTF_L) - find_package(double-conversion) - set_package_properties(double-conversion PROPERTIES TYPE REQUIRED) - target_link_libraries(WrapDoubleConversion INTERFACE double-conversion::double-conversion) +if (HAVE__SPRINTF_L OR HAVE_SPRINTF_L) + target_compile_definitions(WrapDoubleConversion INTERFACE QT_NO_DOUBLECONVERSION) + set(WrapDoubleConversion_FOUND 1) +else() + set(WrapDoubleConversion_FOUND 0) endif() - -set(WrapDoubleConversion_FOUND 1) - |