Warning, /multimedia/audex/CMakeLists.txt is written in an unsupported language. File is not indexed.
0001 cmake_minimum_required(VERSION 3.16.0) 0002 0003 project(Audex VERSION "0.98") 0004 0005 set(KF6_MIN_VERSION "5.245.0") 0006 0007 find_package(ECM ${KF6_MIN_VERSION} REQUIRED NO_MODULE) 0008 0009 set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${CMAKE_MODULE_PATH} 0010 ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules) 0011 configure_file(config.h.cmake ${CMAKE_BINARY_DIR}/config.h) 0012 0013 set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -Wall -g") 0014 set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE}") 0015 0016 include(KDEInstallDirs) 0017 include(KDECMakeSettings) 0018 include(KDECompilerSettings NO_POLICY_SCOPE) 0019 include(ECMInstallIcons) 0020 include(ECMAddTests) 0021 include(FeatureSummary) 0022 include(KDEClangFormat) 0023 0024 find_package(Qt6 6.5 REQUIRED COMPONENTS Widgets Qml Core5Compat) 0025 find_package( 0026 KF6 ${KF6_MIN_VER} REQUIRED 0027 COMPONENTS Config 0028 Completion 0029 CoreAddons 0030 Crash 0031 I18n 0032 IconThemes 0033 KCMUtils 0034 KIO 0035 Solid 0036 TextWidgets 0037 WidgetsAddons 0038 XmlGui) 0039 find_package(KCddb6 5.1) 0040 set_package_properties( 0041 KCddb6 PROPERTIES 0042 DESCRIPTION "CDDB library" 0043 URL "https://commits.kde.org/libkcddb" 0044 TYPE REQUIRED 0045 PURPOSE "libkcddb is used to retrieve audio CD meta data from the internet.") 0046 find_package(cdio REQUIRED) 0047 find_package(cdio_cdda REQUIRED) 0048 find_package(cdio_paranoia REQUIRED) 0049 0050 include_directories( 0051 ${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_BINARY_DIR} ${CDIO_INCLUDE_DIRS} 0052 ${CDIO_CDDA_INCLUDE_DIRS} ${CDIO_PARANOIA_INCLUDE_DIRS}) 0053 0054 add_definitions(-DQT_DISABLE_DEPRECATED_BEFORE=0x050e00) 0055 0056 remove_definitions( 0057 -DQT_NO_CAST_FROM_ASCII -DQT_NO_URL_CAST_FROM_STRING 0058 -DQT_NO_CAST_FROM_BYTEARRAY -DQT_USE_QSTRINGBUILDER -DQT_NO_FOREACH) 0059 0060 set(CMAKE_C_FLAGS "${AUDEX_ID3_CFLAGS} ${CMAKE_C_FLAGS}") 0061 0062 set(audex_SRCS 0063 main.cpp 0064 mainwindow.cpp 0065 models/cddamodel.cpp 0066 models/profilemodel.cpp 0067 utils/schemeparser.cpp 0068 utils/playlist.cpp 0069 utils/wavefilewriter.cpp 0070 utils/cddacdio.cpp 0071 utils/cddadevices.cpp 0072 utils/encoderwrapper.cpp 0073 utils/cddaextractthread.cpp 0074 utils/upload.cpp 0075 utils/encoderassistant.cpp 0076 utils/hashlist.cpp 0077 utils/crc32hash.cpp 0078 utils/parameters.cpp 0079 utils/cuesheetwriter.cpp 0080 utils/discidcalculator.cpp 0081 widgets/cddaheaderwidget.cpp 0082 widgets/generalsettingswidget.cpp 0083 widgets/devicewidget.cpp 0084 widgets/profilewidget.cpp 0085 widgets/remoteserversettingswidget.cpp 0086 widgets/lamewidget.cpp 0087 widgets/oggencwidget.cpp 0088 widgets/opusencwidget.cpp 0089 widgets/flacwidget.cpp 0090 widgets/faacwidget.cpp 0091 widgets/wavewidget.cpp 0092 widgets/customwidget.cpp 0093 dialogs/cddaheaderdatadialog.cpp 0094 dialogs/profiledatadialog.cpp 0095 dialogs/profiledatacoverdialog.cpp 0096 dialogs/profiledataplaylistdialog.cpp 0097 dialogs/profiledatainfodialog.cpp 0098 dialogs/profiledatahashlistdialog.cpp 0099 dialogs/profiledatacuesheetdialog.cpp 0100 dialogs/profiledatalogfiledialog.cpp 0101 dialogs/profiledatasinglefiledialog.cpp 0102 dialogs/schemewizarddialog.cpp 0103 dialogs/commandwizarddialog.cpp 0104 dialogs/filenameschemewizarddialog.cpp 0105 dialogs/extractingprogressdialog.cpp 0106 dialogs/logviewdialog.cpp 0107 dialogs/textviewdialog.cpp 0108 dialogs/errordialog.cpp 0109 core/audex.cpp) 0110 0111 ki18n_wrap_ui( 0112 audex_SRCS 0113 widgets/generalsettingswidgetUI.ui 0114 widgets/devicewidgetUI.ui 0115 widgets/profilewidgetUI.ui 0116 widgets/remoteserversettingswidgetUI.ui 0117 widgets/lamewidgetUI.ui 0118 widgets/oggencwidgetUI.ui 0119 widgets/opusencwidgetUI.ui 0120 widgets/flacwidgetUI.ui 0121 widgets/faacwidgetUI.ui 0122 widgets/wavewidgetUI.ui 0123 widgets/customwidgetUI.ui 0124 dialogs/cddaheaderdatawidgetUI.ui 0125 dialogs/profiledatawidgetUI.ui 0126 dialogs/profiledatacoverwidgetUI.ui 0127 dialogs/profiledataplaylistwidgetUI.ui 0128 dialogs/profiledatainfowidgetUI.ui 0129 dialogs/profiledatahashlistwidgetUI.ui 0130 dialogs/profiledatacuesheetwidgetUI.ui 0131 dialogs/profiledatalogfilewidgetUI.ui 0132 dialogs/profiledatasinglefilewidgetUI.ui 0133 dialogs/schemewizardwidgetUI.ui 0134 dialogs/commandwizardwidgetUI.ui 0135 dialogs/filenameschemewizardwidgetUI.ui 0136 dialogs/extractingprogresswidgetUI.ui 0137 dialogs/logviewwidgetUI.ui 0138 dialogs/textviewwidgetUI.ui) 0139 0140 kconfig_add_kcfg_files(audex_SRCS preferences.kcfgc) 0141 qt_add_resources(audex_SRCS audex.qrc) 0142 0143 add_executable(audex ${audex_SRCS}) 0144 target_link_libraries( 0145 audex 0146 Qt6::Widgets 0147 Qt6::Qml 0148 Qt6::Core5Compat 0149 KF6::Completion 0150 KF6::CoreAddons 0151 KF6::Crash 0152 KF6::I18n 0153 KF6::IconThemes 0154 KF6::IconWidgets 0155 KF6::KCMUtils 0156 KF6::KIOWidgets 0157 KF6::Solid 0158 KF6::TextWidgets 0159 KF6::WidgetsAddons 0160 KF6::XmlGui 0161 KCddb6 0162 ${CDIO_LIBRARIES} 0163 ${CDIO_CDDA_LIBRARIES} 0164 ${CDIO_PARANOIA_LIBRARIES}) 0165 0166 install(TARGETS audex DESTINATION ${KDE_INSTALL_BINDIR}) 0167 install(PROGRAMS org.kde.audex.desktop DESTINATION ${KDE_INSTALL_APPDIR}) 0168 install(FILES org.kde.audex.appdata.xml DESTINATION ${KDE_INSTALL_METAINFODIR}) 0169 install(FILES audex-rip-audiocd.desktop 0170 DESTINATION ${KDE_INSTALL_DATADIR}/solid/actions) 0171 0172 add_subdirectory(icons) 0173 add_subdirectory(images) 0174 0175 if(BUILD_TESTING) 0176 find_package(Qt6Test REQUIRED) 0177 add_subdirectory(test) 0178 endif() 0179 0180 # Install translations 0181 ki18n_install(po) 0182 0183 # add clang-format target for all our real source files 0184 file(GLOB_RECURSE ALL_CLANG_FORMAT_SOURCE_FILES *.cpp *.h) 0185 kde_clang_format(${ALL_CLANG_FORMAT_SOURCE_FILES}) 0186 0187 feature_summary(WHAT ALL INCLUDE_QUIET_PACKAGES)