summaryrefslogtreecommitdiffstats
path: root/src/macdeployqt/macdeployqt/main.cpp
Commit message (Collapse)AuthorAgeFilesLines
* Remove macdeployqt and windeployqtJoerg Bornemann2021-11-261-278/+0
| | | | | | | | | | | These tools have been moved to qtbase. Change-Id: Idaf799d44be399040f9058252675c0ee3eecc39b Reviewed-by: Friedemann Kleint <Friedemann.Kleint@qt.io> Reviewed-by: Mitch Curtis <mitch.curtis@qt.io> Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Iikka Eklund <iikka.eklund@qt.io> Reviewed-by: Shawn Rutledge <shawn.rutledge@qt.io>
* macdeployqt: Use static QFile::exists() and QFileInfo::exists()Jonas Kvinge2021-11-011-1/+1
| | | | | Change-Id: If2fd409fbd53535cf4823bed831217c196a070ba Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* macdeployqt: Fix typosJonas Kvinge2021-10-111-2/+2
| | | | | Change-Id: I778f3548bb43d4e5a70d4681e97853b7affcd9e5 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* macdeployqt: Fix plugin resolution bugs for non-standard installsSeth Parker2021-04-271-6/+24
| | | | | | | | | | Uses QLibraryInfo to resolve plugins at installed locations. [ChangeLog][macOS][macdeployqt] Uses QLibraryInfo to resolve plugins at install locations. Fixes: QTBUG-91644 Change-Id: Ie309061024abd7a58ea62d707716342c99897c26 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* Merge remote-tracking branch 'origin/5.15' into devAlexandru Croitor2020-04-151-14/+31
|\ | | | | | | | | | | | | | | | | | | | | Conflicts: a bunch of .pro and configure.json file adjustments and some conflicting cherry-picks from dev -> 5.15 that are merged into dev again src/assistant/assistant/main.cpp Change-Id: I174c00b6a300c6d46c4e081bdcb2f15f23ae9ef2
| * [macdeployqt] Add sign-for-notarization optionMichael Brüning2020-03-311-15/+27
| | | | | | | | | | | | | | | | | | | | | | | | | | | | For notarization to succeed, several options have to be activated when signing the application: * the hardened runtime has to be activated * a secure timestamp must be generated * the application has to be signed with a Developer ID certificate Add the option sign-for-notarization to conveniently activate both options. Change-Id: I7ddf3f36091f4d5d081166d32f65a4ab446536ce Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
| * [macdeployqt] Add option to include secure timestamp when signingMichael Brüning2020-03-311-0/+5
| | | | | | | | | | | | | | | | | | | | Apple now requires the developer to include a secure timestamp in the application's signature in order for notarization to succeed. Add an option to do this to macdeployqt. Change-Id: Ia884de80822661abcf65a287e4dc8429ec24b766 Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* | Merge remote-tracking branch 'origin/5.15' into devQt Forward Merge Bot2019-10-221-0/+5
|\| | | | | | | Change-Id: I5f916f50d54ba36f9dd5b6c2c9aa6ce7fa2172bb
| * macdeployqt: Add option for enabling hardened runtimeMorten Johan Sørvig2019-10-171-0/+5
| | | | | | | | | | | | | | | | | | | | Hardened runtime will be required when code signing for app notarization, at some point in the future. [ChangeLog][macdeployqt] Added "-hardened-runtime" option to support app notarization. Change-Id: I4a3686ae01366c1e78372bb3b5e725db8e8061fd Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* | Fix Qt6 buildAlexandru Croitor2019-07-291-1/+3
|/ | | | | | Change-Id: Ie413ca2e2f81ac0e92628ffd2f3e93047a91bd0c Reviewed-by: Qt CI Bot <qt_ci_bot@qt-project.org> Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
* Add option to specify qmlimportscanner importPathsIlya Bizyaev2018-10-311-1/+10
| | | | | | | | | | This patch adds a new option, -qmlimport, which enables macdeployqt to pass custom QML module import paths to qmlimportscanner. Fixes: QTBUG-70977 Change-Id: I39edfb88e48e05c42c6c4690efa3e728046baff3 Reviewed-by: Samuel Gaist <samuel.gaist@idiap.ch>
* macdeployqt: Correctly handle bundling debug Qt libraries with @rpathTor Arne Vestbø2018-03-231-0/+3
| | | | | | | | | | | | | | | | | After rpath support was introduced, we lost the ability to explicitly bundle the debug version of the Qt libraries. We now make sure to always run install_name_tool so that the library dependencies are updated to the correct version, even in the case of @rpath. After 27239f4fcfa6f64d in qtbase, we also now directly link to the debug versions of Qt libraries when building the application in debug mode, so the code has been taught to handle this case, by not assuming that the library suffix is determined only by the -use-debug-libs command line argument. Task-number: QTBUG-48800 Change-Id: Ia7e058fa4d041fa1a7b8bdedc594750ee1f4cbfd Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* macdeployqt: Implement selection of file system for .dmg fileSamuel Gaist2018-01-231-1/+10
| | | | | | | | | | | | | | | | | | | | | | With macOS High Sierra, Apple machines using SSD see their file system changed for APFS automatically. hdiutil by default uses the current file system to build the dmg file which in this case makes them unusable on older version of macOS that don't have support for APFS. This patch adds an additional option to macdeployqt to select the file system to use when building the .dmg. It defaults to HFS+ which was the official file system used until now for all currently supported version of macOS. [ChangeLog][macdeployqt][feature] Added support for selecting the file system type to use when building a .dmg file. Defaults to HFS+ to support a wider range of macOS versions. Task-number: QTBUG-65844 Change-Id: Ic66856344f96c6536b224d13d309715b34eb0874 Reviewed-by: André Hartmann <aha_1980@gmx.de>
* Merge remote-tracking branch 'origin/5.6' into 5.7Liang Qi2016-08-021-0/+9
|\ | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: src/designer/src/designer/qdesigner.cpp One side changed Q_OS_MAC -> Q_OS_MACOS; the other changed it to Q_OS_OSX and combined with Q_OS_WIN. Kept the latter. tests/auto/linguist/lupdate/testdata/good/parsecpp/project.ts.result One side added some XML next to where another made a local change. Change-Id: I812b55fbaccc85baa9856aedf90f9258428dfcab
| * macdeployqt: add library search pathGuilherme Steinmann2016-07-271-0/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In earlier versions of OSX, the folder '/usr/lib/' is protected by default and user libraries cannot be copied to that folder. Alternatively, providing an option for alternative library search path would avoid missing libraries during the deploy. The addition of the option '-libpath=<path>' to macdeployqt adds a search path for the dependencies. If a dependency was not found in the provided path, the default folder for searching is used. [ChangeLog][macdeployqt] Added option '-libpath' to search libraries in a custom path. Change-Id: I3afee6aaa3bc25521adecb91ec59d104e13834ed Reviewed-by: Morten Johan Sørvig <morten.sorvig@qt.io>
* | Updated license headers and license testsAntti Kokko2016-06-101-17/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | From Qt 5.7 -> tools & applications are licensed under GPL v3 with some exceptions, see http://blog.qt.io/blog/2016/01/13/new-agreement-with-the-kde-free-qt-foundation/ Updated license headers to use new GPL-EXCEPT header instead of LGPL21 one (in those files which will be under GPL 3 with exceptions) License header tests also updated to match current headers. Change-Id: Ia6bdacaa3c5bbc9d31334e1a0cabfe502a484dc4 Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
* | Merge remote-tracking branch 'origin/5.6' into devLiang Qi2016-01-291-1/+1
|\| | | | | | | Change-Id: I348539d1e75ec97acf3601931d2d8ab6281e96eb
| * macdeployqt: clarify wording of -qmldir optionMitch Curtis2016-01-221-1/+1
| | | | | | | | | | Change-Id: I8306799c0be90129a50412502a0142f33e5da4bd Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
* | macdeployqt: top-level framework deploymentMorten Johan Sørvig2016-01-131-1/+11
|/ | | | | | | | | | | | | | | | | Create frameworks that can be added to Xcode projects. The intention is to improve interop with Swift: The parts of the application that uses Qt can be built as a framework and expose an (objective) C API. Xcode can then link and code sign the framework without needing to know details about the Qt build system and tools (moc, rcc, etc) One (undocumented) feature flag is added: -deploy-framework: enables the framework "fixup" code. Change-Id: I53f2ccb90ec5efb1d58795b03f4b01499b6bdc84 Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
* Doc: replaced Mac OS X with OS XNico Vertriest2015-08-171-2/+2
| | | | | | Task-number: QTBUG-40759 Change-Id: I3dd691ec1f17ae3217cb85e6f3e6330114ab7aa3 Reviewed-by: Martin Smith <martin.smith@digia.com>
* macdeployqt: Work around broken QLibraryInfoMorten Johan Sørvig2015-08-131-1/+5
| | | | | | | | | Add fallback code path for locating qmlimportscanner relative to the macdeployqt binary. Task-number: QTBUG-46404 Change-Id: I9c837b5da518af45cef1292f9cd0422fccba8e5f Reviewed-by: Morten Johan Sørvig <morten.sorvig@theqtcompany.com>
* macdeployqt: halt on missing qmlimportscannerMorten Johan Sørvig2015-08-131-1/+5
| | | | | | | | This is going to produce a broken bundle; stop and print the error. Change-Id: Ie58d357b97adc229393d80e9dde5e10c65c9bc99 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com>
* macdeployqt: strip the application binaryMorten Johan Sørvig2015-08-131-0/+3
| | | | | | | | | | In addition to running 'strip' on the framework and plugin binaries. Change-Id: I90b1f50f8212d1399933d4cd5c35aaee8e5212f2 Task-number: QTBUG-17447 Reviewed-by: Timur Pocheptsov <timur.pocheptsov@theqtcompany.com> Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com>
* Add option for skipping use of private API.Morten Johan Sørvig2015-08-131-0/+11
| | | | | | | | | | | | | | | | | | | | The qsqlodbc and qsqlpsql are known to cause rejections from the Mac App store due to use of private/deprecated API. The plugins are deployed whenever the SQL module is used. Due to this corse granularity of plugin selection apps may find themselves rejected for plugins which they are not actually using. Make macdeployqt print a warning when sqlodbc or sqlpsql is deployed. Add "-appstore-compliant" which will skip deployment of the plugins. Task-number: QTBUG-37835 Task-number: QTBUG-38607 Change-Id: I7325156ffaf228a97d7ceeb12f329b3f10db4ff2 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com>
* macdeployqt: correct process return values.Morten Johan Sørvig2015-08-131-3/+5
| | | | | | Task-number: QTBUG-9332 Change-Id: I684f640d38326f6607669501e0b20be663692fc3 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com>
* macdeployqt: fix QML import deps deploymentMorten Johan Sørvig2015-08-131-8/+14
| | | | | | | | | | | | | The plugin deployment step needs to run after QML imports deployment in order to take frameworks added by QML imports into account. Move deployPlugins() down. Update deploymentInfo. deployedFrameworks after deployQmlImports() has run. Change-Id: I1d9ce827b1c0205ec37f027d03a9b4a2bb846801 Task-number: QTBUG-46981 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com>
* Fix QML imports deployment when using pathMorten Johan Sørvig2015-08-131-1/+1
| | | | | | | | | | | | | | | | | During deployment the value of LC_RPATH on the main executable gets updated with a new value pointing inside the app bundle. This happens before QML import deployment, which means reading LC_RPATH at QML import deployment time will not give the correct value. Use the cached value stored in the DeploymentInfo structure instead, which will point back to the Qt installation. Task-number: QTBUG-47390 Change-Id: Ide84240de408d2338c9f7a68a73849263ce69dff Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@theqtcompany.com>
* macdeployqt: Fix typo in help outputKai Koehne2015-07-231-1/+1
| | | | | Change-Id: I4993a21c6544edf289e5ee6aa084647c4ad6e4b5 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@theqtcompany.com>
* MacDeployQt: handle "./" in app bundle nameMorten Johan Sørvig2015-05-121-2/+1
| | | | | | | | | Use QDir::cleanPath() to normalize the app bundle path. Change-Id: I35053507dd11de986b9f43276e41d9fe3eff0fca Reviewed-by: Thiago Macieira <thiago.macieira@intel.com> Reviewed-by: Jake Petroules <jake.petroules@petroules.com>
* Merge remote-tracking branch 'origin/5.4' into 5.5Frederik Gladhorn2015-02-201-2/+2
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: LICENSE.LGPLv21 LICENSE.LGPLv3 src/assistant/assistant/mainwindow.cpp src/designer/src/designer/versiondialog.cpp src/linguist/linguist/mainwindow.cpp src/linguist/lrelease/lrelease.1 src/linguist/lupdate/lupdate.1 src/qconfig/main.cpp src/qdbus/qdbusviewer/mainwindow.cpp Change-Id: I8644f68ff02f00a377f82ea0b7520aa308f0a0df
| * macdeployqt: fix spelling errors in help informationLiang Qi2015-01-221-2/+2
| | | | | | | | | | | | | | Task-number: QTBUG-44034 Change-Id: Ie4337dc4770dbe542b3980c6d7265e651de0e88f Reviewed-by: Martin Smith <martin.smith@digia.com> Reviewed-by: Topi Reiniö <topi.reinio@digia.com>
* | Update copyright headersAntti Kokko2015-02-141-7/+7
|/ | | | | | | | | | Qt copyrights are now in The Qt Company, so we could update the source code headers accordingly. In the same go we should also fix the links to point to qt.io. Change-Id: I7f14f408e04c5c4f73a913fae153adcffbebe38f Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com> Reviewed-by: Jani Heikkinen <jani.heikkinen@theqtcompany.com>
* Merge remote-tracking branch 'origin/5.3' into 5.4Frederik Gladhorn2014-10-141-0/+15
|\ | | | | | | | | | | | | | | | | Conflicts: src/assistant/assistant/mainwindow.cpp src/linguist/linguist/mainwindow.cpp src/qdbus/qdbusviewer/qdbusviewer.cpp Change-Id: I1f5524ab747be561ed0b13d8b1fd8cb51a890363
| * Add -codesign option.Morten Johan Sørvig2014-10-011-0/+15
| | | | | | | | | | | | | | | | | | | | | | | | | | Use the "codesign" tool with the provided signing identity to sign all code binaries in the bundle. Application code binaries include the app executable(s), plugin and framework/dylib dependencies. Finally, run "codesign --verify" to verify that the app bundle is correctly signed. Change-Id: Idfff030a2b218e1dc1ad1bc279a32a330665b347 Reviewed-by: Morten Johan Sørvig <morten.sorvig@digia.com>
* | Update license headers and add new license filesAntti Kokko2014-09-251-19/+11
|/ | | | | | | | | - Renamed LICENSE.LGPL to LICENSE.LGPLv21 - Added LICENSE.LGPLv3 - Removed LICENSE.GPL Change-Id: I23ef9591f4d9054e0b6a252ba7767baf4189aeab Reviewed-by: Jani Heikkinen <jani.heikkinen@digia.com>
* MacDeployQt: Add -always-overwrite option.Morten Johan Sørvig2014-03-261-6/+7
| | | | | | | | | | | | | | Support incrementally re-deploying to an existing app bundle. Overwrite files that already exist in the bundle. Disable the "Can not find Qt" warning. Skip plugin deployment if Qt can not be found. Remove usages of the Qt4-style binary packages from /Developer. Task-number: QTBUG-36043 Change-Id: I11d1e36e6beef24b55979fc4d853e19b60551740 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Macdeployqt: Deploy QML imports.Morten Johan Sørvig2013-10-071-2/+22
| | | | | | | | | | | | | Use qmlimportscanner from QtDeclarative to find used imports. New option: -qmldir=<path> : Deploy imports used by .qml files in the given path. (defaults to ".") Change-Id: I3efa47557a1b5aae0ad838024ba5fe1a98be3b16 Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@digia.com>
* Update copyright year in Digia's license headersSergio Ahumada2013-01-101-1/+1
| | | | | | | Change-Id: I9b11dc8309c9739955e3acea12b564d6ad608f59 Reviewed-by: Akseli Salovaara <akseli.salovaara@digia.com> Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@digia.com> Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com>
* Change copyrights from Nokia to DigiaIikka Eklund2012-09-251-24/+24
| | | | | | | | | Change copyrights and license headers from Nokia to Digia Change-Id: If89e41b25a242ff376eacdf8790957bcf499cc66 Reviewed-by: Janne Anttila <janne.anttila@digia.com> Reviewed-by: Sergio Ahumada <sergio.ahumada@digia.com> Reviewed-by: Lars Knoll <lars.knoll@digia.com>
* Add the possibility to patch additional executables.Eike Ziller2012-02-011-6/+15
| | | | | | Change-Id: I47ecf04f538e094fe67110e627a5f17a34438df9 Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Morten Johan Sørvig <morten.sorvig@nokia.com>
* Remove "All rights reserved" line from license headers.Jason McDonald2012-01-301-1/+1
| | | | | | | | | | | As in the past, to avoid rewriting various autotests that contain line-number information, an extra blank line has been inserted at the end of the license text to ensure that this commit does not change the total number of lines in the license header. Change-Id: Ib4b7580dda53886247ad6eb10d17d8e67c51980d Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Update obsolete contact address.Jason McDonald2012-01-231-1/+1
| | | | | | | | Replace Nokia contact email address with Qt Project website. Change-Id: I3841a7c154b90b73fe8f498fda035c8b3545c692 Sanity-Review: Qt Sanity Bot <qt_sanity_bot@ovi.com> Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Update copyright year in license headers.Jason McDonald2012-01-061-1/+1
| | | | | | Change-Id: I89fb3609f49f9a4f1e7d658b05e212febcb14c94 Sanity-Review: Jason McDonald <jason.mcdonald@nokia.com> Reviewed-by: Rohan McGovern <rohan.mcgovern@nokia.com>
* Update licenseheader text in source files for qttools Qt moduleJyri Tahtela2011-05-241-17/+17
| | | | | | | Updated version of LGPL and FDL licenseheaders. Apply release phase licenseheaders for all source files. Reviewed-by: Trust Me
* Initial import from the monolithic Qt.Qt by Nokia2011-04-271-0/+135
This is the beginning of revision history for this module. If you want to look at revision history older than this, please refer to the Qt Git wiki for how to use Git history grafting. At the time of writing, this wiki is located here: http://qt.gitorious.org/qt/pages/GitIntroductionWithQt If you have already performed the grafting and you don't see any history beyond this commit, try running "git log" with the "--follow" argument. Branched from the monolithic repo, Qt master branch, at commit 896db169ea224deb96c59ce8af800d019de63f12