Skip to content
Snippets Groups Projects
QGCInstaller.pri 3.09 KiB
Newer Older
  • Learn to ignore specific revisions
  • Don Gagne's avatar
    Don Gagne committed
    # -------------------------------------------------
    # QGroundControl - Micro Air Vehicle Groundstation
    # Please see our website at <http://qgroundcontrol.org>
    # Maintainer:
    # Lorenz Meier <lm@inf.ethz.ch>
    # (c) 2009-2014 QGroundControl Developers
    
    Lorenz Meier's avatar
    Lorenz Meier committed
    # License terms set in COPYING.md
    
    Don Gagne's avatar
    Don Gagne committed
    # -------------------------------------------------
    
    installer {
    
        DEFINES += QGC_INSTALL_RELEASE
    
    Don Gagne's avatar
    Don Gagne committed
        MacBuild {
    
            VideoEnabled {
                # Install the gstreamer framework
                # This will:
    
    dogmaphobic's avatar
    dogmaphobic committed
                # Copy from the original distibution into DESTDIR/gstwork (if not already there)
    
                # Prune the framework, removing stuff we don't need
                # Relocate all dylibs so they can work under @executable_path/...
                # Copy the result into the app bundle
                # Make sure qgroundcontrol can find them
                message("Preparing GStreamer Framework")
    
    dogmaphobic's avatar
    dogmaphobic committed
                QMAKE_POST_LINK += && $$BASEDIR/tools/prepare_gstreamer_framework.sh $${OUT_PWD}/gstwork/ $${DESTDIR}/$${TARGET}.app $${TARGET}
    
            } else {
                message("Skipping GStreamer Framework")
            }
    
            # We cd to release directory so we can run macdeployqt without a path to the
            # qgroundcontrol.app file. If you specify a path to the .app file the symbolic
            # links to plugins will not be created correctly.
    
    Daniel Agar's avatar
    Daniel Agar committed
            QMAKE_POST_LINK += && mkdir -p $${DESTDIR}/package
    
            QMAKE_POST_LINK += && cd $${DESTDIR} && $$dirname(QMAKE_QMAKE)/macdeployqt $${TARGET}.app -appstore-compliant -verbose=2 -qmldir=$${BASEDIR}/src
    
    dogmaphobic's avatar
    dogmaphobic committed
            QMAKE_POST_LINK += && cd $${OUT_PWD}
    
            QMAKE_POST_LINK += && hdiutil create -verbose -stretch 4g -layout SPUD -srcfolder $${DESTDIR}/$${TARGET}.app -volname $${TARGET} $${DESTDIR}/package/$${TARGET}.dmg
    
    Don Gagne's avatar
    Don Gagne committed
        }
        WindowsBuild {
    
            QMAKE_POST_LINK += $$escape_expand(\\n) cd $$BASEDIR_WIN && $$quote("\"C:\\Program Files \(x86\)\\NSIS\\makensis.exe\"" /DAPPNAME="\"$${QGC_APP_NAME}\"" /DEXENAME="\"$${TARGET}\"" /DORGNAME="\"$${QGC_ORG_NAME}\"" /DDESTDIR=$${DESTDIR} /NOCD "\"/XOutFile $${DESTDIR_WIN}\\$${TARGET}-installer.exe\"" "$$BASEDIR_WIN\\deploy\\qgroundcontrol_installer.nsi")
    
            OTHER_FILES += deploy/qgroundcontrol_installer.nsi
    
    dogmaphobic's avatar
    dogmaphobic committed
            #-- TODO: This uses hardcoded paths. It should use $${DESTDIR}
    
            QMAKE_POST_LINK += && mkdir -p release/package
    
            QMAKE_POST_LINK += && tar -cjf release/package/QGroundControl.tar.bz2 release --exclude='package' --transform 's/release/qgroundcontrol/'
    
        AndroidBuild {
    
    dogmaphobic's avatar
    dogmaphobic committed
            #-- TODO: This uses hardcoded paths. It should use $${DESTDIR}
    
    Daniel Agar's avatar
    Daniel Agar committed
            QMAKE_POST_LINK += && mkdir -p $${DESTDIR}/package
            QMAKE_POST_LINK += && make install INSTALL_ROOT=$${DESTDIR}/android-build/
    
            QMAKE_POST_LINK += && androiddeployqt --input android-libQGroundControl.so-deployment-settings.json --output $${DESTDIR}/android-build --deployment bundled --gradle --sign $${BASEDIR}/android/android_release.keystore dagar --storepass $$(ANDROID_STOREPASS)
            QMAKE_POST_LINK += && cp $${DESTDIR}/android-build/build/outputs/apk/android-build-release-signed.apk $${DESTDIR}/package/QGroundControl.apk