Warning, /multimedia/kid3/src/plugins/oggflacmetadata/cmake/modules/FindFLAC.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 if(FLAC_INCLUDE_DIR) 0004 set(FLAC_FIND_QUIETLY TRUE) 0005 endif() 0006 0007 find_package(Ogg QUIET) 0008 0009 find_path(FLAC_INCLUDE_DIR FLAC/stream_decoder.h) 0010 find_path(FLACPP_INCLUDE_DIR FLAC++/metadata.h) 0011 find_library(FLAC_LIBRARY NAMES FLAC) 0012 find_library(FLACPP_LIBRARY NAMES FLAC++) 0013 0014 include (FindPackageHandleStandardArgs) 0015 find_package_handle_standard_args(FLAC REQUIRED_VARS FLAC_LIBRARY FLACPP_LIBRARY FLAC_INCLUDE_DIR FLACPP_INCLUDE_DIR OGG_FOUND) 0016 0017 if(FLAC_FOUND) 0018 set(HAVE_FLAC 1) 0019 if(WIN32) 0020 set(FLAC_DEFINITIONS -DFLAC__NO_DLL) 0021 set(FLAC_INTERFACE_LIBRARIES Ogg::Ogg ws2_32) 0022 else() 0023 set(FLAC_DEFINITIONS) 0024 set(FLAC_INTERFACE_LIBRARIES Ogg::Ogg) 0025 endif() 0026 set(FLAC_LIBRARIES ${FLACPP_LIBRARY} ${FLAC_LIBRARY} ${FLAC_INTERFACE_LIBRARIES}) 0027 0028 set(_CMAKE_REQUIRED_LIBRARIES_TMP ${CMAKE_REQUIRED_LIBRARIES}) 0029 set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} ${FLAC_LIBRARIES} ${OGG_LIBRARY}) 0030 set(_CMAKE_REQUIRED_INCLUDES_TMP ${CMAKE_REQUIRED_INCLUDES}) 0031 set(CMAKE_REQUIRED_INCLUDES ${CMAKE_REQUIRED_INCLUDES} ${FLACPP_INCLUDE_DIR}) 0032 set(_CMAKE_REQUIRED_DEFINITIONS_TMP ${CMAKE_REQUIRED_DEFINITIONS}) 0033 set(CMAKE_REQUIRED_DEFINITIONS ${CMAKE_REQUIRED_DEFINITIONS} ${FLAC_DEFINITIONS}) 0034 CHECK_CXX_SOURCE_COMPILES("#include <FLAC++/metadata.h>\nint main() {\n FLAC::Metadata::VorbisComment vc;\n const ::FLAC__StreamMetadata* fsmd = vc;\n return 0;\n}\n" FLAC_STREAMMETADATA_OPERATOR_FOUND) 0035 CHECK_CXX_SOURCE_COMPILES("#include <FLAC++/metadata.h>\nint main() {\n FLAC::Metadata::Picture pic;\n return 0;\n}\n" FLAC_METADATA_PICTURE_FOUND) 0036 set(CMAKE_REQUIRED_LIBRARIES ${_CMAKE_REQUIRED_LIBRARIES_TMP}) 0037 set(CMAKE_REQUIRED_INCLUDES ${_CMAKE_REQUIRED_INCLUDES_TMP}) 0038 set(CMAKE_REQUIRED_DEFINITIONS ${_CMAKE_REQUIRED_DEFINITIONS_TMP}) 0039 0040 if(NOT FLAC_STREAMMETADATA_OPERATOR_FOUND) 0041 set(HAVE_NO_FLAC_STREAMMETADATA_OPERATOR 1) 0042 endif() 0043 if(FLAC_METADATA_PICTURE_FOUND) 0044 set(HAVE_FLAC_PICTURE 1) 0045 endif() 0046 0047 if(NOT TARGET FLAC::FLAC) 0048 add_library(FLAC::FLAC UNKNOWN IMPORTED) 0049 string(REPLACE "-D" "" FLAC_COMPILE_DEFINITIONS "${FLAC_DEFINITIONS}") 0050 set_target_properties(FLAC::FLAC PROPERTIES 0051 INTERFACE_INCLUDE_DIRECTORIES "${FLAC_INCLUDE_DIR}" 0052 IMPORTED_LOCATION "${FLAC_LIBRARY}" 0053 INTERFACE_LINK_LIBRARIES "${FLAC_INTERFACE_LIBRARIES}" 0054 INTERFACE_COMPILE_DEFINITIONS "${FLAC_COMPILE_DEFINITIONS}" 0055 ) 0056 endif() 0057 if(NOT TARGET FLACPP::FLACPP) 0058 add_library(FLACPP::FLACPP UNKNOWN IMPORTED) 0059 set_target_properties(FLACPP::FLACPP PROPERTIES 0060 INTERFACE_INCLUDE_DIRECTORIES "${FLACPP_INCLUDE_DIR}" 0061 IMPORTED_LOCATION "${FLACPP_LIBRARY}" 0062 INTERFACE_LINK_LIBRARIES FLAC::FLAC 0063 ) 0064 endif() 0065 endif() 0066 0067 mark_as_advanced(FLAC_INCLUDE_DIR FLACPP_INCLUDE_DIR FLAC_LIBRARY FLACPP_LIBRARY)