summaryrefslogtreecommitdiffstats
path: root/tools
Commit message (Collapse)AuthorAgeFilesLines
* Add line number information when throwing an Error regarding the scriptAndy Shaw2018-01-241-2/+3
| | | | | Change-Id: I5bc3ca4779ed12d927c3a6a041a81d8e39d5bd1f Reviewed-by: Katja Marttila <katja.marttila@qt.io>
* Explicitly declare implicit dependency on QtQml in devtoolJake Petroules2017-09-131-3/+2
| | | | | | Change-Id: I4ef19a4733d5c469676f3b419c6f4adf1e6ff0de Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io> Reviewed-by: Katja Marttila <katja.marttila@qt.io>
* binarycreator: Write a proper LSMinimumSystemVersion valueJake Petroules2017-08-301-0/+171
| | | | | | | | | | This allows macOS to display a proper error message to the user if their OS version is too old, as opposed to (probably) crashing and displaying an error dialog with a stack trace. Change-Id: I37570062d7358cc6304182182f095c9e51e16d06 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io> Reviewed-by: Katja Marttila <katja.marttila@qt.io>
* Fix syntax errorsJake Petroules2017-07-241-3/+3
| | | | | | | | Somehow a newline snuck into the wrong place, and ???? is recognized as a trigraph, which produces a warning. Change-Id: If948c544cba7ca880db4077bc3192332ce87ea52 Reviewed-by: Gabriel de Dietrich <gabriel.dedietrich@qt.io>
* Write plists in the correct format, using v1.0 and with tabsJake Petroules2017-07-191-19/+19
| | | | | Change-Id: I496446d95b5523087e3d15ab3ad7cba697dea361 Reviewed-by: Tor Arne Vestbø <tor.arne.vestbo@qt.io>
* Fix install type if --online-only passed to binarycreatorKatja Marttila2017-06-221-2/+5
| | | | | | | | | Binarycreator assumed that install type is offline if no repositories was set although --online-only was set. However, repositories might be set later, for example in producetkeycheck::init(). Change-Id: Idd6d0e3304974773baefe3773be7e2948704575c Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
* Merge remote-tracking branch 'origin/2.0' into 3.0Katja Marttila2017-03-303-0/+3
|\ | | | | | | | | | | | | Conflicts: src/libs/installer/downloadfiletask.cpp Change-Id: Ie4b07c402a63c7a12ecf24e52e197507bbb2c5df
| * QRegExp include cleanupSamuel Gaist2017-03-133-0/+3
| | | | | | | | | | | | | | This patch adds the missing include statements for QRegExp. Change-Id: I05fed3e83514af895b95a3df746b0ae1e6b31828 Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@qt.io>
* | Merge remote-tracking branch 'origin/2.0'Katja Marttila2017-01-3023-391/+276
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: Changelog dist/config/config.xml dist/packages/org.qtproject.ifw.binaries/meta/package.xml dist/packages/org.qtproject.ifw/meta/package.xml installerfw.pri src/libs/installer/lib7z_create.h src/libs/kdtools/kdgenericfactory.cpp src/libs/kdtools/kdgenericfactory.h src/libs/kdtools/kdupdaterapplication.cpp src/libs/kdtools/kdupdaterapplication.h src/libs/kdtools/kdupdaterupdatesourcesinfo.cpp src/libs/kdtools/kdupdaterupdatesourcesinfo.h src/libs/kdtools/localpackagehub.cpp src/libs/kdtools/localpackagehub.h src/libs/kdtools/updatefinder.cpp src/libs/kdtools/updatefinder.h tools/binarycreator/resources/mkdmg.sh Change-Id: Iab2513f549832d2e750e77131c673457ab265af4
| * License header update to GPL-EXCEPTKatja Marttila2017-01-2624-408/+288
| | | | | | | | | | Change-Id: I6426c4e8f932cf26c6c638dec18d0c12e22972d1 Reviewed-by: Janne Anttila <janne.anttila@theqtcompany.com>
* | Revert "Allow signing maintenancetool in Windows"Katja Marttila2016-09-152-17/+3
| | | | | | | | | | | | | | | | | | | | This reverts commit 76fd6e8f2953347ea0bf7a57b643968784bc9acc. The change caused that two installation files were needed - one executable and one dat file. Many users did not find it acceptable. We need to figure out something else. Change-Id: Ief12cd47f9897cee8a234d8611a5c18296d42b1c Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
* | Merge remote-tracking branch 'origin/2.0'Katja Marttila2016-06-214-2/+12
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: Changelog dist/config/config.xml dist/packages/org.qtproject.ifw.binaries/meta/package.xml dist/packages/org.qtproject.ifw/meta/package.xml installerfw.pri src/libs/7zip/7zip.pro src/libs/7zip/win/CPP/7zip/UI/Common/Update.cpp src/libs/installer/component.cpp src/libs/installer/lib7z_facade.cpp src/libs/installer/packagemanagercore.cpp src/libs/installer/proxycredentialsdialog.h src/sdk/translations/ja.ts tests/auto/installer/messageboxhandler/tst_messageboxhandler.cpp tests/auto/installer/scriptengine/tst_scriptengine.cpp tests/auto/installer/settings/tst_settings.cpp Change-Id: I3bb98b8490b3c3eb7f664c1abb7417155b5430b2
| * add make install functionality with INSTALL_ROOTKatja Marttila2016-05-194-0/+12
| | | | | | | | | | | | Change-Id: I8bad1c9bbe7b705ff0842f15fb0c9bc6c127e9bc Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com> Reviewed-by: Iikka Eklund <iikka.eklund@theqtcompany.com>
| * Update minimum Qt version for 2.0.3 releaseKatja Marttila2016-03-221-2/+0
| | | | | | | | | | | | | | Minimum required version is now Qt5.5 Change-Id: If000a507f0067650605987d38374bf6694eb16aa Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
| * Fix compile with namespace'ed Qt.Karsten Heimrich2016-01-211-1/+2
| | | | | | | | | | Change-Id: I9c0d399943d2f6eb9a0ab136abf24a5c8b108abb Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
* | Allow signing maintenancetool in WindowsKatja Marttila2016-06-212-3/+17
| | | | | | | | | | | | | | | | | | Signing was not possible for maintenancetool since metadata was added to binary. Separated metadata to installer.dat like in OS X. Task-number: QTIFW-667 Change-Id: I74ef307c51a2f43059475dd943d6f0910925fa86 Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
* | Fixed (and greatly simplified) creating .dmg filesFrerich Raabe2016-04-083-79/+20
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The mkdmg.sh script which is used to create .dmg files made some effort to calculate the size of the file system contained in the .dmg file. However, it neglected to consider that a .dmg file is not always (never?) totally empty. A sample session on OS X 10.10.5 shows: $ hdiutil create /tmp/foo.dmg -megabytes 33 -ov -volname foo -type UDIF -fs HFS+ ... <a lot more dots here> created: /tmp/foo.dmg $ hdid /tmp/foo.dmg /dev/disk3 GUID_partition_scheme /dev/disk3s1 Apple_HFS /Volumes/foo $ df /Volumes/foo Filesystem 512-blocks Used Available Capacity iused ifree %iused Mounted on /dev/disk3s1 67504 1584 65920 3% 196 8240 2% /Volumes/foo About 792kB are apparently used for bookkeeping (in ".Trashes" and ".fseventsd") directories. Since mkdmg.sh failed to account for these 792kB, the .dmg file it creates was occasionally too small, causing an error message to be printed by the 'cp' command in the mkdmg.sh script (but that error message was never printed anywhere, at least I never noticed when executing binarycreator - always only when running mkdmg.sh directly). Instead of fixing the allocated size, let's just make use of the '-srcfolder' argument to 'hdiutil create' which does all of this automatically. It requires no copying around or calculating sizes, which not only makes the script much simpler, it also avoids the above-mentioned issue but also makes the script run faster: about 30% faster in my experiments. With this, the mkdmg.sh script is so small (just one hdiutil and one rm call) that we may just as well drop it completely and perform those operations straight from the C++ code. A final nice side-effect is that '-srcfolder' can be specified multiple times: this makes it very easy to copy multiple directory trees in the resulting .dmg file. This in turn is useful to create nicely styled .dmg files with custom background image and icon arrangements. Change-Id: I54d63a00e56d1ee9fa61c2690ca42d512fda37b1 Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* | Add new '--sign' switch to binarycreator for signing OS X app bundlesFrerich Raabe2016-02-181-2/+46
| | | | | | | | | | | | | | | | | | | | | | | | | | This patch introduces -s/--sign switches for binarycreator which are only available on OS X. Using these switches, a 'Code Signing Identity' can be configured which should be used for signing the generated .app bundle. Signing the application bundles avoids that Apple's Gatekeeper complains about the application coming from an unidentified publisher. Change-Id: I507c6cac0b99faf19faf48c21e47a2df054b0b11 Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* | Merge remote-tracking branch 'origin/2.0'Iikka Eklund2016-01-2024-92/+101
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: installerfw.pri src/libs/kdtools/kdgenericfactory.cpp src/libs/kdtools/kdgenericfactory.h src/libs/kdtools/kdupdaterapplication.cpp src/libs/kdtools/kdupdaterapplication.h src/libs/kdtools/kdupdaterupdatesourcesinfo.cpp src/libs/kdtools/kdupdaterupdatesourcesinfo.h sync.profile Change-Id: Ifdc8b065f89b7e241bd3788ed79768e21888161f
| * Update license headersIikka Eklund2015-12-2924-92/+101
| | | | | | | | | | | | | | | | | | Update existing license headers. LGPL -> LGPLv21. Update copyright year as well. Change-Id: Ie1d71f8c68186b8f625f409ddf94691f178093c9 Reviewed-by: Katja Marttila <katja.marttila@theqtcompany.com> Reviewed-by: Jani Heikkinen <jani.heikkinen@theqtcompany.com>
* | Allow defining non-checkable itemsKatja Marttila2016-01-181-0/+9
| | | | | | | | | | | | | | | | | | | | | | This change will introduce new element 'Checkable' for package. Setting checkable to false will hide checkbox. Useful if use case is to install one sub item instead of all sub items. Change-Id: I8c731e77353b6da539dddcecdc8495b28ef5f7ea Task-number: QTIFW-773 Reviewed-by: Niels Weber <niels.weber@theqtcompany.com> Reviewed-by: Iikka Eklund <iikka.eklund@theqtcompany.com>
* | Let mkdmg.sh script on OS X actually create random temporary file namesFrerich Raabe2016-01-131-6/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When asking binarycreator to create an app bundle on OS X, temporary files are created in /tmp via, the name of which is determined via DMG=`mktemp "/tmp/$VOL.XXXXXX.dmg"` However, on OS X, this doesn't actually create a random file name. OS X uses the BSD implementation of 'mktemp'. The man page explains: The trailing `Xs' are replaced with the current process number and/or a unique letter combination. Note the *trailing*. Hence, on OS X, the 'XXXXXX' part should be at the end of the template. This manifested as a problem in case creation of the .dmg file is aborted (e.g. via Ctrl+C) in which case the temporary file is not removed. In that case, a subsequent attempt to create a .dmg will fail since mktemp fails to create the temporary file - since it's already there! The only remedy is to remove the temporary file by hand. Alas, 'hdiutil' and 'hdid' apparently depend on the file extension in order to detect the file format. So it's not just a matter of changing the template for mktemp. Instead, let's pass just '$VOL.XXXXXX' to mktemp but then tack on the file extension when using the file name. Change-Id: I7a1a548df24054e01630c441f259031045703ff3 Task-number: QTIFW-780 Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* | Fix timeout errors while building app bundles files on OS XFrerich Raabe2016-01-121-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | ...by simply not using any timeout anymore. I believe this was the original intention of the code (it's arguably hideous that the default value of the waitForFinished() method is a 30000ms timeout). What happened for me is that the mkdmg.sh script took longer than 30 seconds. As a consequence 1. the 'waitForFinished()' call returned 2. The mkdgm.sh script was deleted 3. The QProcess object went out of scope, terminating the shell process 4. The binarycreator process terminated successfully The resulting .dmg file seemed plausible (it was fairly large already) but it wasn't usable yet since the hdiutil process started by mkdmg.sh was still running, i.e. the .dmg file was still growing. Hence, the caller of binarycreator (e.g. some CI system) continued processing a malformed .dmg file (and the temporary file created by mkdmg.sh never got deleted). Last but not least, proper error handling would have been nice of course but I considered that to be out of scope for this particular commit. Change-Id: I767ff89d20802306189660804cea617c148a943e Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com> Reviewed-by: Katja Marttila <katja.marttila@theqtcompany.com>
* | Compile with namespaces.Karsten Heimrich2015-09-071-1/+2
| | | | | | | | | | | | Change-Id: I734b0e27d53fd8b6199a3fb5891497df0e1815bb Reviewed-by: Iikka Eklund <iikka.eklund@theqtcompany.com> Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
* | Rename files. Remove {kd} prefix. Remove {kdupdater} prefix.Karsten Heimrich2015-07-143-3/+3
| | | | | | | | | | Change-Id: I88c93cab718f4659296d5f7f562beefd747a366f Reviewed-by: Jarek Kobus <jaroslaw.kobus@theqtcompany.com>
* | Make use of the new varadic template feature + cosmetic changes.Karsten Heimrich2015-07-101-1/+1
| | | | | | | | | | | | | | | | Change constructor to take the a package manager argument. Add a package manager member to the operation. Remove setter function. Change-Id: Iffb860e24089beb6496ac4ee479d547a29463728 Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* | Sanitize QDebug outputKai Koehne2015-07-092-17/+13
| | | | | | | | | | | | | | | | | | | | | | | | Prefer using the stream operator logic instead of using QString::fromLatin1. Add a noquote() where a QString should be printed without any quotes/escapes. This also fixes the tests with Qt 5.5, where QString's are further escaped. Change-Id: Ie3afd14b9355101d3c0b52f30f66ec759c76526c Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* | Unify translated error messagesKai Koehne2015-06-249-85/+93
| | | | | | | | | | | | | | | | | | | | | | | | * Enclose file paths in "" * Localize file paths with QDir::toNativeSeparators. * Make sure sentences end with a '.' * Append error details always by ':', e.g. tr("Failed to copy file '%1': %2").(...) * Use 'directory' instead of 'folder' everywhere Change-Id: Ie045f429f72ad5045c96537465c5fb9d2e99d250 Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* | Convert to Qt 5 connect syntaxKai Koehne2015-06-153-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | Convert to new signal/slot syntax where it does not make things more complicated: connections where the signal or slot is an overloaded method, or where the receiver method is not in a QObject, are left alone. The new syntax allows compile-time checking of the connection. Change-Id: I2cc3c93b9812797bd67f64a8728569491eeec668 Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com> Reviewed-by: Jarek Kobus <jaroslaw.kobus@theqtcompany.com>
* | Remove %0 from tr() callsKai Koehne2015-06-151-1/+1
| | | | | | | | | | | | | | | | The placeholder of the first argument to QString::tr() is %1, not %0. Change-Id: I69fcddb42ddbfda27dfb4430f03ebef156280c64 Reviewed-by: Jarek Kobus <jaroslaw.kobus@theqtcompany.com> Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* | Use qmake .depends instead of CONFIG += ordered.Karsten Heimrich2015-06-101-1/+0
| | | | | | | | | | | | | | | | Fixes my sporadic build issues with IncrediBuild. Change-Id: I825c1473dac63159ae592814596dce3484467321 Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com> Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
* | Update archivegen.Karsten Heimrich2015-06-102-14/+149
| | | | | | | | | | | | | | | | | | | | Stop on file errors. Better verbose/ help output. Add support for compression level. Do not hide symbols in statically build lib7z to use e.g. CPercentPrinter symbol in dynamic IFW builds. Task-number: QTIFW-695 Change-Id: I18e2ea58b5f1880bfb7f3ed84e34b8810f864188 Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* | Split the huge header file in more dedicated ones.Karsten Heimrich2015-06-104-3/+5
| | | | | | | | | | Change-Id: I35a1500d5a9bb8986765488660cf0487c32d9720 Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* | Update source tree with version 9.38.beta of LZMA SDK.Karsten Heimrich2015-06-103-18/+8
| | | | | | | | | | | | | | | | | | | | - Remove unused files. - Split in .pri files. - Add HEADERS section. - Adjust lib7z_facade. Change-Id: I31e7bafbfe1a9346364bd58c391601955f98ad3a Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* | Remove scRemoteVersion, it's the same as scVersionJarek Kobus2015-05-071-1/+1
| | | | | | | | | | Change-Id: I552b2f62865ff88fb6827819240b283485d0e4c7 Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* | Remove pseudo static core instance, fixes autotests.Karsten Heimrich2015-05-061-3/+1
| | | | | | | | | | | | | | | | | | | | | | We need the core engine in operations anyway, so pass the pointer to the create function instead of setting it on our own after the operation was created. The only reason to introduce the static was the ~UpdateOperation() destructor, which now can get the value from its internal data instead of using the static instance call. Change-Id: Ide27542837355ec8c642a6687ca02977983f84fa Reviewed-by: Jarek Kobus <jaroslaw.kobus@theqtcompany.com>
* | Merge "Merge remote-tracking branch 'origin/2.0'"Karsten Heimrich2015-05-041-6/+0
|\ \
| * | Merge remote-tracking branch 'origin/2.0'Kai Koehne2015-04-301-6/+0
| |\| | | | | | | | | | Change-Id: I2c66fe453db03b833a57a4a400cf859096f81165
| | * Fix dubious warning about RequiresAdminRights tag.kh12015-04-271-6/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The tag was added once component script is parsed and we did know that addElevatedOperation is called from script. However, the initial commit 7ccd0acdcf35b957e9e7d04cd81902bac362ad04 did not append the node to the parent package update node. Now we decided to have the option statically and declarative available, so we can remove the warning. Task-number: QTIFW-670 Change-Id: I8cd8f702391d7bf80fc4c42074e1fd6d2d4abc57 Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* | | Fix some warnings in devtoolNiels Weber2015-04-291-5/+5
|/ / | | | | | | | | Change-Id: I9d12cd49ad4d82ec8f48798f087929fa3ee07fa8 Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* | Use positional arguments instead of options.kh2015-04-241-31/+114
| | | | | | | | | | | | | | | | As requested use positional arguments instead of options to run the devtool. Should help unifying further additions to the tool. Change-Id: I794a7f7956d86082111f8aa1b14012c3695c965d Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* | Merge remote-tracking branch 'origin/2.0'Kai Koehne2015-04-211-3/+4
|\| | | | | | | | | | | | | Conflicts: Changelog Change-Id: Idd7d569f97fba75b05bfc006c7a5b0b9cf8ccf73
| * Compile with Qt 5.5kh2015-04-131-3/+4
| | | | | | | | | | Change-Id: Iaab5bd3821bc4f1d4a826c9fee0c2a8c75d06bba Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* | Merge remote-tracking branch 'origin/2.0'Kai Koehne2015-04-081-1/+1
|\| | | | | | | | | | | | | | | | | | | Conflicts: dist/config/config.xml dist/packages/org.qtproject.ifw.binaries/meta/package.xml dist/packages/org.qtproject.ifw/meta/package.xml installerfw.pri Change-Id: I60673fac543f1153dad3ef01e589c1f9c6d64599
| * Change binary name to Qt Installer FrameworkNiels Weber2015-03-241-1/+1
| | | | | | | | | | Change-Id: I9b721ae055ec9849492171dacf07c56ca7cc4b08 Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* | Don't mix iterator and const_iteratorKai Koehne2015-04-082-3/+3
|/ | | | | | | | | Add QT_STRICT_ITERATORS to disallow implicit conversions between iterator and const_iterator. This avoids potential detaches of the Qt containers. Change-Id: I79d381f531ddda9ac402c6f5c63cdc7c6808a0bd Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* Correct usage info for archivegenNiels Weber2015-03-101-1/+1
| | | | | Change-Id: I51c5ba84320f4a31e1dce236157e53b57624f89d Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com>
* Strip binaries before packagingNiels Weber2015-03-061-0/+6
| | | | | Change-Id: I4156f6aaff57eab95bc492da993709bee9db8e59 Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* Installer: Do not package binary artifacts in /binKai Koehne2015-03-051-1/+1
| | | | | Change-Id: I9b54208b66f894a7eb248fc93a8628513b9102aa Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
* Update CopyrightKai Koehne2015-02-1823-161/+161
| | | | | Change-Id: I8dde6629cfd461104364d5cdc255cb54b58283fa Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>