Warning, /multimedia/k3b/libk3b/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 0002 include(CheckFunctionExists) 0003 set(CMAKE_REQUIRED_LIBRARIES m) 0004 check_function_exists(lrint HAVE_LRINT) 0005 check_function_exists(lrintf HAVE_LRINTF) 0006 0007 configure_file(config-libk3b.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-libk3b.h ) 0008 0009 add_subdirectory( core ) 0010 add_subdirectory( plugin ) 0011 add_subdirectory( tools ) 0012 add_subdirectory( projects ) 0013 add_subdirectory( jobs ) 0014 0015 if(ENABLE_DVD_RIPPING) 0016 add_subdirectory(videodvd) 0017 set(videodvd_sources 0018 jobs/k3bvideodvdtitletranscodingjob.cpp 0019 jobs/k3bvideodvdtitledetectclippingjob.cpp 0020 videodvd/k3bvideodvd.cpp 0021 videodvd/k3bvideodvdtime.cpp 0022 videodvd/k3bvideodvdvideostream.cpp 0023 projects/videodvd/k3bvideodvddoc.cpp 0024 projects/videodvd/k3bvideodvdjob.cpp 0025 projects/videodvd/k3bvideodvdimager.cpp 0026 ) 0027 set(videodvd_libraries dvdread) 0028 endif() 0029 0030 if(WIN32) 0031 set(platform_sources 0032 tools/qprocess/k3bqprocess_win.cpp 0033 tools/qprocess/private/qwineventnotifier_p.cpp 0034 tools/qprocess/private/qfsfileengine_win.cpp 0035 tools/qprocess/private/qfsfileengine.cpp 0036 tools/qprocess/private/qfsfileengine_iterator.cpp 0037 tools/qprocess/private/qfsfileengine_iterator_win.cpp 0038 ) 0039 elseif(UNIX) 0040 set(platform_sources 0041 tools/qprocess/k3bqprocess_unix.cpp 0042 ) 0043 endif() 0044 0045 add_library(k3blib SHARED 0046 core/k3bcore.cpp 0047 core/k3bglobals.cpp 0048 core/k3bdefaultexternalprograms.cpp 0049 core/k3bexternalbinmanager.cpp 0050 core/k3bversion.cpp 0051 core/k3bjob.cpp 0052 core/k3bkjobbridge.cpp 0053 core/k3bthread.cpp 0054 core/k3bthreadjob.cpp 0055 core/k3bglobalsettings.cpp 0056 core/k3bsimplejobhandler.cpp 0057 core/k3bthreadjobcommunicationevent.cpp 0058 tools/k3bwavefilewriter.cpp 0059 tools/k3bbusywidget.cpp 0060 tools/k3bdeviceselectiondialog.cpp 0061 tools/k3bmd5job.cpp 0062 tools/k3btitlelabel.cpp 0063 tools/k3bdevicecombobox.cpp 0064 tools/k3bstdguiitems.cpp 0065 tools/k3bvalidators.cpp 0066 tools/k3bthroughputestimator.cpp 0067 tools/k3biso9660.cpp 0068 tools/k3bmultichoicedialog.cpp 0069 tools/k3bdevicehandler.cpp 0070 tools/k3bcdparanoialib.cpp 0071 tools/k3bmsfedit.cpp 0072 tools/k3bcdtextvalidator.cpp 0073 tools/k3bintvalidator.cpp 0074 tools/k3bexceptions.cpp 0075 tools/k3bthreadwidget.cpp 0076 tools/k3bsignalwaiter.cpp 0077 tools/k3blibdvdcss.cpp 0078 tools/k3biso9660backend.cpp 0079 tools/k3bchecksumpipe.cpp 0080 tools/k3bintmapcombobox.cpp 0081 tools/k3bdirsizejob.cpp 0082 tools/k3bactivepipe.cpp 0083 tools/k3bfilesplitter.cpp 0084 tools/k3bfilesysteminfo.cpp 0085 tools/k3bdevicemodel.cpp 0086 tools/k3bmedium.cpp 0087 tools/k3bmediacache.cpp 0088 tools/k3bcddb.cpp 0089 tools/k3bprocess.cpp 0090 tools/qprocess/k3bqprocess.cpp 0091 tools/qprocess/k3bkprocess.cpp 0092 plugin/k3bplugin.cpp 0093 plugin/k3bpluginconfigwidget.cpp 0094 plugin/k3bpluginmanager.cpp 0095 plugin/k3baudiodecoder.cpp 0096 plugin/k3baudioencoder.cpp 0097 plugin/k3bprojectplugin.cpp 0098 projects/k3babstractwriter.cpp 0099 projects/k3bgrowisofswriter.cpp 0100 projects/k3bgrowisofshandler.cpp 0101 projects/k3bdoc.cpp 0102 projects/k3bcdrdaowriter.cpp 0103 projects/k3bcdrecordwriter.cpp 0104 projects/k3bcdrskinwriter.cpp 0105 projects/k3binffilewriter.cpp 0106 projects/k3btocfilewriter.cpp 0107 projects/k3bimagefilereader.cpp 0108 projects/k3bcuefileparser.cpp 0109 jobs/k3bdatatrackreader.cpp 0110 jobs/k3breadcdreader.cpp 0111 jobs/k3bcdcopyjob.cpp 0112 jobs/k3bclonejob.cpp 0113 jobs/k3baudiosessionreadingjob.cpp 0114 jobs/k3bdvdcopyjob.cpp 0115 jobs/k3baudiofileanalyzerjob.cpp 0116 jobs/k3baudiocuefilewritingjob.cpp 0117 jobs/k3bbinimagewritingjob.cpp 0118 jobs/k3biso9660imagewritingjob.cpp 0119 jobs/k3bdvdformattingjob.cpp 0120 jobs/k3bblankingjob.cpp 0121 jobs/k3bclonetocreader.cpp 0122 jobs/k3bverificationjob.cpp 0123 jobs/k3bdvdbooktypejob.cpp 0124 jobs/k3bmetawriter.cpp 0125 tools/libisofs/isofs.cpp 0126 projects/audiocd/k3baudiojob.cpp 0127 projects/audiocd/k3baudiotrack.cpp 0128 projects/audiocd/k3baudiotrackreader.cpp 0129 projects/audiocd/k3baudiodoc.cpp 0130 projects/audiocd/k3baudiodocreader.cpp 0131 projects/audiocd/k3baudiofile.cpp 0132 projects/audiocd/k3baudiofilereader.cpp 0133 projects/audiocd/k3baudiozerodata.cpp 0134 projects/audiocd/k3baudiozerodatareader.cpp 0135 projects/audiocd/k3baudiodatasource.cpp 0136 projects/audiocd/k3brawaudiodatareader.cpp 0137 projects/audiocd/k3brawaudiodatasource.cpp 0138 projects/audiocd/k3baudionormalizejob.cpp 0139 projects/audiocd/k3baudiojobtempdata.cpp 0140 projects/audiocd/k3baudioimager.cpp 0141 projects/audiocd/k3baudiomaxspeedjob.cpp 0142 projects/audiocd/k3baudiocdtrackreader.cpp 0143 projects/audiocd/k3baudiocdtracksource.cpp 0144 projects/audiocd/k3baudiocdtrackdrag.cpp 0145 projects/audiocd/k3baudiodatasourceiterator.cpp 0146 projects/datacd/k3bdatajob.cpp 0147 projects/datacd/k3bdatadoc.cpp 0148 projects/datacd/k3bdataitem.cpp 0149 projects/datacd/k3bdiritem.cpp 0150 projects/datacd/k3bfileitem.cpp 0151 projects/datacd/k3bisoimager.cpp 0152 projects/datacd/k3bbootitem.cpp 0153 projects/datacd/k3bisooptions.cpp 0154 projects/datacd/k3bfilecompilationsizehandler.cpp 0155 projects/datacd/k3bsessionimportitem.cpp 0156 projects/datacd/k3bmkisofshandler.cpp 0157 projects/datacd/k3bdatapreparationjob.cpp 0158 projects/datacd/k3bmsinfofetcher.cpp 0159 projects/datacd/k3bdatamultisessionparameterjob.cpp 0160 projects/mixedcd/k3bmixeddoc.cpp 0161 projects/mixedcd/k3bmixedjob.cpp 0162 projects/movixcd/k3bmovixprogram.cpp 0163 projects/movixcd/k3bmovixdoc.cpp 0164 projects/movixcd/k3bmovixjob.cpp 0165 projects/movixcd/k3bmovixfileitem.cpp 0166 projects/movixcd/k3bmovixdocpreparer.cpp 0167 projects/videocd/mpeginfo/k3bmpeginfo.cpp 0168 projects/videocd/k3bvcddoc.cpp 0169 projects/videocd/k3bvcdtrack.cpp 0170 projects/videocd/k3bvcdjob.cpp 0171 projects/videocd/k3bvcdoptions.cpp 0172 projects/videocd/k3bvcdxmlview.cpp 0173 ${videodvd_sources} 0174 ${platform_sources} 0175 ) 0176 0177 target_include_directories(k3blib 0178 PUBLIC 0179 . 0180 core 0181 plugin 0182 tools 0183 projects 0184 projects/audiocd 0185 projects/datacd 0186 projects/videocd 0187 projects/mixedcd 0188 projects/movixcd 0189 projects/videodvd 0190 tools/qprocess 0191 jobs 0192 videodvd 0193 PRIVATE 0194 ${CMAKE_CURRENT_BINARY_DIR} 0195 ${CMAKE_CURRENT_BINARY_DIR}/core 0196 ${CMAKE_CURRENT_BINARY_DIR}/plugin 0197 ${CMAKE_CURRENT_BINARY_DIR}/tools 0198 ${CMAKE_CURRENT_BINARY_DIR}/projects 0199 ${CMAKE_CURRENT_BINARY_DIR}/jobs 0200 ) 0201 0202 target_link_libraries(k3blib 0203 PUBLIC 0204 KF${KF_MAJOR_VERSION}::Completion 0205 KF${KF_MAJOR_VERSION}::CoreAddons 0206 KF${KF_MAJOR_VERSION}::KIOCore 0207 KF${KF_MAJOR_VERSION}::Service 0208 PRIVATE 0209 k3bdevice 0210 KF${KF_MAJOR_VERSION}::FileMetaData 0211 KF${KF_MAJOR_VERSION}::IconThemes 0212 KF${KF_MAJOR_VERSION}::I18n 0213 KF${KF_MAJOR_VERSION}::Solid 0214 Qt${QT_MAJOR_VERSION}::Network 0215 Qt${QT_MAJOR_VERSION}::Widgets 0216 Qt${QT_MAJOR_VERSION}::Xml 0217 ${KCDDB_TARGET_NAME} 0218 samplerate 0219 ${videodvd_libraries} 0220 ) 0221 if (QT_MAJOR_VERSION STREQUAL "6") 0222 target_link_libraries(k3blib 0223 PUBLIC 0224 KF6::KCMUtils 0225 PRIVATE 0226 Qt6::Core5Compat 0227 ) 0228 else() 0229 target_link_libraries(k3blib 0230 PUBLIC 0231 KF5::ConfigWidgets 0232 PRIVATE 0233 KF5::KCMUtils 0234 ) 0235 endif() 0236 0237 if(WIN32) 0238 target_link_libraries(k3blib uuid ole32) 0239 endif(WIN32) 0240 0241 set_target_properties(k3blib PROPERTIES 0242 VERSION ${K3B_LIB_VERSION_MAJOR}.${K3B_LIB_VERSION_MINOR}.${K3B_LIB_VERSION_RELEASE} 0243 SOVERSION ${K3B_LIB_VERSION_MAJOR} 0244 ) 0245 0246 generate_export_header(k3blib 0247 EXPORT_MACRO_NAME LIBK3B_EXPORT 0248 DEPRECATED_MACRO_NAME LIBK3B_EXPORT_DEPRECATED 0249 EXPORT_FILE_NAME k3b_export.h 0250 ) 0251 0252 install(TARGETS k3blib ${KDE_INSTALL_TARGETS_DEFAULT_ARGS}) 0253 0254 install(FILES ${CMAKE_CURRENT_BINARY_DIR}/k3b_export.h DESTINATION ${KDE_INSTALL_INCLUDEDIR} COMPONENT Devel)