Warning, /multimedia/kid3/src/plugins/id3libmetadata/cmake/modules/FindId3lib.cmake is written in an unsupported language. File is not indexed.

0001 # Redistribution and use is allowed according to the terms of the BSD license.
0002 # For details see the accompanying COPYING-CMAKE-SCRIPTS file.
0003 find_path(ID3LIB_INCLUDES id3/tag.h)
0004 find_library(ID3LIB_LIBRARY NAMES id3 id3lib)
0005 if(ID3LIB_INCLUDES AND ID3LIB_LIBRARY)
0006   message(STATUS "id3lib found: ${ID3LIB_LIBRARY}")
0007   set(HAVE_ID3LIB 1)
0008   set(ID3LIB_INTERFACE_LIBRARIES ${ZLIB_LIBRARIES})
0009   if(NOT MSVC)
0010     set(ID3LIB_INTERFACE_LIBRARIES ${ID3LIB_INTERFACE_LIBRARIES} -lstdc++)
0011   endif()
0012   if(WIN32)
0013     set(ID3LIB_DEFINITIONS -DID3LIB_LINKOPTION=1)
0014     if(NOT CMAKE_CROSSCOMPILING)
0015       set(ID3LIB_INTERFACE_LIBRARIES ${ID3LIB_INTERFACE_LIBRARIES} -liconv)
0016       # libiconv-2.dll is at the same place where the compiler is, C:\msys64\mingw32\bin
0017       get_filename_component(_mingw_bin_dir ${CMAKE_C_COMPILER} DIRECTORY)
0018       install(FILES "${_mingw_bin_dir}/libiconv-2.dll"
0019               DESTINATION ${WITH_BINDIR} OPTIONAL)
0020     endif()
0021   elseif(APPLE)
0022     set(ID3LIB_INTERFACE_LIBRARIES ${ID3LIB_INTERFACE_LIBRARIES} -liconv)
0023   endif()
0024   set(ID3LIB_LIBRARIES ${ID3LIB_LIBRARY} ${ID3LIB_INTERFACE_LIBRARIES})
0025   set(_CMAKE_REQUIRED_LIBRARIES_TMP ${CMAKE_REQUIRED_LIBRARIES})
0026   set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${ID3LIB_LIBRARIES})
0027   set(_CMAKE_REQUIRED_INCLUDES_TMP ${CMAKE_REQUIRED_INCLUDES})
0028   set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${ID3LIB_INCLUDES})
0029   set(_CMAKE_REQUIRED_DEFINITIONS_TMP ${CMAKE_REQUIRED_DEFINITIONS})
0030   set(CMAKE_REQUIRED_DEFINITIONS ${CMAKE_REQUIRED_DEFINITIONS} ${ID3LIB_DEFINITIONS})
0031   CHECK_CXX_SOURCE_COMPILES("#include <id3/globals.h>\nint main() {\n  Mp3_Headerinfo info;\n  info.vbr_bitrate = 0;\n  return 0;\n}\n" ID3LIB_VBR_SUPPORT_FOUND)
0032   set(CMAKE_REQUIRED_LIBRARIES ${_CMAKE_REQUIRED_LIBRARIES_TMP})
0033   set(CMAKE_REQUIRED_INCLUDES ${_CMAKE_REQUIRED_INCLUDES_TMP})
0034   set(CMAKE_REQUIRED_DEFINITIONS ${_CMAKE_REQUIRED_DEFINITIONS_TMP})
0035 
0036   if(NOT ID3LIB_VBR_SUPPORT_FOUND)
0037     set(HAVE_NO_ID3LIB_VBR 1)
0038   endif()
0039 
0040   add_library(Id3lib::Id3lib UNKNOWN IMPORTED)
0041   string(REPLACE "-D" "" ID3LIB_COMPILE_DEFINITIONS "${ID3LIB_DEFINITIONS}")
0042   set_target_properties(Id3lib::Id3lib PROPERTIES
0043     IMPORTED_CONFIGURATIONS RELEASE
0044     IMPORTED_LOCATION "${ID3LIB_LIBRARY}"
0045     INTERFACE_COMPILE_DEFINITIONS "${ID3LIB_COMPILE_DEFINITIONS}"
0046     INTERFACE_INCLUDE_DIRECTORIES "${ID3LIB_INCLUDES}"
0047     INTERFACE_LINK_LIBRARIES "${ID3LIB_INTERFACE_LIBRARIES}"
0048   )
0049 else()
0050   message(FATAL_ERROR "Could not find id3lib")
0051 endif()