diff --git a/.github/workflows/builds_desktop.yml b/.github/workflows/builds_desktop.yml index 9f5a02b..1af7f55 100644 --- a/.github/workflows/builds_desktop.yml +++ b/.github/workflows/builds_desktop.yml @@ -38,7 +38,6 @@ jobs: uses: jurplel/install-qt-action@v3 with: version: ${{env.QT_VERSION}} - modules: qt5compat # Install dependencies (from package manager) - name: Install dependencies (from package manager) @@ -96,7 +95,6 @@ jobs: uses: jurplel/install-qt-action@v3 with: version: ${{env.QT_VERSION}} - modules: qt5compat # Setup env - name: Setup env @@ -143,7 +141,6 @@ jobs: uses: jurplel/install-qt-action@v3 with: version: ${{env.QT_VERSION}} - modules: qt5compat # Install NSIS (already installed in 'windows-2022') #- name: Install NSIS diff --git a/.github/workflows/builds_desktop_cmake.yml b/.github/workflows/builds_desktop_cmake.yml index 8a566bf..a93f486 100644 --- a/.github/workflows/builds_desktop_cmake.yml +++ b/.github/workflows/builds_desktop_cmake.yml @@ -38,7 +38,6 @@ jobs: uses: jurplel/install-qt-action@v3 with: version: ${{env.QT_VERSION}} - modules: qt5compat # Install dependencies (from package manager) - name: Install dependencies (from package manager) @@ -97,7 +96,6 @@ jobs: uses: jurplel/install-qt-action@v3 with: version: ${{env.QT_VERSION}} - modules: qt5compat # Setup env - name: Setup env @@ -145,7 +143,6 @@ jobs: uses: jurplel/install-qt-action@v3 with: version: ${{env.QT_VERSION}} - modules: qt5compat # Install NSIS (already installed in 'windows-2022') #- name: Install NSIS diff --git a/.github/workflows/builds_mobile.yml b/.github/workflows/builds_mobile.yml index 1231255..814a85b 100644 --- a/.github/workflows/builds_mobile.yml +++ b/.github/workflows/builds_mobile.yml @@ -57,7 +57,6 @@ jobs: host: 'linux' target: 'android' arch: 'android_arm64_v8a' - modules: qt5compat extra: '--autodesktop' # Setup env @@ -89,7 +88,6 @@ jobs: version: ${{env.QT_VERSION}} host: 'mac' target: 'ios' - modules: qt5compat qtshadertools extra: '--autodesktop' # Setup env diff --git a/.github/workflows/builds_mobile_cmake.yml b/.github/workflows/builds_mobile_cmake.yml index f2ca2ae..95af8cb 100644 --- a/.github/workflows/builds_mobile_cmake.yml +++ b/.github/workflows/builds_mobile_cmake.yml @@ -88,7 +88,6 @@ jobs: with: aqtversion: '==3.1.*' version: ${{env.QT_VERSION}} - modules: qt5compat - name: Install Qt (Android armv7) uses: jurplel/install-qt-action@v3 @@ -98,7 +97,6 @@ jobs: host: 'linux' target: 'android' arch: 'android_armv7' - modules: qt5compat - name: Install Qt (Android armv8) uses: jurplel/install-qt-action@v3 @@ -108,7 +106,6 @@ jobs: host: 'linux' target: 'android' arch: 'android_arm64_v8a' - modules: qt5compat - name: Install Qt (Android x86) uses: jurplel/install-qt-action@v3 @@ -118,7 +115,6 @@ jobs: host: 'linux' target: 'android' arch: 'android_x86' - modules: qt5compat - name: Install Qt (Android x86_64) uses: jurplel/install-qt-action@v3 @@ -128,7 +124,6 @@ jobs: host: 'linux' target: 'android' arch: 'android_x86_64' - modules: qt5compat # Install dependencies (from package manager) - name: Install dependencies (from package manager) @@ -201,14 +196,12 @@ jobs: uses: jurplel/install-qt-action@v3 with: version: ${{env.QT_VERSION}} - modules: qt5compat qtshadertools # Install Qt (iOS) - name: Install Qt (iOS) uses: jurplel/install-qt-action@v3 with: version: ${{env.QT_VERSION}} - modules: qt5compat qtshadertools host: 'mac' target: 'ios' diff --git a/CMakeLists.txt b/CMakeLists.txt index 6056d3e..8ca6a81 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -34,10 +34,10 @@ qt_standard_project_setup(REQUIRES 6.5) qt_add_executable(${CMAKE_PROJECT_NAME} src/SettingsManager.cpp src/SettingsManager.h src/main.cpp - qml/qml.qrc - qml/components.qrc i18n/i18n.qrc assets/assets.qrc + qml/qml.qrc + qml/ComponentLibrary/ComponentLibrary.qrc ) target_include_directories(${CMAKE_PROJECT_NAME} PUBLIC src/thirdparty/) @@ -164,8 +164,6 @@ if(lupdate_only) target_sources(${CMAKE_PROJECT_NAME} PUBLIC qml/*.js qml/*.qml qml/components/*.qml - qml/components_generic/*.qml - qml/components_js/*.js ) endif() diff --git a/QmlAppTemplate.pro b/QmlAppTemplate.pro index 30845a6..56a2157 100644 --- a/QmlAppTemplate.pro +++ b/QmlAppTemplate.pro @@ -37,10 +37,10 @@ HEADERS += src/SettingsManager.h INCLUDEPATH += src/ src/thirdparty/ -RESOURCES += qml/qml.qrc \ - qml/components.qrc \ - i18n/i18n.qrc \ - assets/assets.qrc +RESOURCES += qml/ComponentLibrary/ComponentLibrary.qrc \ + qml/qml.qrc \ + assets/assets.qrc \ + i18n/i18n.qrc OTHER_FILES += README.md \ deploy_linux.sh \ @@ -69,12 +69,8 @@ CONFIG(release, debug|release) : DEFINES += NDEBUG QT_NO_DEBUG QT_NO_DEBUG_OUTPU # Use Qt Quick compiler ios | android { CONFIG += qtquickcompiler } -# Math -win32 { DEFINES += _USE_MATH_DEFINES } - # Deprecated Warnings DEFINES += QT_DEPRECATED_WARNINGS -DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000 # disables all the APIs deprecated before Qt 6.0.0 # Enables AddressSanitizer unix { @@ -85,10 +81,10 @@ unix { # Build artifacts ############################################################## -OBJECTS_DIR = build/$${BUILD_MODE}_$${QT_ARCH}/obj/ -MOC_DIR = build/$${BUILD_MODE}_$${QT_ARCH}/moc/ -RCC_DIR = build/$${BUILD_MODE}_$${QT_ARCH}/rcc/ -UI_DIR = build/$${BUILD_MODE}_$${QT_ARCH}/ui/ +OBJECTS_DIR = build/$${QT_ARCH}/$${BUILD_MODE}/obj/ +MOC_DIR = build/$${QT_ARCH}/$${BUILD_MODE}/moc/ +RCC_DIR = build/$${QT_ARCH}/$${BUILD_MODE}/rcc/ +UI_DIR = build/$${QT_ARCH}/$${BUILD_MODE}/ui/ DESTDIR = bin/ diff --git a/README.md b/README.md index 5cdf7e0..fd28ed5 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,7 @@ A Qt6 / QML application template, with a full set of visual controls, helper mod #### Dependencies -You will need a C++17 compiler and Qt 6.5+. Qt 5 Compatibility Module is required. +You will need a C++17 compiler and Qt 6.5+. For macOS and iOS builds, you'll need Xcode (13+) installed. For Android builds, you'll need the appropriates JDK (17) SDK (24+) and NDK (25+). You can customize Android build environment using the `assets/android/gradle.properties` file. diff --git a/assets/linux/qmlapptemplate.appdata.xml b/assets/linux/qmlapptemplate.appdata.xml index 2827975..06402e7 100644 --- a/assets/linux/qmlapptemplate.appdata.xml +++ b/assets/linux/qmlapptemplate.appdata.xml @@ -16,7 +16,6 @@ Emeric Grange - emeric.grange@gmail.com https://emeric.io/ https://github.com/emericg/QmlAppTemplate/issues https://github.com/emericg/QmlAppTemplate/blob/master/i18n/README.md diff --git a/src/thirdparty/AppUtils/AppUtils.pri b/src/thirdparty/AppUtils/AppUtils.pri index cd7aed6..00ae764 100644 --- a/src/thirdparty/AppUtils/AppUtils.pri +++ b/src/thirdparty/AppUtils/AppUtils.pri @@ -1,4 +1,7 @@ +# Optional stuff (for macOS) +#CONFIG += UTILS_DOCK_ENABLED + # Optional stuff (for iOS) #CONFIG += UTILS_NOTIFICATIONS_ENABLED #CONFIG += UTILS_WIFI_ENABLED @@ -46,13 +49,17 @@ macx { HEADERS += $${PWD}/utils_os_macos.h # macOS dock click handler (optional) - LIBS += -framework AppKit - SOURCES += $${PWD}/utils_os_macos_dock.mm - HEADERS += $${PWD}/utils_os_macos_dock.h + UTILS_DOCK_ENABLED { + DEFINES += UTILS_DOCK_ENABLED + LIBS += -framework AppKit + SOURCES += $${PWD}/utils_os_macos_dock.mm + HEADERS += $${PWD}/utils_os_macos_dock.h + } } # Windows OS utils win32 { + DEFINES += _USE_MATH_DEFINES SOURCES += $${PWD}/utils_os_windows.cpp HEADERS += $${PWD}/utils_os_windows.h }