QT += quick qml quickcontrols2 multimedia

android {
 QT += androidextras
}

CONFIG += c++11

TARGET = ScStwRt
VERSION = 1.2.0

# Add version to define
DEFINES += APP_VERSION=\"\\\"$${VERSION}\\\"\"

# The following define makes your compiler emit warnings if you use
# any Qt feature that has been marked deprecated (the exact warnings
# depend on your compiler). Refer to the documentation for the
# deprecated API to know how to port your code away from it.
DEFINES += QT_DEPRECATED_WARNINGS

# You can also make your code fail to compile if it uses deprecated APIs.
# In order to do so, uncomment the following line.
# You can also select to disable deprecated APIs only up to a certain version of Qt.
#DEFINES += QT_DISABLE_DEPRECATED_BEFORE=0x060000    # disables all the APIs deprecated before Qt 6.0.0

SOURCES += \
        sources/main.cpp \
        sources/appsettings.cpp \
        sources/apptheme.cpp

HEADERS += \
        headers/appsettings.h \
        headers/apptheme.h

RESOURCES += qml/qml.qrc \
    shared/shared.qrc

# Additional import path used to resolve QML modules in Qt Creator's code model
QML_IMPORT_PATH =

# Additional import path used to resolve QML modules just for Qt Quick Designer
QML_DESIGNER_IMPORT_PATH =

# Default rules for deployment.
qnx: target.path = /tmp/$${TARGET}/bin
else: unix:!android: target.path = /opt/$${TARGET}/bin
!isEmpty(target.path): INSTALLS += target

android {
    ANDROID_PACKAGE_SOURCE_DIR = $$PWD/android
    DISTFILES += \
       android/AndroidManifest.xml \
       android/build.gradle \
       android/gradle.properties \
       android/gradle/wrapper/gradle-wrapper.jar \
       android/gradle/wrapper/gradle-wrapper.properties \
       android/gradlew \
       android/gradlew.bat \
       android/res/values/libs.xml

    defineReplace(droidVersionCode) {
            segments = $$split(1, ".")
            for (segment, segments): vCode = "$$first(vCode)$$format_number($$segment, width=3 zeropad)"

            contains(ANDROID_TARGET_ARCH, arm64-v8a): \
                suffix = 1
            else:contains(ANDROID_TARGET_ARCH, armeabi-v7a): \
                suffix = 0
            # add more cases as needed

            return($$first(vCode)$$first(suffix))
    }

    ANDROID_VERSION_NAME = $$VERSION
    ANDROID_VERSION_CODE = $$droidVersionCode($$ANDROID_VERSION_NAME)
    ANDROID_TARGET_SDK_VERSION = 30
}

ios {
    QMAKE_IOS_DEPLOYMENT_TARGET=9.0
    QMAKE_ASSET_CATALOGS += shared/graphics/Assets.xcassets
    xcode_product_bundle_identifier_setting.value="de.itsblue.scrt"
    QMAKE_INFO_PLIST = ios/Info.plist
}

# this has to be the last line!
ANDROID_ABIS = armeabi-v7a arm64-v8a
