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 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)
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 # Silence some errors for now
0058 add_definitions(-DQT_DISABLE_DEPRECATED_BEFORE=0)
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/pid.cpp
0068   utils/coverfetcher.cpp
0069   utils/patternparser.cpp
0070   utils/playlist.cpp
0071   utils/wavefilewriter.cpp
0072   utils/cddaparanoia.cpp
0073   utils/cddadevices.cpp
0074   utils/encoderwrapper.cpp
0075   utils/cddaextractthread.cpp
0076   utils/upload.cpp
0077   utils/encoderassistant.cpp
0078   utils/hashlist.cpp
0079   utils/3rdparty/crc32.cpp
0080   utils/parameters.cpp
0081   utils/cachedimage.cpp
0082   utils/cuesheetwriter.cpp
0083   utils/tmpdir.cpp
0084   utils/discidcalculator.cpp
0085   widgets/cddaheaderwidget.cpp
0086   widgets/generalsettingswidget.cpp
0087   widgets/devicewidget.cpp
0088   widgets/profilewidget.cpp
0089   widgets/remoteserversettingswidget.cpp
0090   widgets/lamewidget.cpp
0091   widgets/oggencwidget.cpp
0092   widgets/flacwidget.cpp
0093   widgets/faacwidget.cpp
0094   widgets/wavewidget.cpp
0095   widgets/customwidget.cpp
0096   dialogs/coverbrowserdialog.cpp
0097   dialogs/cddaheaderdatadialog.cpp
0098   dialogs/profiledatadialog.cpp
0099   dialogs/profiledatacoverdialog.cpp
0100   dialogs/profiledataplaylistdialog.cpp
0101   dialogs/profiledatainfodialog.cpp
0102   dialogs/profiledatahashlistdialog.cpp
0103   dialogs/profiledatacuesheetdialog.cpp
0104   dialogs/profiledatasinglefiledialog.cpp
0105   dialogs/patternwizarddialog.cpp
0106   dialogs/commandwizarddialog.cpp
0107   dialogs/simplepatternwizarddialog.cpp
0108   dialogs/extractingprogressdialog.cpp
0109   dialogs/protocoldialog.cpp
0110   dialogs/errordialog.cpp
0111   core/audex.cpp
0112 )
0113 
0114 ki18n_wrap_ui(audex_SRCS
0115   widgets/generalsettingswidgetUI.ui
0116   widgets/devicewidgetUI.ui
0117   widgets/profilewidgetUI.ui
0118   widgets/remoteserversettingswidgetUI.ui
0119   widgets/lamewidgetUI.ui
0120   widgets/oggencwidgetUI.ui
0121   widgets/flacwidgetUI.ui
0122   widgets/faacwidgetUI.ui
0123   widgets/wavewidgetUI.ui
0124   widgets/customwidgetUI.ui
0125   dialogs/coverbrowserwidgetUI.ui
0126   dialogs/cddaheaderdatawidgetUI.ui
0127   dialogs/profiledatawidgetUI.ui
0128   dialogs/profiledatacoverwidgetUI.ui
0129   dialogs/profiledataplaylistwidgetUI.ui
0130   dialogs/profiledatainfowidgetUI.ui
0131   dialogs/profiledatahashlistwidgetUI.ui
0132   dialogs/profiledatacuesheetwidgetUI.ui
0133   dialogs/profiledatasinglefilewidgetUI.ui
0134   dialogs/patternwizardwidgetUI.ui
0135   dialogs/commandwizardwidgetUI.ui
0136   dialogs/simplepatternwizardwidgetUI.ui
0137   dialogs/extractingprogresswidgetUI.ui
0138   dialogs/protocolwidgetUI.ui
0139 )
0140 
0141 kconfig_add_kcfg_files(audex_SRCS preferences.kcfgc)
0142 qt5_add_resources(audex_SRCS audex.qrc)
0143 
0144 add_executable(audex ${audex_SRCS})
0145 target_link_libraries(audex
0146     Qt5::Script
0147     Qt5::Widgets
0148     Qt5::X11Extras
0149     KF5::Completion
0150     KF5::CoreAddons
0151     KF5::Crash
0152     KF5::I18n
0153     KF5::IconThemes
0154     KF5::KCMUtils
0155     KF5::KIOWidgets
0156     KF5::Solid
0157     KF5::TextWidgets
0158     KF5::WidgetsAddons
0159     KF5::XmlGui
0160     KF5::Cddb
0161     ${CDPARANOIA_LIBRARIES}
0162 )
0163 
0164 install(TARGETS audex DESTINATION ${KDE_INSTALL_BINDIR})
0165 install(PROGRAMS org.kde.audex.desktop DESTINATION ${KDE_INSTALL_APPDIR})
0166 install(FILES org.kde.audex.appdata.xml DESTINATION ${KDE_INSTALL_METAINFODIR})
0167 install(FILES audex-rip-audiocd.desktop DESTINATION ${KDE_INSTALL_DATADIR}/solid/actions)
0168 
0169 add_subdirectory(icons)
0170 add_subdirectory(images)
0171 
0172 if(BUILD_TESTING)
0173     find_package(Qt5Test REQUIRED)
0174     add_subdirectory(test)
0175 endif()
0176 
0177 # add clang-format target for all our real source files
0178 file(GLOB_RECURSE ALL_CLANG_FORMAT_SOURCE_FILES *.cpp *.h)
0179 kde_clang_format(${ALL_CLANG_FORMAT_SOURCE_FILES})
0180 
0181 feature_summary(WHAT ALL INCLUDE_QUIET_PACKAGES)