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

0001 if(QT_VERSION_MAJOR LESS 6)
0002   set(KID3_ANDROID_MIN_SDK_VERSION 16)
0003   set(KID3_ANDROID_TARGET_SDK_VERSION 22)
0004   set(KID3_ANDROID_NAME "org.qtproject.qt5.android.bindings.QtApplication")
0005   set(FIX_KID3ACTIVITY "import fileinput; [print(line, end='') for line in fileinput.input()]")
0006   set(ANDROIDMANIFEST_XML_IN "AndroidManifest.xml.in")
0007 else()
0008   set(KID3_ANDROID_MIN_SDK_VERSION 23)
0009   # To avoid scoped storage with API 29+, we need access to real files.
0010   # https://developer.android.com/about/versions/10/behavior-changes-10
0011   set(KID3_ANDROID_TARGET_SDK_VERSION 28)
0012   set(KID3_ANDROID_NAME "org.qtproject.qt.android.bindings.QtApplication")
0013   set(FIX_KID3ACTIVITY "import fileinput; \
0014     [print(line.replace('org.qtproject.qt5', 'org.qtproject.qt'), end='') \
0015     for line in fileinput.input()]")
0016   set(ANDROIDMANIFEST_XML_IN "AndroidManifest-qt6.xml.in")
0017 endif()
0018 
0019 set(QT_ANDROID_APP_PACKAGE_NAME "net.sourceforge.kid3")
0020 set(QT_ANDROID_APP_NAME "Kid3")
0021 set(_androidPackageDir ${CMAKE_CURRENT_BINARY_DIR}/package)
0022 configure_file(${ANDROIDMANIFEST_XML_IN}
0023                ${_androidPackageDir}/AndroidManifest.xml @ONLY)
0024 add_custom_command(OUTPUT ${_androidPackageDir}/src/net/sourceforge/kid3/Kid3Activity.java
0025   COMMAND ${CMAKE_COMMAND} -E make_directory ${_androidPackageDir}/src/net/sourceforge/kid3
0026   COMMAND ${PYTHON_EXECUTABLE} -c "${FIX_KID3ACTIVITY}"
0027           ${CMAKE_CURRENT_SOURCE_DIR}/Kid3Activity.java
0028           > ${_androidPackageDir}/src/net/sourceforge/kid3/Kid3Activity.java VERBATIM
0029   DEPENDS ${CMAKE_CURRENT_SOURCE_DIR}/Kid3Activity.java
0030 )
0031 set(_widths 32 48 64 128)
0032 set(_densities ldpi mdpi hdpi xhdpi)
0033 set(_icons)
0034 list(LENGTH _widths _len)
0035 math(EXPR _maxnr "${_len} - 1")
0036 foreach(_nr RANGE ${_maxnr})
0037   list(GET _widths ${_nr} _width)
0038   list(GET _densities ${_nr} _dens)
0039   set(_icondir ${_androidPackageDir}/res/drawable-${_dens})
0040   set(_icon ${_icondir}/icon.png)
0041   list(APPEND _icons ${_icon})
0042   set(_png ${CMAKE_CURRENT_SOURCE_DIR}/../src/app/${_width}-apps-kid3.png)
0043   add_custom_command(OUTPUT ${_icon}
0044     COMMAND ${CMAKE_COMMAND} -E make_directory ${_icondir}
0045     COMMAND ${CMAKE_COMMAND} -E copy ${_png} ${_icon}
0046     DEPENDS ${_png}
0047   )
0048 endforeach()
0049 
0050 add_custom_target(android-package
0051   DEPENDS ${_icons}
0052           ${_androidPackageDir}/src/net/sourceforge/kid3/Kid3Activity.java)
0053 if(CMAKE_BUILD_TYPE STREQUAL "Release" AND ANDROID_KEYSTORE_PATH AND ANDROID_KEYSTORE_ALIAS)
0054   set(_keystorePathAlias ${ANDROID_KEYSTORE_PATH} ${ANDROID_KEYSTORE_ALIAS})
0055 elseif(CMAKE_BUILD_TYPE STREQUAL "Release")
0056   set(_keystorePathAlias "UNSIGNED_RELEASE")
0057 else()
0058   set(_keystorePathAlias)
0059 endif()
0060 
0061 
0062 if(QT_VERSION_MAJOR LESS 6)
0063   set(_deploymentDepends
0064       lib/libQt${QT_VERSION_MAJOR}Core.so lib/libQt${QT_VERSION_MAJOR}Xml.so lib/libQt${QT_VERSION_MAJOR}Network.so lib/libQt${QT_VERSION_MAJOR}Gui.so
0065       plugins/bearer/libqandroidbearer.so plugins/platforms/android/libqtforandroid.so plugins/iconengines/libqsvgicon.so
0066       plugins/imageformats/libqjpeg.so
0067       plugins/imageformats/libqsvg.so
0068       plugins/imageformats/libqwebp.so
0069       lib/libQt${QT_VERSION_MAJOR}Multimedia.so lib/libQt${QT_VERSION_MAJOR}Qml.so
0070       lib/libQt${QT_VERSION_MAJOR}Quick.so lib/libQt${QT_VERSION_MAJOR}Widgets.so lib/libQt${QT_VERSION_MAJOR}Svg.so
0071       lib/libQt${QT_VERSION_MAJOR}QuickControls2.so lib/libQt${QT_VERSION_MAJOR}QuickTemplates2.so lib/libQt${QT_VERSION_MAJOR}AndroidExtras.so
0072       qml/Qt/labs/folderlistmodel/libqmlfolderlistmodelplugin.so qml/Qt/labs/folderlistmodel/plugins.qmltypes qml/Qt/labs/folderlistmodel/qmldir
0073       qml/QtQuick/Layouts/libqquicklayoutsplugin.so qml/QtQuick/Layouts/plugins.qmltypes qml/QtQuick/Layouts/qmldir
0074       qml/QtQuick/Window.2/libwindowplugin.so qml/QtQuick/Window.2/plugins.qmltypes qml/QtQuick/Window.2/qmldir
0075       qml/QtQuick/Templates.2/libqtquicktemplates2plugin.so qml/QtQuick/Templates.2/plugins.qmltypes qml/QtQuick/Templates.2/qmldir
0076       qml/QtQuick.2/libqtquick2plugin.so qml/QtQuick.2/plugins.qmltypes qml/QtQuick.2/qmldir
0077       qml/QtQuick/Controls.2/libqtquickcontrols2plugin.so qml/QtQuick/Controls.2/plugins.qmltypes qml/QtQuick/Controls.2/qmldir
0078       qml/QtQuick/Controls.2/AbstractButton.qml qml/QtQuick/Controls.2/ApplicationWindow.qml qml/QtQuick/Controls.2/BusyIndicator.qml qml/QtQuick/Controls.2/Button.qml qml/QtQuick/Controls.2/ButtonGroup.qml qml/QtQuick/Controls.2/CheckBox.qml qml/QtQuick/Controls.2/CheckDelegate.qml qml/QtQuick/Controls.2/ComboBox.qml qml/QtQuick/Controls.2/Container.qml qml/QtQuick/Controls.2/Control.qml qml/QtQuick/Controls.2/DelayButton.qml qml/QtQuick/Controls.2/Dial.qml qml/QtQuick/Controls.2/Dialog.qml qml/QtQuick/Controls.2/DialogButtonBox.qml qml/QtQuick/Controls.2/Drawer.qml qml/QtQuick/Controls.2/Frame.qml qml/QtQuick/Controls.2/GroupBox.qml qml/QtQuick/Controls.2/ItemDelegate.qml qml/QtQuick/Controls.2/Label.qml qml/QtQuick/Controls.2/Menu.qml qml/QtQuick/Controls.2/MenuItem.qml qml/QtQuick/Controls.2/MenuSeparator.qml qml/QtQuick/Controls.2/Page.qml qml/QtQuick/Controls.2/PageIndicator.qml qml/QtQuick/Controls.2/Pane.qml qml/QtQuick/Controls.2/Popup.qml qml/QtQuick/Controls.2/ProgressBar.qml qml/QtQuick/Controls.2/RadioButton.qml qml/QtQuick/Controls.2/RadioDelegate.qml qml/QtQuick/Controls.2/RangeSlider.qml qml/QtQuick/Controls.2/RoundButton.qml qml/QtQuick/Controls.2/ScrollBar.qml qml/QtQuick/Controls.2/ScrollIndicator.qml qml/QtQuick/Controls.2/ScrollView.qml qml/QtQuick/Controls.2/Slider.qml qml/QtQuick/Controls.2/SpinBox.qml qml/QtQuick/Controls.2/StackView.qml qml/QtQuick/Controls.2/SwipeDelegate.qml qml/QtQuick/Controls.2/SwipeView.qml qml/QtQuick/Controls.2/Switch.qml qml/QtQuick/Controls.2/SwitchDelegate.qml qml/QtQuick/Controls.2/TabBar.qml qml/QtQuick/Controls.2/TabButton.qml qml/QtQuick/Controls.2/TextArea.qml qml/QtQuick/Controls.2/TextField.qml qml/QtQuick/Controls.2/ToolBar.qml qml/QtQuick/Controls.2/ToolButton.qml qml/QtQuick/Controls.2/ToolSeparator.qml qml/QtQuick/Controls.2/ToolTip.qml qml/QtQuick/Controls.2/Tumbler.qml
0079       qml/QtQuick/Controls.2/Material/libqtquickcontrols2materialstyleplugin.so qml/QtQuick/Controls.2/Material/plugins.qmltypes qml/QtQuick/Controls.2/Material/qmldir
0080       qml/QtQuick/Controls.2/Material/ApplicationWindow.qml qml/QtQuick/Controls.2/Material/BoxShadow.qml qml/QtQuick/Controls.2/Material/BusyIndicator.qml qml/QtQuick/Controls.2/Material/Button.qml qml/QtQuick/Controls.2/Material/CheckBox.qml qml/QtQuick/Controls.2/Material/CheckDelegate.qml qml/QtQuick/Controls.2/Material/CheckIndicator.qml qml/QtQuick/Controls.2/Material/ComboBox.qml qml/QtQuick/Controls.2/Material/CursorDelegate.qml qml/QtQuick/Controls.2/Material/DelayButton.qml qml/QtQuick/Controls.2/Material/Dial.qml qml/QtQuick/Controls.2/Material/Dialog.qml qml/QtQuick/Controls.2/Material/DialogButtonBox.qml qml/QtQuick/Controls.2/Material/Drawer.qml qml/QtQuick/Controls.2/Material/ElevationEffect.qml qml/QtQuick/Controls.2/Material/Frame.qml qml/QtQuick/Controls.2/Material/GroupBox.qml qml/QtQuick/Controls.2/Material/ItemDelegate.qml qml/QtQuick/Controls.2/Material/Label.qml qml/QtQuick/Controls.2/Material/Menu.qml qml/QtQuick/Controls.2/Material/MenuItem.qml qml/QtQuick/Controls.2/Material/MenuSeparator.qml qml/QtQuick/Controls.2/Material/Page.qml qml/QtQuick/Controls.2/Material/PageIndicator.qml qml/QtQuick/Controls.2/Material/Pane.qml qml/QtQuick/Controls.2/Material/Popup.qml qml/QtQuick/Controls.2/Material/ProgressBar.qml qml/QtQuick/Controls.2/Material/RadioButton.qml qml/QtQuick/Controls.2/Material/RadioDelegate.qml qml/QtQuick/Controls.2/Material/RadioIndicator.qml qml/QtQuick/Controls.2/Material/RangeSlider.qml qml/QtQuick/Controls.2/Material/RectangularGlow.qml qml/QtQuick/Controls.2/Material/RoundButton.qml qml/QtQuick/Controls.2/Material/ScrollBar.qml qml/QtQuick/Controls.2/Material/ScrollIndicator.qml qml/QtQuick/Controls.2/Material/Slider.qml qml/QtQuick/Controls.2/Material/SliderHandle.qml qml/QtQuick/Controls.2/Material/SpinBox.qml qml/QtQuick/Controls.2/Material/StackView.qml qml/QtQuick/Controls.2/Material/SwipeDelegate.qml qml/QtQuick/Controls.2/Material/SwipeView.qml qml/QtQuick/Controls.2/Material/Switch.qml qml/QtQuick/Controls.2/Material/SwitchDelegate.qml qml/QtQuick/Controls.2/Material/SwitchIndicator.qml qml/QtQuick/Controls.2/Material/TabBar.qml qml/QtQuick/Controls.2/Material/TabButton.qml qml/QtQuick/Controls.2/Material/TextArea.qml qml/QtQuick/Controls.2/Material/TextField.qml qml/QtQuick/Controls.2/Material/ToolBar.qml qml/QtQuick/Controls.2/Material/ToolButton.qml qml/QtQuick/Controls.2/Material/ToolSeparator.qml qml/QtQuick/Controls.2/Material/ToolTip.qml qml/QtQuick/Controls.2/Material/Tumbler.qml
0081   )
0082   if(EXISTS "${QT_ANDROID_QT_ROOT}/jar/QtAndroid-bundled.jar")
0083     set(_deploymentDepends jar/QtAndroid-bundled.jar jar/QtAndroidBearer-bundled.jar jar/QtMultimedia-bundled.jar ${_deploymentDepends})
0084   else()
0085     set(_deploymentDepends jar/QtAndroid.jar jar/QtAndroidBearer.jar jar/QtAndroidExtras.jar jar/QtMultimedia.jar ${_deploymentDepends})
0086   endif()
0087   foreach(_qmlFile CheckIndicator.qml RadioIndicator.qml SwitchIndicator.qml)
0088     if(EXISTS "${QT_ANDROID_QT_ROOT}/qml/QtQuick/Controls.2/${_qmlFile}")
0089       set(_deploymentDepends ${_deploymentDepends} qml/QtQuick/Controls.2/${_qmlFile})
0090     endif()
0091   endforeach()
0092 
0093   include(qt-android-cmake/AddQtAndroidApk.cmake)
0094   set(QT_ANDROID_BUILD_TOOLS_REVISION "23.0.1")
0095   add_qt_android_apk(apk kid3-qml
0096     NAME Kid3
0097     PACKAGE_NAME "net.sourceforge.kid3"
0098     DEPENDS kid3-core kid3-gui
0099             musicbrainzimport discogsimport freedbimport amazonimport
0100             taglibmetadata kid3qml Qt${QT_VERSION_MAJOR}::Svg
0101             ${ANDROID_EXTRA_LIBS_DIR}/libssl_1_1.so ${ANDROID_EXTRA_LIBS_DIR}/libcrypto_1_1.so
0102     DEPLOYMENT_DEPENDS ${_deploymentDepends}
0103     PACKAGE_SOURCES ${_androidPackageDir}
0104     KEYSTORE ${_keystorePathAlias}
0105   )
0106 
0107   # Unfortunately, androiddeployqt performs the library stripping before copying
0108   # the android-extra-libs (after DEPENDS in the command above). The external
0109   # libraries have to be stripped by the linker before the package is built.
0110   set_property(TARGET musicbrainzimport APPEND PROPERTY LINK_FLAGS_RELEASE -s)
0111   set_property(TARGET discogsimport APPEND PROPERTY LINK_FLAGS_RELEASE -s)
0112   set_property(TARGET freedbimport APPEND PROPERTY LINK_FLAGS_RELEASE -s)
0113   set_property(TARGET amazonimport APPEND PROPERTY LINK_FLAGS_RELEASE -s)
0114   set_property(TARGET taglibmetadata APPEND PROPERTY LINK_FLAGS_RELEASE -s)
0115   set_property(TARGET kid3qml APPEND PROPERTY LINK_FLAGS_RELEASE -s)
0116   set_property(TARGET kid3-core APPEND PROPERTY LINK_FLAGS_RELEASE -s)
0117   set_property(TARGET kid3-gui APPEND PROPERTY LINK_FLAGS_RELEASE -s)
0118 
0119   add_dependencies(apk android-package musicbrainzimport discogsimport
0120                    freedbimport amazonimport taglibmetadata kid3qml)
0121 else(QT_VERSION_MAJOR LESS 6)
0122   set(_deploymentDepends
0123       jar/Qt${QT_VERSION_MAJOR}Android.jar jar/Qt${QT_VERSION_MAJOR}AndroidNetwork.jar jar/Qt${QT_VERSION_MAJOR}AndroidNetworkInformationBackend.jar jar/Qt${QT_VERSION_MAJOR}AndroidMultimedia.jar
0124       lib/libQt${QT_VERSION_MAJOR}Core_armeabi-v7a.so lib/libQt${QT_VERSION_MAJOR}Xml_armeabi-v7a.so lib/libQt${QT_VERSION_MAJOR}Network_armeabi-v7a.so lib/libQt${QT_VERSION_MAJOR}Gui_armeabi-v7a.so
0125       lib/libQt${QT_VERSION_MAJOR}OpenGL_armeabi-v7a.so lib/libQt${QT_VERSION_MAJOR}QmlModels_armeabi-v7a.so lib/libQt${QT_VERSION_MAJOR}QuickControls2Impl_armeabi-v7a.so
0126       lib/libQt${QT_VERSION_MAJOR}LabsFolderListModel_armeabi-v7a.so lib/libQt${QT_VERSION_MAJOR}QuickLayouts_armeabi-v7a.so
0127       plugins/networkinformation/libplugins_networkinformation_qandroidnetworkinformation_armeabi-v7a.so plugins/platforms/libplugins_platforms_qtforandroid_armeabi-v7a.so plugins/iconengines/libplugins_iconengines_qsvgicon_armeabi-v7a.so
0128       plugins/tls/libplugins_tls_qopensslbackend_armeabi-v7a.so
0129       plugins/imageformats/libplugins_imageformats_qjpeg_armeabi-v7a.so
0130       plugins/imageformats/libplugins_imageformats_qwebp_armeabi-v7a.so
0131       plugins/imageformats/libplugins_imageformats_qsvg_armeabi-v7a.so
0132       lib/libQt${QT_VERSION_MAJOR}Multimedia_armeabi-v7a.so lib/libQt${QT_VERSION_MAJOR}Qml_armeabi-v7a.so
0133       lib/libQt${QT_VERSION_MAJOR}Quick_armeabi-v7a.so lib/libQt${QT_VERSION_MAJOR}Widgets_armeabi-v7a.so lib/libQt${QT_VERSION_MAJOR}Svg_armeabi-v7a.so
0134       lib/libQt${QT_VERSION_MAJOR}QuickControls2_armeabi-v7a.so lib/libQt${QT_VERSION_MAJOR}QuickTemplates2_armeabi-v7a.so
0135       lib/libQt${QT_VERSION_MAJOR}QmlWorkerScript_armeabi-v7a.so
0136       qml/Qt/labs/folderlistmodel/libqml_Qt_labs_folderlistmodel_qmlfolderlistmodelplugin_armeabi-v7a.so qml/Qt/labs/folderlistmodel/plugins.qmltypes qml/Qt/labs/folderlistmodel/qmldir
0137       qml/QtQml/WorkerScript/libqml_QtQml_WorkerScript_workerscriptplugin_armeabi-v7a.so qml/QtQml/WorkerScript/plugins.qmltypes qml/QtQml/WorkerScript/qmldir
0138       qml/QtQuick/Layouts/libqml_QtQuick_Layouts_qquicklayoutsplugin_armeabi-v7a.so qml/QtQuick/Layouts/plugins.qmltypes qml/QtQuick/Layouts/qmldir
0139       qml/QtQuick/Window/libqml_QtQuick_Window_quickwindowplugin_armeabi-v7a.so qml/QtQuick/Window/qmldir qml/QtQuick/Window/quickwindow.qmltypes
0140       qml/QtQuick/Templates/libqml_QtQuick_Templates_qtquicktemplates2plugin_armeabi-v7a.so qml/QtQuick/Templates/plugins.qmltypes qml/QtQuick/Templates/qmldir
0141       qml/QtQuick/libqml_QtQuick_qtquick2plugin_armeabi-v7a.so qml/QtQuick/plugins.qmltypes qml/QtQuick/qmldir
0142       qml/QtQuick/Controls/libqml_QtQuick_Controls_qtquickcontrols2plugin_armeabi-v7a.so qml/QtQuick/Controls/plugins.qmltypes qml/QtQuick/Controls/qmldir
0143       qml/QtQuick/Controls/Basic/libqml_QtQuick_Controls_Basic_qtquickcontrols2basicstyleplugin_armeabi-v7a.so qml/QtQuick/Controls/Basic/plugins.qmltypes qml/QtQuick/Controls/Basic/qmldir
0144       qml/QtQuick/Controls/Basic/AbstractButton.qml qml/QtQuick/Controls/Basic/ApplicationWindow.qml qml/QtQuick/Controls/Basic/BusyIndicator.qml qml/QtQuick/Controls/Basic/Button.qml qml/QtQuick/Controls/Basic/ButtonGroup.qml qml/QtQuick/Controls/Basic/CheckBox.qml qml/QtQuick/Controls/Basic/CheckDelegate.qml qml/QtQuick/Controls/Basic/ComboBox.qml qml/QtQuick/Controls/Basic/Container.qml qml/QtQuick/Controls/Basic/Control.qml qml/QtQuick/Controls/Basic/DelayButton.qml qml/QtQuick/Controls/Basic/Dial.qml qml/QtQuick/Controls/Basic/Dialog.qml qml/QtQuick/Controls/Basic/DialogButtonBox.qml qml/QtQuick/Controls/Basic/Drawer.qml qml/QtQuick/Controls/Basic/Frame.qml qml/QtQuick/Controls/Basic/GroupBox.qml qml/QtQuick/Controls/Basic/ItemDelegate.qml qml/QtQuick/Controls/Basic/Label.qml qml/QtQuick/Controls/Basic/Menu.qml qml/QtQuick/Controls/Basic/MenuItem.qml qml/QtQuick/Controls/Basic/MenuSeparator.qml qml/QtQuick/Controls/Basic/Page.qml qml/QtQuick/Controls/Basic/PageIndicator.qml qml/QtQuick/Controls/Basic/Pane.qml qml/QtQuick/Controls/Basic/Popup.qml qml/QtQuick/Controls/Basic/ProgressBar.qml qml/QtQuick/Controls/Basic/RadioButton.qml qml/QtQuick/Controls/Basic/RadioDelegate.qml qml/QtQuick/Controls/Basic/RangeSlider.qml qml/QtQuick/Controls/Basic/RoundButton.qml qml/QtQuick/Controls/Basic/ScrollBar.qml qml/QtQuick/Controls/Basic/ScrollIndicator.qml qml/QtQuick/Controls/Basic/ScrollView.qml qml/QtQuick/Controls/Basic/Slider.qml qml/QtQuick/Controls/Basic/SpinBox.qml qml/QtQuick/Controls/Basic/StackView.qml qml/QtQuick/Controls/Basic/SwipeDelegate.qml qml/QtQuick/Controls/Basic/SwipeView.qml qml/QtQuick/Controls/Basic/Switch.qml qml/QtQuick/Controls/Basic/SwitchDelegate.qml qml/QtQuick/Controls/Basic/TabBar.qml qml/QtQuick/Controls/Basic/TabButton.qml qml/QtQuick/Controls/Basic/TextArea.qml qml/QtQuick/Controls/Basic/TextField.qml qml/QtQuick/Controls/Basic/ToolBar.qml qml/QtQuick/Controls/Basic/ToolButton.qml qml/QtQuick/Controls/Basic/ToolSeparator.qml qml/QtQuick/Controls/Basic/ToolTip.qml qml/QtQuick/Controls/Basic/Tumbler.qml
0145       qml/QtQuick/Controls/Material/libqml_QtQuick_Controls_Material_qtquickcontrols2materialstyleplugin_armeabi-v7a.so qml/QtQuick/Controls/Material/plugins.qmltypes qml/QtQuick/Controls/Material/qmldir
0146       qml/QtQuick/Controls/Material/ApplicationWindow.qml qml/QtQuick/Controls/Material/impl/BoxShadow.qml qml/QtQuick/Controls/Material/BusyIndicator.qml qml/QtQuick/Controls/Material/Button.qml qml/QtQuick/Controls/Material/CheckBox.qml qml/QtQuick/Controls/Material/CheckDelegate.qml qml/QtQuick/Controls/Material/impl/CheckIndicator.qml qml/QtQuick/Controls/Material/ComboBox.qml qml/QtQuick/Controls/Material/impl/CursorDelegate.qml qml/QtQuick/Controls/Material/DelayButton.qml qml/QtQuick/Controls/Material/Dial.qml qml/QtQuick/Controls/Material/Dialog.qml qml/QtQuick/Controls/Material/DialogButtonBox.qml qml/QtQuick/Controls/Material/Drawer.qml qml/QtQuick/Controls/Material/impl/ElevationEffect.qml qml/QtQuick/Controls/Material/Frame.qml qml/QtQuick/Controls/Material/GroupBox.qml qml/QtQuick/Controls/Material/ItemDelegate.qml qml/QtQuick/Controls/Material/Label.qml qml/QtQuick/Controls/Material/Menu.qml qml/QtQuick/Controls/Material/MenuItem.qml qml/QtQuick/Controls/Material/MenuSeparator.qml qml/QtQuick/Controls/Material/Page.qml qml/QtQuick/Controls/Material/PageIndicator.qml qml/QtQuick/Controls/Material/Pane.qml qml/QtQuick/Controls/Material/Popup.qml qml/QtQuick/Controls/Material/ProgressBar.qml qml/QtQuick/Controls/Material/RadioButton.qml qml/QtQuick/Controls/Material/RadioDelegate.qml qml/QtQuick/Controls/Material/impl/RadioIndicator.qml qml/QtQuick/Controls/Material/RangeSlider.qml qml/QtQuick/Controls/Material/impl/RectangularGlow.qml qml/QtQuick/Controls/Material/RoundButton.qml qml/QtQuick/Controls/Material/ScrollBar.qml qml/QtQuick/Controls/Material/ScrollIndicator.qml qml/QtQuick/Controls/Material/Slider.qml qml/QtQuick/Controls/Material/impl/SliderHandle.qml qml/QtQuick/Controls/Material/SpinBox.qml qml/QtQuick/Controls/Material/StackView.qml qml/QtQuick/Controls/Material/SwipeDelegate.qml qml/QtQuick/Controls/Material/SwipeView.qml qml/QtQuick/Controls/Material/Switch.qml qml/QtQuick/Controls/Material/SwitchDelegate.qml qml/QtQuick/Controls/Material/impl/SwitchIndicator.qml qml/QtQuick/Controls/Material/TabBar.qml qml/QtQuick/Controls/Material/TabButton.qml qml/QtQuick/Controls/Material/TextArea.qml qml/QtQuick/Controls/Material/TextField.qml qml/QtQuick/Controls/Material/ToolBar.qml qml/QtQuick/Controls/Material/ToolButton.qml qml/QtQuick/Controls/Material/ToolSeparator.qml qml/QtQuick/Controls/Material/ToolTip.qml qml/QtQuick/Controls/Material/Tumbler.qml
0147       qml/QtQuick/Controls/Material/impl/libqml_QtQuick_Controls_Material_impl_qtquickcontrols2materialstyleimplplugin_armeabi-v7a.so qml/QtQuick/Controls/Material/impl/plugins.qmltypes qml/QtQuick/Controls/Material/impl/qmldir
0148   )
0149 
0150   qt_add_executable(kid3apk MANUAL_FINALIZATION)
0151   target_link_libraries(kid3apk PRIVATE kid3-qml Qt${QT_VERSION_MAJOR}::Svg)
0152 
0153   # qt_add_qml_module is needed to have the QML plugins included
0154   set(_qmlFiles ${QMLAPP_QML_SOURCES})
0155   list(TRANSFORM _qmlFiles PREPEND "../src/qml/")
0156   qt_add_qml_module(kid3apk
0157       URI net.sourceforge.kid3
0158       VERSION 1.1
0159       QML_FILES ${_qmlFiles}
0160       NO_PLUGIN_OPTIONAL
0161       NO_GENERATE_PLUGIN_SOURCE
0162       NO_GENERATE_QMLTYPES
0163       NO_GENERATE_QMLDIR
0164       NO_LINT
0165       NO_CACHEGEN
0166       NO_RESOURCE_TARGET_PATH
0167   )
0168 
0169   add_dependencies(kid3apk android-package musicbrainzimport discogsimport
0170                    freedbimport amazonimport taglibmetadata kid3qml)
0171 
0172   cmake_policy(SET CMP0026 OLD) # allow use of the LOCATION target property
0173   set(EXTRA_LIBS)
0174   foreach(LIB kid3apk kid3-qml kid3-core kid3-gui musicbrainzimport discogsimport
0175       freedbimport amazonimport taglibmetadata kid3qml
0176       ${ANDROID_EXTRA_LIBS_DIR}/libssl_3.so
0177       ${ANDROID_EXTRA_LIBS_DIR}/libcrypto_3.so)
0178     if(TARGET ${LIB})
0179       if(CMAKE_BUILD_TYPE STREQUAL "Debug")
0180         get_property(LIB_PATH TARGET ${LIB} PROPERTY DEBUG_LOCATION)
0181       else()
0182         get_property(LIB_PATH TARGET ${LIB} PROPERTY LOCATION)
0183       endif()
0184       set(LIB ${LIB_PATH})
0185     endif()
0186     if(EXTRA_LIBS)
0187       set(EXTRA_LIBS "${EXTRA_LIBS},${LIB}")
0188     else()
0189       set(EXTRA_LIBS "${LIB}")
0190     endif()
0191   endforeach()
0192 
0193   set_target_properties(kid3apk PROPERTIES
0194     QT_ANDROID_DEPLOYMENT_DEPENDENCIES "${_deploymentDepends}"
0195     QT_ANDROID_EXTRA_LIBS "${EXTRA_LIBS}"
0196     QT_ANDROID_MIN_SDK_VERSION "${KID3_ANDROID_MIN_SDK_VERSION}"
0197     QT_ANDROID_PACKAGE_SOURCE_DIR "${_androidPackageDir}"
0198     QT_ANDROID_TARGET_SDK_VERSION "${KID3_ANDROID_TARGET_SDK_VERSION}"
0199     QT_ANDROID_VERSION_NAME "${QT_ANDROID_APP_VERSION}"
0200     QT_ANDROID_VERSION_CODE "${QT_ANDROID_APP_VERSION_CODE}"
0201   )
0202 
0203   # To sign the package when building the apk target, the enviroment variables
0204   # QT_ANDROID_KEYSTORE_PATH and QT_ANDROID_KEYSTORE_ALIAS must be set.
0205   # If QT_ANDROID_KEYSTORE_STORE_PASS is not set, the user has to enter the
0206   # password.
0207   if(CMAKE_BUILD_TYPE STREQUAL "Release" AND ANDROID_KEYSTORE_PATH AND ANDROID_KEYSTORE_ALIAS)
0208     set(QT_ANDROID_SIGN_APK ON)
0209   endif()
0210 
0211   qt_finalize_target(kid3apk)
0212 endif(QT_VERSION_MAJOR LESS 6)