FindIconv.cmake 1.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. # Once done these will be defined:
  2. #
  3. # ICONV_FOUND
  4. # ICONV_INCLUDE_DIRS
  5. # ICONV_LIBRARIES
  6. find_package(PkgConfig QUIET)
  7. if (PKG_CONFIG_FOUND)
  8. pkg_check_modules(_ICONV QUIET iconv)
  9. endif()
  10. if(CMAKE_SIZEOF_VOID_P EQUAL 8)
  11. set(_lib_suffix 64)
  12. else()
  13. set(_lib_suffix 32)
  14. endif()
  15. set(ICONV_PATH_ARCH IconvPath${_lib_suffix})
  16. find_path(ICONV_INCLUDE_DIR
  17. NAMES iconv.h
  18. HINTS
  19. ${_ICONV_INCLUDE_DIRS}
  20. "${CMAKE_SOURCE_DIR}/additional_install_files/include"
  21. "$ENV{obsAdditionalInstallFiles}/include"
  22. ENV IconvPath
  23. ENV ${ICONV_PATH_ARCH}
  24. PATHS
  25. /usr/include /usr/local/include /opt/local/include /sw/include)
  26. find_library(ICONV_LIB
  27. NAMES ${_ICONV_LIBRARIES} iconv libiconv
  28. HINTS
  29. ${_ICONV_LIBRARY_DIRS}
  30. "${ICONV_INCLUDE_DIR}/../lib${_lib_suffix}"
  31. "${ICONV_INCLUDE_DIR}/../lib"
  32. "${ICONV_INCLUDE_DIR}/../libs${_lib_suffix}"
  33. "${ICONV_INCLUDE_DIR}/lib"
  34. "${ICONV_INCLUDE_DIR}/lib${_lib_suffix}"
  35. PATHS
  36. /usr/lib /usr/local/lib /opt/local/lib /sw/lib)
  37. include(FindPackageHandleStandardArgs)
  38. find_package_handle_standard_args(Iconv DEFAULT_MSG ICONV_LIB ICONV_INCLUDE_DIR)
  39. mark_as_advanced(ICONV_INCLUDE_DIR ICONV_LIB)
  40. if(ICONV_FOUND)
  41. set(ICONV_INCLUDE_DIRS ${ICONV_INCLUDE_DIR})
  42. set(ICONV_LIBRARIES ${ICONV_LIB})
  43. endif()