diff --git a/ConfigureChecks.cmake b/ConfigureChecks.cmake index 5914777..d8fe7e1 100644 --- a/ConfigureChecks.cmake +++ b/ConfigureChecks.cmake @@ -337,9 +337,25 @@ if( BUILD_XCF ) check_include_file( "iconv.h" HAVE_ICONV_H ) if( NOT HAVE_ICONV_H ) - tde_message_fatal( "xcf codec was requested but libiconv not found on your system" ) + tde_message_fatal( "xcf codec was requested but iconv header not found on your system" ) endif( ) - set( HAVE_ICONV 1 ) + + message( STATUS "Check for standalone libiconv" ) + find_library( HAVE_LIBICONV iconv ) + if( HAVE_LIBICONV ) + set( ICONV_LIBRARIES iconv ) + message( STATUS "Check for standalone libiconv - found" ) + else( ) + set( ICONV_LIBRARIES "" ) + message( STATUS "Check for standalone libiconv - not found" ) + endif( ) + + tde_save_and_set( CMAKE_REQUIRED_LIBRARIES "${ICONV_LIBRARIES}" ) + check_function_exists( "iconv_open" HAVE_ICONV ) + tde_restore( CMAKE_REQUIRED_LIBRARIES ) + if( NOT HAVE_ICONV ) + tde_message_fatal( "xcf codec was requested but iconv library not found on your system" ) + endif() endif( ) diff --git a/kernel/kls_xcf/xcf2pnm/CMakeLists.txt b/kernel/kls_xcf/xcf2pnm/CMakeLists.txt index 5edc991..a38e7d1 100644 --- a/kernel/kls_xcf/xcf2pnm/CMakeLists.txt +++ b/kernel/kls_xcf/xcf2pnm/CMakeLists.txt @@ -10,5 +10,6 @@ include_directories( file( GLOB _bin_c_files RELATIVE ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/*.c ) tde_add_executable( ksquirrel-libs-xcf2pnm SOURCES ${_bin_c_files} + LINK ${ICONV_LIBRARIES} DESTINATION ${BIN_INSTALL_DIR} )