From ee920a461c7d568de3ca842b64aa665b3aa7af00 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luk=C3=A1=C5=A1=20Lalinsk=C3=BD?= Date: Sat, 9 Apr 2011 20:05:50 +0200 Subject: Clean up the library CMakeLists.txt file --- bindings/c/CMakeLists.txt | 77 ++++++----- taglib/CMakeLists.txt | 324 ++++++++++++++++++++++------------------------ 2 files changed, 195 insertions(+), 206 deletions(-) diff --git a/bindings/c/CMakeLists.txt b/bindings/c/CMakeLists.txt index fa4056df..d1f75234 100644 --- a/bindings/c/CMakeLists.txt +++ b/bindings/c/CMakeLists.txt @@ -1,39 +1,38 @@ -INCLUDE_DIRECTORIES( ${CMAKE_CURRENT_SOURCE_DIR}/../../taglib - ${CMAKE_CURRENT_SOURCE_DIR}/../../taglib/toolkit - ${CMAKE_CURRENT_SOURCE_DIR}/../../taglib/asf - ${CMAKE_CURRENT_SOURCE_DIR}/../../taglib/mpeg - ${CMAKE_CURRENT_SOURCE_DIR}/../../taglib/ogg - ${CMAKE_CURRENT_SOURCE_DIR}/../../taglib/ogg/vorbis - ${CMAKE_CURRENT_SOURCE_DIR}/../../taglib/ogg/flac - ${CMAKE_CURRENT_SOURCE_DIR}/../../taglib/flac - ${CMAKE_CURRENT_SOURCE_DIR}/../../taglib/mpc - ${CMAKE_CURRENT_SOURCE_DIR}/../../taglib/mp4 - ${CMAKE_CURRENT_SOURCE_DIR}/../../taglib/mpeg/id3v2 - ${CMAKE_CURRENT_SOURCE_DIR}/../../taglib/mpeg/id3v2/frames - ${CMAKE_CURRENT_SOURCE_DIR}/../../taglib/wavpack - ${CMAKE_CURRENT_SOURCE_DIR}/../../taglib/ogg/speex - ${CMAKE_CURRENT_SOURCE_DIR}/../../taglib/trueaudio +include_directories( + ${CMAKE_CURRENT_SOURCE_DIR}/../../taglib + ${CMAKE_CURRENT_SOURCE_DIR}/../../taglib/toolkit + ${CMAKE_CURRENT_SOURCE_DIR}/../../taglib/asf + ${CMAKE_CURRENT_SOURCE_DIR}/../../taglib/mpeg + ${CMAKE_CURRENT_SOURCE_DIR}/../../taglib/ogg + ${CMAKE_CURRENT_SOURCE_DIR}/../../taglib/ogg/vorbis + ${CMAKE_CURRENT_SOURCE_DIR}/../../taglib/ogg/flac + ${CMAKE_CURRENT_SOURCE_DIR}/../../taglib/flac + ${CMAKE_CURRENT_SOURCE_DIR}/../../taglib/mpc + ${CMAKE_CURRENT_SOURCE_DIR}/../../taglib/mp4 + ${CMAKE_CURRENT_SOURCE_DIR}/../../taglib/mpeg/id3v2 + ${CMAKE_CURRENT_SOURCE_DIR}/../../taglib/mpeg/id3v2/frames + ${CMAKE_CURRENT_SOURCE_DIR}/../../taglib/wavpack + ${CMAKE_CURRENT_SOURCE_DIR}/../../taglib/ogg/speex + ${CMAKE_CURRENT_SOURCE_DIR}/../../taglib/trueaudio ) - -configure_file(${CMAKE_CURRENT_SOURCE_DIR}/taglib_c.pc.cmake ${CMAKE_CURRENT_BINARY_DIR}/taglib_c.pc ) -########### next target ############### +configure_file(${CMAKE_CURRENT_SOURCE_DIR}/taglib_c.pc.cmake ${CMAKE_CURRENT_BINARY_DIR}/taglib_c.pc) if(ENABLE_STATIC) - add_library(tag_c STATIC tag_c.cpp) - set_target_properties(tag_c PROPERTIES COMPILE_DEFINITIONS TAGLIB_STATIC) -else(ENABLE_STATIC) - add_library(tag_c SHARED tag_c.cpp) -endif(ENABLE_STATIC) + add_library(tag_c STATIC tag_c.cpp) + set_target_properties(tag_c PROPERTIES COMPILE_DEFINITIONS TAGLIB_STATIC) +else() + add_library(tag_c SHARED tag_c.cpp) +endif() -TARGET_LINK_LIBRARIES(tag_c tag ) +target_link_libraries(tag_c tag) # On Solaris we need to explicitly add the C++ standard and runtime # libraries to the libs used by the C bindings, because those C bindings # themselves won't pull in the C++ libs -- and if a C application is # using the C bindings then we get link errors. -CHECK_LIBRARY_EXISTS(Crun __RTTI___ "" HAVE_CRUN_LIB) -IF(HAVE_CRUN_LIB) +check_library_exists(Crun __RTTI___ "" HAVE_CRUN_LIB) +if(HAVE_CRUN_LIB) # Which libraries to link depends critically on which # STL version is going to be used by your application # and which runtime is in use. While Crun is pretty much @@ -42,27 +41,25 @@ IF(HAVE_CRUN_LIB) # team supports stdcxx (Apache RogueWave stdcxx 4.1.3). # According to http://bugs.kde.org/show_bug.cgi?id=215225 the library can have the following two names: - FIND_LIBRARY(ROGUEWAVE_STDCXX_LIBRARY NAMES stdcxx4 stdcxx) - IF(NOT ROGUEWAVE_STDCXX_LIBRARY) - MESSAGE(FATAL_ERROR "Did not find supported STL library (tried stdcxx4 and stdcxx)") - ENDIF(NOT ROGUEWAVE_STDCXX_LIBRARY) - TARGET_LINK_LIBRARIES(tag_c ${ROGUEWAVE_STDCXX_LIBRARY} Crun) -ENDIF(HAVE_CRUN_LIB) + find_library(ROGUEWAVE_STDCXX_LIBRARY NAMES stdcxx4 stdcxx) + if(NOT ROGUEWAVE_STDCXX_LIBRARY) + message(FATAL_ERROR "Did not find supported STL library (tried stdcxx4 and stdcxx)") + endif() + target_link_libraries(tag_c ${ROGUEWAVE_STDCXX_LIBRARY} Crun) +endif() -SET_TARGET_PROPERTIES(tag_c PROPERTIES +set_target_properties(tag_c PROPERTIES VERSION 0.0.0 SOVERSION 0 DEFINE_SYMBOL MAKE_TAGLIB_C_LIB INSTALL_NAME_DIR ${LIB_INSTALL_DIR} - ) -INSTALL(TARGETS tag_c +) +install(TARGETS tag_c LIBRARY DESTINATION ${LIB_INSTALL_DIR} RUNTIME DESTINATION ${BIN_INSTALL_DIR} - ARCHIVE DESTINATION ${LIB_INSTALL_DIR} + ARCHIVE DESTINATION ${LIB_INSTALL_DIR} ) +install(FILES ${CMAKE_CURRENT_BINARY_DIR}/taglib_c.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig) +install(FILES tag_c.h DESTINATION ${INCLUDE_INSTALL_DIR}/taglib) -########### install files ############### - -INSTALL( FILES ${CMAKE_CURRENT_BINARY_DIR}/taglib_c.pc DESTINATION ${LIB_INSTALL_DIR}/pkgconfig) -INSTALL( FILES tag_c.h DESTINATION ${INCLUDE_INSTALL_DIR}/taglib) diff --git a/taglib/CMakeLists.txt b/taglib/CMakeLists.txt index 23f4796b..53022c0a 100644 --- a/taglib/CMakeLists.txt +++ b/taglib/CMakeLists.txt @@ -1,219 +1,211 @@ - set(CMAKE_INCLUDE_CURRENT_DIR ON) -INCLUDE_DIRECTORIES( - ${CMAKE_CURRENT_SOURCE_DIR}/toolkit - ${CMAKE_CURRENT_SOURCE_DIR}/asf - ${CMAKE_CURRENT_SOURCE_DIR}/mpeg - ${CMAKE_CURRENT_SOURCE_DIR}/ogg - ${CMAKE_CURRENT_SOURCE_DIR}/ogg/flac - ${CMAKE_CURRENT_SOURCE_DIR}/flac - ${CMAKE_CURRENT_SOURCE_DIR}/mpc - ${CMAKE_CURRENT_SOURCE_DIR}/mp4 - ${CMAKE_CURRENT_SOURCE_DIR}/ogg/vorbis - ${CMAKE_CURRENT_SOURCE_DIR}/ogg/speex - ${CMAKE_CURRENT_SOURCE_DIR}/mpeg/id3v2 - ${CMAKE_CURRENT_SOURCE_DIR}/mpeg/id3v2/frames - ${CMAKE_CURRENT_SOURCE_DIR}/mpeg/id3v1 - ${CMAKE_CURRENT_SOURCE_DIR}/ape - ${CMAKE_CURRENT_SOURCE_DIR}/wavpack - ${CMAKE_CURRENT_SOURCE_DIR}/trueaudio - ${CMAKE_CURRENT_SOURCE_DIR}/riff - ${CMAKE_CURRENT_SOURCE_DIR}/riff/aiff - ${CMAKE_CURRENT_SOURCE_DIR}/riff/wav - ${CMAKE_CURRENT_BINARY_DIR}/.. +include_directories( + ${CMAKE_CURRENT_SOURCE_DIR}/toolkit + ${CMAKE_CURRENT_SOURCE_DIR}/asf + ${CMAKE_CURRENT_SOURCE_DIR}/mpeg + ${CMAKE_CURRENT_SOURCE_DIR}/ogg + ${CMAKE_CURRENT_SOURCE_DIR}/ogg/flac + ${CMAKE_CURRENT_SOURCE_DIR}/flac + ${CMAKE_CURRENT_SOURCE_DIR}/mpc + ${CMAKE_CURRENT_SOURCE_DIR}/mp4 + ${CMAKE_CURRENT_SOURCE_DIR}/ogg/vorbis + ${CMAKE_CURRENT_SOURCE_DIR}/ogg/speex + ${CMAKE_CURRENT_SOURCE_DIR}/mpeg/id3v2 + ${CMAKE_CURRENT_SOURCE_DIR}/mpeg/id3v2/frames + ${CMAKE_CURRENT_SOURCE_DIR}/mpeg/id3v1 + ${CMAKE_CURRENT_SOURCE_DIR}/ape + ${CMAKE_CURRENT_SOURCE_DIR}/wavpack + ${CMAKE_CURRENT_SOURCE_DIR}/trueaudio + ${CMAKE_CURRENT_SOURCE_DIR}/riff + ${CMAKE_CURRENT_SOURCE_DIR}/riff/aiff + ${CMAKE_CURRENT_SOURCE_DIR}/riff/wav ) -if(ZLIB_FOUND) - INCLUDE_DIRECTORIES(${ZLIB_INCLUDE_DIR}) -endif(ZLIB_FOUND) - -ADD_SUBDIRECTORY( toolkit ) -ADD_SUBDIRECTORY( asf ) -ADD_SUBDIRECTORY( mpeg ) -ADD_SUBDIRECTORY( ogg ) -ADD_SUBDIRECTORY( flac ) -ADD_SUBDIRECTORY( ape ) -ADD_SUBDIRECTORY( mpc ) -ADD_SUBDIRECTORY( mp4 ) -ADD_SUBDIRECTORY( wavpack ) -ADD_SUBDIRECTORY( trueaudio ) -ADD_SUBDIRECTORY( riff ) -########### next target ############### +if(ZLIB_FOUND) + include_directories(${ZLIB_INCLUDE_DIR}) +endif() -SET(mpeg_SRCS -mpeg/mpegfile.cpp -mpeg/mpegproperties.cpp -mpeg/mpegheader.cpp -mpeg/xingheader.cpp -) +add_subdirectory(toolkit) +add_subdirectory(asf) +add_subdirectory(mpeg) +add_subdirectory(ogg) +add_subdirectory(flac) +add_subdirectory(ape) +add_subdirectory(mpc) +add_subdirectory(mp4) +add_subdirectory(wavpack) +add_subdirectory(trueaudio) +add_subdirectory(riff) -SET(id3v1_SRCS -mpeg/id3v1/id3v1tag.cpp -mpeg/id3v1/id3v1genres.cpp +set(mpeg_SRCS + mpeg/mpegfile.cpp + mpeg/mpegproperties.cpp + mpeg/mpegheader.cpp + mpeg/xingheader.cpp ) - -SET(id3v2_SRCS -mpeg/id3v2/id3v2framefactory.cpp -mpeg/id3v2/id3v2synchdata.cpp -mpeg/id3v2/id3v2tag.cpp -mpeg/id3v2/id3v2header.cpp -mpeg/id3v2/id3v2frame.cpp -mpeg/id3v2/id3v2footer.cpp -mpeg/id3v2/id3v2extendedheader.cpp +set(id3v1_SRCS + mpeg/id3v1/id3v1tag.cpp + mpeg/id3v1/id3v1genres.cpp ) +set(id3v2_SRCS + mpeg/id3v2/id3v2framefactory.cpp + mpeg/id3v2/id3v2synchdata.cpp + mpeg/id3v2/id3v2tag.cpp + mpeg/id3v2/id3v2header.cpp + mpeg/id3v2/id3v2frame.cpp + mpeg/id3v2/id3v2footer.cpp + mpeg/id3v2/id3v2extendedheader.cpp + ) -SET(frames_SRCS -mpeg/id3v2/frames/attachedpictureframe.cpp -mpeg/id3v2/frames/commentsframe.cpp -mpeg/id3v2/frames/generalencapsulatedobjectframe.cpp -mpeg/id3v2/frames/popularimeterframe.cpp -mpeg/id3v2/frames/privateframe.cpp -mpeg/id3v2/frames/relativevolumeframe.cpp -mpeg/id3v2/frames/textidentificationframe.cpp -mpeg/id3v2/frames/uniquefileidentifierframe.cpp -mpeg/id3v2/frames/unknownframe.cpp -mpeg/id3v2/frames/unsynchronizedlyricsframe.cpp -mpeg/id3v2/frames/urllinkframe.cpp +set(frames_SRCS + mpeg/id3v2/frames/attachedpictureframe.cpp + mpeg/id3v2/frames/commentsframe.cpp + mpeg/id3v2/frames/generalencapsulatedobjectframe.cpp + mpeg/id3v2/frames/popularimeterframe.cpp + mpeg/id3v2/frames/privateframe.cpp + mpeg/id3v2/frames/relativevolumeframe.cpp + mpeg/id3v2/frames/textidentificationframe.cpp + mpeg/id3v2/frames/uniquefileidentifierframe.cpp + mpeg/id3v2/frames/unknownframe.cpp + mpeg/id3v2/frames/unsynchronizedlyricsframe.cpp + mpeg/id3v2/frames/urllinkframe.cpp ) -SET(ogg_SRCS -ogg/oggfile.cpp -ogg/oggpage.cpp -ogg/oggpageheader.cpp -ogg/xiphcomment.cpp +set(ogg_SRCS + ogg/oggfile.cpp + ogg/oggpage.cpp + ogg/oggpageheader.cpp + ogg/xiphcomment.cpp ) -SET(vorbis_SRCS -ogg/vorbis/vorbisfile.cpp -ogg/vorbis/vorbisproperties.cpp +set(vorbis_SRCS + ogg/vorbis/vorbisfile.cpp + ogg/vorbis/vorbisproperties.cpp ) - -SET(flacs_SRCS -flac/flacfile.cpp -flac/flacpicture.cpp -flac/flacproperties.cpp -flac/flacmetadatablock.cpp -flac/flacunknownmetadatablock.cpp +set(flacs_SRCS + flac/flacfile.cpp + flac/flacpicture.cpp + flac/flacproperties.cpp + flac/flacmetadatablock.cpp + flac/flacunknownmetadatablock.cpp ) -SET(oggflacs_SRCS -ogg/flac/oggflacfile.cpp +set(oggflacs_SRCS + ogg/flac/oggflacfile.cpp ) -SET(mpc_SRCS -mpc/mpcfile.cpp -mpc/mpcproperties.cpp +set(mpc_SRCS + mpc/mpcfile.cpp + mpc/mpcproperties.cpp ) -IF(WITH_MP4) -SET(mp4_SRCS -mp4/mp4file.cpp -mp4/mp4atom.cpp -mp4/mp4tag.cpp -mp4/mp4item.cpp -mp4/mp4properties.cpp -mp4/mp4coverart.cpp +set(mp4_SRCS + mp4/mp4file.cpp + mp4/mp4atom.cpp + mp4/mp4tag.cpp + mp4/mp4item.cpp + mp4/mp4properties.cpp + mp4/mp4coverart.cpp ) -ELSE(WITH_MP4) -SET(mp4_SRCS) -ENDIF(WITH_MP4) -SET(ape_SRCS -ape/apetag.cpp -ape/apefooter.cpp -ape/apeitem.cpp -ape/apefile.cpp -ape/apeproperties.cpp +set(ape_SRCS + ape/apetag.cpp + ape/apefooter.cpp + ape/apeitem.cpp + ape/apefile.cpp + ape/apeproperties.cpp ) -SET(wavpack_SRCS -wavpack/wavpackfile.cpp -wavpack/wavpackproperties.cpp +set(wavpack_SRCS + wavpack/wavpackfile.cpp + wavpack/wavpackproperties.cpp ) -SET(speex_SRCS -ogg/speex/speexfile.cpp -ogg/speex/speexproperties.cpp +set(speex_SRCS + ogg/speex/speexfile.cpp + ogg/speex/speexproperties.cpp ) -SET(trueaudio_SRCS -trueaudio/trueaudiofile.cpp -trueaudio/trueaudioproperties.cpp +set(trueaudio_SRCS + trueaudio/trueaudiofile.cpp + trueaudio/trueaudioproperties.cpp ) -IF(WITH_ASF) -SET(asf_SRCS -asf/asftag.cpp -asf/asffile.cpp -asf/asfproperties.cpp -asf/asfattribute.cpp -asf/asfpicture.cpp +set(asf_SRCS + asf/asftag.cpp + asf/asffile.cpp + asf/asfproperties.cpp + asf/asfattribute.cpp + asf/asfpicture.cpp ) -ELSE(WITH_ASF) -SET(asf_SRCS) -ENDIF(WITH_ASF) -SET(riff_SRCS -riff/rifffile.cpp +set(riff_SRCS + riff/rifffile.cpp ) -SET(aiff_SRCS -riff/aiff/aifffile.cpp -riff/aiff/aiffproperties.cpp +set(aiff_SRCS + riff/aiff/aifffile.cpp + riff/aiff/aiffproperties.cpp ) -SET(wav_SRCS -riff/wav/wavfile.cpp -riff/wav/wavproperties.cpp +set(wav_SRCS + riff/wav/wavfile.cpp + riff/wav/wavproperties.cpp ) -SET(toolkit_SRCS -toolkit/tstring.cpp -toolkit/tstringlist.cpp -toolkit/tbytevector.cpp -toolkit/tbytevectorlist.cpp -toolkit/tfile.cpp -toolkit/tdebug.cpp -toolkit/unicode.cpp +set(toolkit_SRCS + toolkit/tstring.cpp + toolkit/tstringlist.cpp + toolkit/tbytevector.cpp + toolkit/tbytevectorlist.cpp + toolkit/tfile.cpp + toolkit/tdebug.cpp + toolkit/unicode.cpp ) -SET(tag_LIB_SRCS ${mpeg_SRCS} ${id3v1_SRCS} ${id3v2_SRCS} ${frames_SRCS} ${ogg_SRCS} - ${vorbis_SRCS} ${oggflacs_SRCS} ${mpc_SRCS} ${ape_SRCS} ${toolkit_SRCS} ${flacs_SRCS} - ${wavpack_SRCS} ${speex_SRCS} ${trueaudio_SRCS} ${riff_SRCS} ${aiff_SRCS} ${wav_SRCS} - ${mp4_SRCS} ${asf_SRCS} - tag.cpp - tagunion.cpp - fileref.cpp - audioproperties.cpp +set(tag_LIB_SRCS + ${mpeg_SRCS} ${id3v1_SRCS} ${id3v2_SRCS} ${frames_SRCS} ${ogg_SRCS} + ${vorbis_SRCS} ${oggflacs_SRCS} ${mpc_SRCS} ${ape_SRCS} ${toolkit_SRCS} ${flacs_SRCS} + ${wavpack_SRCS} ${speex_SRCS} ${trueaudio_SRCS} ${riff_SRCS} ${aiff_SRCS} ${wav_SRCS} + tag.cpp + tagunion.cpp + fileref.cpp + audioproperties.cpp ) - +if(WITH_ASF) + set(tag_LIB_SRCS ${tag_LIB_SRCS} ${asf_SRCS}) +endif() +if(WITH_MP4) + set(tag_LIB_SRCS ${tag_LIB_SRCS} ${mp4_SRCS}) +endif() if(ENABLE_STATIC) - add_library(tag STATIC ${tag_LIB_SRCS}) - set_target_properties(tag PROPERTIES COMPILE_DEFINITIONS TAGLIB_STATIC) -else(ENABLE_STATIC) - add_library(tag SHARED ${tag_LIB_SRCS}) -endif(ENABLE_STATIC) + add_library(tag STATIC ${tag_LIB_SRCS}) + set_target_properties(tag PROPERTIES COMPILE_DEFINITIONS TAGLIB_STATIC) +else() + add_library(tag SHARED ${tag_LIB_SRCS}) +endif() -TARGET_LINK_LIBRARIES(tag ) if(ZLIB_FOUND) - TARGET_LINK_LIBRARIES(tag ${ZLIB_LIBRARIES}) -endif(ZLIB_FOUND) + target_link_libraries(tag ${ZLIB_LIBRARIES}) +endif() -SET_TARGET_PROPERTIES(tag PROPERTIES - VERSION ${TAGLIB_SOVERSION_MAJOR}.${TAGLIB_SOVERSION_MINOR}.${TAGLIB_SOVERSION_PATCH} - SOVERSION ${TAGLIB_SOVERSION_MAJOR} - INSTALL_NAME_DIR ${LIB_INSTALL_DIR} - DEFINE_SYMBOL MAKE_TAGLIB_LIB - LINK_INTERFACE_LIBRARIES "" +set_target_properties(tag PROPERTIES + VERSION ${TAGLIB_SOVERSION_MAJOR}.${TAGLIB_SOVERSION_MINOR}.${TAGLIB_SOVERSION_PATCH} + SOVERSION ${TAGLIB_SOVERSION_MAJOR} + INSTALL_NAME_DIR ${LIB_INSTALL_DIR} + DEFINE_SYMBOL MAKE_TAGLIB_LIB + LINK_INTERFACE_LIBRARIES "" ) -INSTALL(TARGETS tag + +install(TARGETS tag LIBRARY DESTINATION ${LIB_INSTALL_DIR} RUNTIME DESTINATION ${BIN_INSTALL_DIR} - ARCHIVE DESTINATION ${LIB_INSTALL_DIR} + ARCHIVE DESTINATION ${LIB_INSTALL_DIR} ) -INSTALL( FILES tag.h fileref.h audioproperties.h taglib_export.h DESTINATION ${INCLUDE_INSTALL_DIR}/taglib) +install(FILES tag.h fileref.h audioproperties.h taglib_export.h DESTINATION ${INCLUDE_INSTALL_DIR}/taglib) + -- cgit v1.2.3