Warning, /multimedia/audex/CMakeLists.txt is written in an unsupported language. File is not indexed.

0001 cmake_minimum_required(VERSION 3.0.0)
0002 
0003 project(Audex VERSION "0.95")
0004 
0005 set(KF5_MIN_VERSION "5.64.0")
0006 
0007 find_package(ECM ${KF5_MIN_VERSION} REQUIRED NO_MODULE)
0008 
0009 set(CMAKE_MODULE_PATH ${ECM_MODULE_PATH} ${CMAKE_MODULE_PATH} ${CMAKE_CURRENT_SOURCE_DIR}/cmake/modules)
0010 configure_file(config.h.cmake ${CMAKE_BINARY_DIR}/config.h)
0011 
0012 set(CMAKE_CXX_FLAGS_DEBUG "${CMAKE_CXX_FLAGS_DEBUG} -Wall -g")
0013 set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE}")
0014 
0015 include(KDEInstallDirs)
0016 include(KDECMakeSettings)
0017 include(KDECompilerSettings NO_POLICY_SCOPE)
0018 include(ECMInstallIcons)
0019 include(ECMAddTests)
0020 include(FeatureSummary)
0021 include(KDEClangFormat)
0022 
0023 find_package(Qt5 5.14 REQUIRED COMPONENTS
0024   Script
0025   Widgets
0026   X11Extras
0027 )
0028 find_package(KF5 ${KF5_MIN_VER} REQUIRED COMPONENTS
0029   Config
0030   Completion
0031   CoreAddons
0032   Crash
0033   I18n
0034   IconThemes
0035   KCMUtils
0036   KIO
0037   Solid
0038   TextWidgets
0039   WidgetsAddons
0040   XmlGui
0041 )
0042 find_package(KF5Cddb 5.1)
0043 set_package_properties(KF5Cddb PROPERTIES
0044   DESCRIPTION "KF5 branch for CDDB library"
0045   URL "https://commits.kde.org/libkcddb"
0046   TYPE REQUIRED
0047   PURPOSE "libkcddb is used to retrieve audio CD meta data from the internet."
0048 )
0049 find_package(Cdparanoia REQUIRED)
0050 
0051 include_directories(
0052   ${CMAKE_CURRENT_SOURCE_DIR}
0053   ${CMAKE_BINARY_DIR}
0054   ${CDPARANOIA_INCLUDE_DIR}
0055 )
0056 
0057 add_definitions(
0058     -DQT_DISABLE_DEPRECATED_BEFORE=0x050e00
0059     -DQT_NO_KEYWORDS
0060 )
0061 
0062 set(CMAKE_C_FLAGS "${AUDEX_ID3_CFLAGS} ${CMAKE_C_FLAGS}")
0063 
0064 set(audex_SRCS
0065   main.cpp
0066   mainwindow.cpp
0067   models/cddamodel.cpp
0068   models/profilemodel.cpp
0069   utils/pid.cpp
0070   utils/coverfetcher.cpp
0071   utils/patternparser.cpp
0072   utils/playlist.cpp
0073   utils/wavefilewriter.cpp
0074   utils/cddaparanoia.cpp
0075   utils/cddadevices.cpp
0076   utils/encoderwrapper.cpp
0077   utils/cddaextractthread.cpp
0078   utils/upload.cpp
0079   utils/encoderassistant.cpp
0080   utils/hashlist.cpp
0081   utils/3rdparty/crc32.cpp
0082   utils/parameters.cpp
0083   utils/cachedimage.cpp
0084   utils/cuesheetwriter.cpp
0085   utils/tmpdir.cpp
0086   utils/discidcalculator.cpp
0087   widgets/cddaheaderwidget.cpp
0088   widgets/generalsettingswidget.cpp
0089   widgets/devicewidget.cpp
0090   widgets/profilewidget.cpp
0091   widgets/remoteserversettingswidget.cpp
0092   widgets/lamewidget.cpp
0093   widgets/oggencwidget.cpp
0094   widgets/flacwidget.cpp
0095   widgets/faacwidget.cpp
0096   widgets/wavewidget.cpp
0097   widgets/customwidget.cpp
0098   dialogs/coverbrowserdialog.cpp
0099   dialogs/cddaheaderdatadialog.cpp
0100   dialogs/profiledatadialog.cpp
0101   dialogs/profiledatacoverdialog.cpp
0102   dialogs/profiledataplaylistdialog.cpp
0103   dialogs/profiledatainfodialog.cpp
0104   dialogs/profiledatahashlistdialog.cpp
0105   dialogs/profiledatacuesheetdialog.cpp
0106   dialogs/profiledatasinglefiledialog.cpp
0107   dialogs/patternwizarddialog.cpp
0108   dialogs/commandwizarddialog.cpp
0109   dialogs/simplepatternwizarddialog.cpp
0110   dialogs/extractingprogressdialog.cpp
0111   dialogs/protocoldialog.cpp
0112   dialogs/errordialog.cpp
0113   core/audex.cpp
0114 )
0115 
0116 ki18n_wrap_ui(audex_SRCS
0117   widgets/generalsettingswidgetUI.ui
0118   widgets/devicewidgetUI.ui
0119   widgets/profilewidgetUI.ui
0120   widgets/remoteserversettingswidgetUI.ui
0121   widgets/lamewidgetUI.ui
0122   widgets/oggencwidgetUI.ui
0123   widgets/flacwidgetUI.ui
0124   widgets/faacwidgetUI.ui
0125   widgets/wavewidgetUI.ui
0126   widgets/customwidgetUI.ui
0127   dialogs/coverbrowserwidgetUI.ui
0128   dialogs/cddaheaderdatawidgetUI.ui
0129   dialogs/profiledatawidgetUI.ui
0130   dialogs/profiledatacoverwidgetUI.ui
0131   dialogs/profiledataplaylistwidgetUI.ui
0132   dialogs/profiledatainfowidgetUI.ui
0133   dialogs/profiledatahashlistwidgetUI.ui
0134   dialogs/profiledatacuesheetwidgetUI.ui
0135   dialogs/profiledatasinglefilewidgetUI.ui
0136   dialogs/patternwizardwidgetUI.ui
0137   dialogs/commandwizardwidgetUI.ui
0138   dialogs/simplepatternwizardwidgetUI.ui
0139   dialogs/extractingprogresswidgetUI.ui
0140   dialogs/protocolwidgetUI.ui
0141 )
0142 
0143 kconfig_add_kcfg_files(audex_SRCS preferences.kcfgc)
0144 qt5_add_resources(audex_SRCS audex.qrc)
0145 
0146 add_executable(audex ${audex_SRCS})
0147 target_link_libraries(audex
0148     Qt5::Script
0149     Qt5::Widgets
0150     Qt5::X11Extras
0151     KF5::Completion
0152     KF5::CoreAddons
0153     KF5::Crash
0154     KF5::I18n
0155     KF5::IconThemes
0156     KF5::KCMUtils
0157     KF5::KIOWidgets
0158     KF5::Solid
0159     KF5::TextWidgets
0160     KF5::WidgetsAddons
0161     KF5::XmlGui
0162     KF5::Cddb
0163     ${CDPARANOIA_LIBRARIES}
0164 )
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 DESTINATION ${KDE_INSTALL_DATADIR}/solid/actions)
0170 
0171 add_subdirectory(icons)
0172 add_subdirectory(images)
0173 
0174 if(BUILD_TESTING)
0175     find_package(Qt5Test REQUIRED)
0176     add_subdirectory(test)
0177 endif()
0178 
0179 # add clang-format target for all our real source files
0180 file(GLOB_RECURSE ALL_CLANG_FORMAT_SOURCE_FILES *.cpp *.h)
0181 kde_clang_format(${ALL_CLANG_FORMAT_SOURCE_FILES})
0182 
0183 feature_summary(WHAT ALL INCLUDE_QUIET_PACKAGES)