summaryrefslogtreecommitdiffstats
path: root/tools
Commit message (Collapse)AuthorAgeFilesLines
* Change binary name to Qt Installer FrameworkNiels Weber2015-03-241-1/+1
| | | | | Change-Id: I9b721ae055ec9849492171dacf07c56ca7cc4b08 Reviewed-by: Kai Koehne <kai.koehne@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>
* Dump binary content for both installer and maintenance tool.kh2015-02-051-4/+2
| | | | | Change-Id: I749912ebba5e1765f0d60e089a0366f59e09279b Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* no longer use Version as the repository format versionChristoph Vogtländer2015-01-201-1/+1
| | | | | | | | | | | | Use the Version value defined in config.xml as the product version exclusively instead of sometimes using it as the repository format version in components.xml (which must be 1.0.0) and sometimes as the product version. Change-Id: I63864947bf131ac6e246a2aaf6febdda0555c13d Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com> Reviewed-by: Niels Weber <niels.weber@theqtcompany.com> Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* Fix qmake warning about "Redunant entry in QTPLUGIN"Kai Koehne2015-01-131-1/+0
| | | | | | | | | | In qtbase commit 4255ba40ab073af (Qt 5.3.0 and newer) the plugins are added automatically, based on the Qt module one links against. Therefore just remove the QTPLUGIN line (similar to commit 807de07). Change-Id: I776627639fa30a289daafa38dd42835a6b7f53e1 Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
* Rename the exceptions class to be more generic.kh2014-11-241-1/+1
| | | | | Change-Id: Ia96477920055ee6a6f15be1334516746ddf3573b Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* Small cosmetical changes, no functional.karsten.heimrich@theqtcompany.com2014-11-211-1/+1
| | | | | Change-Id: Ic984503444187dfcfcfa83f82768bebb329381d0 Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
* Fix generation of Updates.xmlChristoph Vogtländer2014-11-181-8/+14
| | | | | | | | | | | Generated Updates.xml was missing DownloadableArchives property and component size was not calculated properly in case package directory contains files that are packaged into 7zip archives by the installer. Change-Id: I73e3d16b73cfbe25cb8b2e55b9c93f48b1ecdb1c Reviewed-by: Niels Weber <niels.weber@theqtcompany.com> Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com> Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* Introduce scScript constant and use whenever neededjkobus2014-11-181-1/+1
| | | | | | Change-Id: Icdbd110f4778bbf8fa75cf54a564fcd0bc8f7a49 Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com> Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* Fix compilation on OSX and WindowsNiels Weber2014-11-141-6/+1
| | | | | Change-Id: I2981cdebda3fba7d69269ae6b1a1ae7999162fa6 Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
* Remove -c from repogenNiels Weber2014-11-141-9/+0
| | | | | | | | This is now an error, we had the warning long enough. Change-Id: I8272dd3c886dae54045f97bc33fa96c17bc7eb33 Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com> Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* Fix binary data extractionChristoph Vogtländer2014-11-131-8/+8
| | | | | | | | | | | | Extract binary data based on list of available package names when using "devtool --dump" or "--create-offline-repository" installer option. An entry in meta data resource only exists if the component actually has meta data (e.g. a script) so it is not possible to rely on sub directory structure after copying meta data to extract binary data. Change-Id: Icd70d3495a921229f0043360b93905dc36cf6514 Task-number: QTIFW-574 Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* Allow to check for IFW version in codeKai Koehne2014-11-111-1/+1
| | | | | | | | | | Rename the IFW_VERSION to IFW_VERSION_STR, and add a new IFW_VERSION define that encodes the version in hex. This follows the pattern of QT_VERSION and QT_VERSION_STR, and allows easy checking of the IFW version e.g. in macros. Change-Id: I232c8aa53c9a04522810208cdd1ac595d8676879 Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* Fix the steps we perform to build an installer.kh12014-11-051-11/+21
| | | | | | | | | | | We need to keep a specific order, otherwise the data might endup in the resource file as well and gets appended twice to the installer binary. Task-number: QTIFW-564 Change-Id: Idcadb5d65043d1855846556b63191898a4a54027 Reviewed-by: Christoph Vogtländer <c.vogtlaender@sigma-surface-science.com> Reviewed-by: Niels Weber <niels.weber@digia.com>
* Remove now superfluous tool, functionality ported to devtool.kh12014-11-059-918/+1
| | | | | Change-Id: I9c2a61ce5c141ac51df38be98c43477c7cc6ac20 Reviewed-by: Niels Weber <niels.weber@digia.com>
* add info message line endingChristoph Vogtländer2014-11-041-1/+1
| | | | | | | added missing std::endl in "repogen --update-new-components" info message in case packages list is empty Change-Id: I9a49e46ee031c14a9b02cd41e0a4be2d0234c1af Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* Fix unregistering resources. Fix --operation argument parsing.kh12014-11-041-7/+7
| | | | | | | | | In case of dump we register some resources, though since we return immediately after the function call, never unregister. We need to split the arguments on our own, the parser does not. Change-Id: Id97e0a4d8a3c15fd0027a09514a9c0a6930e7fdb Reviewed-by: Niels Weber <niels.weber@digia.com>
* Remove superfluous include.kh12014-10-311-1/+0
| | | | | Change-Id: I24b7cfe2bc67eb4b0d4a63e4a75e4171e7f0d4ea Reviewed-by: Niels Weber <niels.weber@digia.com>
* Replace all occurrences of "can not" with "cannot"Niels Weber2014-10-311-1/+1
| | | | | | | | | Also fix some other issues in the touched strings, making them comply to Qt style. Change-Id: I46515e1a3bec5e21610943ded2ef7fa1f09a4a15 Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
* Add LGPLv3 as new licenseKai Koehne2014-10-1626-364/+182
| | | | | | | Change-Id: I61158f956894e209dccf83744b4753774676099d Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com> Reviewed-by: Niels Weber <niels.weber@digia.com> Reviewed-by: Maurice Kalinowski <maurice.kalinowski@digia.com>
* Overhaul the binary format API.kh12014-10-153-30/+42
| | | | | | | | | | | | | | Adjust some naming. Add documentation. Make the Resource class handle files only, this is sufficient to read and map inbuild resources. Keep the QResources inside the manager as well, no need to handle them separate. Remove read, write functions from collection class, the API was just unclear how to use. Still it is far from intuitive in the manager class either. If we open a Resource, we need to close it on our own case they are pointers. Change-Id: Ic8aa32a84a15ac774fe1194ba0dbb5733f7216d6 Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com> Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* Fix warning and handle file scheme like files better.kh12014-10-102-2/+3
| | | | | | | | | Calling setFileName() prints a warning if the path is reset without calling close() before. Convert the source path with file:/// scheme to local file. Change-Id: Ie21e7e8ad8f76dbe1afc1843ff5bf7fb4598123a Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Fix broken update option.kh12014-10-101-6/+11
| | | | | | | | | | | We need to read the marker on our own, BinaryContent::binaryLayout() throws cause it cannot read the full layout in case of maintenance tool binary (part of the stuff is inside the .dat file). To be able to read the layout from the .dat file, we need to open it. Pass the right file to relace, in both cases the executable. Change-Id: Ic76e78a2ee289f3d59d51cc8984d84ab5edf5b46 Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Fix relative path issue.kh12014-10-101-2/+3
| | | | | Change-Id: Ia866503bf503a4b1dce8fbb44cc4240463302eb8 Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Add missing help option.kh12014-10-101-0/+1
| | | | | Change-Id: Ie70cf698e1761b26a6d6ff11a782c0a871587132 Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Build all tools by default.kh12014-09-251-21/+1
| | | | | | Change-Id: I68e2844c855c25691a8e1dc1bc772b78fa761949 Reviewed-by: Niels Weber <niels.weber@digia.com> Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Rewrite binary layout read/ write implementation.kh12014-09-043-65/+44
| | | | | | | | | | Move BinaryLayout into its own file. Calculate the segment offsets in place instead of letting the caller do the work. Adjust autotest to match the new behavior. Adjust uses to the new behavior. Change-Id: Iba7a4398bd097f1768c33f0c528efd12b7458541 Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Split and implement new installer base, update checker.kh12014-09-043-16/+7
| | | | | | | | | | | | | Based on the former patches, split the installer base into its own class. Use the new binary content read functions. Adjust uses to match the new classes. Adjust installer base /update checker signature and inheritance. Remove all now superfluous functions from binary content. Core engine instantiates the operations now, makes reading and writing more generic. Move product key check into QInstaller namespace. Make use of the new command line parser. Change-Id: I00aff79085b69ce627906881b43f374681ea7e91 Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Let the binary layout function find the cookie on its own.kh12014-08-291-4/+3
| | | | | | | | | Saves some ugly looking call convention, as we need to find the cookie anyway, pass the cookie instead of the position. Change-Id: I2227576a8ad251fac5312fc477f8381287b0d36d Reviewed-by: Niels Weber <niels.weber@digia.com> Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Make BinaryFormatEngineHandler a real singleton.kh12014-08-291-3/+2
| | | | | | | | It is really needed only once. Change-Id: I0b2231432541c2781afe55105f88809db4fe19e1 Reviewed-by: Niels Weber <niels.weber@digia.com> Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Adjust implementation to not use the collection manager.kh12014-08-291-2/+2
| | | | | Change-Id: Ie38460ff4a94b5583cabb1ecad97cd6c9a906c15 Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Make use of the new binary content write function.kh12014-08-271-90/+53
| | | | | Change-Id: Icd6e8a77458e61adc92d93e49846b63a79082513 Reviewed-by: Niels Weber <niels.weber@digia.com>
* Rename binary format classes and functions. Move to QInstaller.kh12014-08-274-46/+41
| | | | | | | | | | Adjust some minor implementation details. Some renaming of member variables and function names is left out but will follow in later patches. Add some documentation. Change-Id: I929dcbe13fa701be5224b9e5fdf8d19bfff81235 Reviewed-by: Kai Koehne <kai.koehne@digia.com> Reviewed-by: Niels Weber <niels.weber@digia.com>
* Move permissions handling after rename.kh12014-07-151-2/+1
| | | | | | | | | At least on Linux we lost the executable permission while doing a rename before setPermissions(...). Not so urgent in these cases, though more correct. Change-Id: Ibb1ca9f04fe94732ff22afd004fbf921255df690 Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Update documentation and rename code to improve readability.kh12014-07-151-8/+10
| | | | | Change-Id: I5b467aca314f81304f7a4854cb6ea5b4f57361f3 Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Make the marker and the find function class members.kh12014-07-153-9/+13
| | | | | | | Prepare for QTIFW-292 and QTIFW-345. Change-Id: I065366742d28e72bc5ae55e70eabf6532b809fea Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* Move class BinaryContent into its own file.kh12014-07-154-2/+5
| | | | | | | Prepare for QTIFW-292 and QTIFW-345. Change-Id: I938b5aa728e8f81eb9521df5753ad80ac630d96e Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* Introduce developer tool.kh12014-07-119-1/+847
| | | | | | | | | | Supports dump binary content, run operation and update existing binary with new installer base. The support for starting with binary data of a different installer got dropped completely, use update and run instead. Change-Id: I41073d0bfc9a4c4da18fbb9f49fd3e65bb54b501 Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Remove now superfluous tool, replaced by devtool.kh12014-07-103-216/+0
| | | | | | Change-Id: I987722065d65704e9df4864df3232911c9d9747a Reviewed-by: Kai Koehne <kai.koehne@digia.com> Reviewed-by: Niels Weber <niels.weber@digia.com>
* Make tools compile again.kh12014-07-108-36/+35
| | | | | Change-Id: Ie9cfeca59450b7d9f31e5002a50b5c95150d8bed Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Workaround for QFileInfo::isBundle().kh12014-07-041-1/+1
| | | | | | | | | | | | | | | For some reason the former code did not work anyore as expected, the issue seems to be in QFileInfo::isBundle or how we used it. To not depend on a possible fix in Qt, we now always resolve the path before we ask QFileInfo if it is a bundle. Fixes also the behavior change introduced in cead4555. On OSX, we get the .dat file passed that's inside the bundle, still we need to read the data from a .dat file that's located beside the app bundle... Change-Id: Idaa7adc6fbad6bd8e9ce90c383b34ea51fe40e8f Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Rename pathes -> pathsjkobus2014-07-031-3/+3
| | | | | | Change-Id: I9ad2e5eba7df180dec63ec171d5260c01d9715b2 Reviewed-by: Niels Weber <niels.weber@digia.com> Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Replace Q_OS_MAC with Q_OS_OSXNiels Weber2014-07-031-7/+7
| | | | | | | | Q_OS_MAC also refers to iOS. Change-Id: I91603d0add90a0f3948453a6b9628814b0d9f80c Reviewed-by: Jarek Kobus <jaroslaw.kobus@digia.com> Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* Fix broken tools after switching to QFileDevice.kh12014-07-021-15/+23
| | | | | | | | | | | Follow up on 924ebcdbc9b9e590a5f0905941e2d05ac34d4be2 (Part 1). Get rid of KDSaveFile, reuse QTemporaryFile. After changing KDSaveFile to inherit from QFileDevice, it turns out to be not working properly anymore and crashing e.g. binarycreator while using it. To save fixing it we just switch to QTemporaryFile. Change-Id: I785a04db91b431f5e122f193ecf2ef3c54e34b1c Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Fix build with Qt 5.4.0 or newerKai Koehne2014-06-301-1/+3
| | | | | | | qtaccessiblewidgets plugin got removed in Qt 5.4.0. Change-Id: I597c8aabea7d3548851136263f8d77bbd439baba Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* Don't use QObject::tr().kh12014-06-241-22/+41
| | | | | Change-Id: Icefbff9851a4e096a4b800adea7d17db756abe99 Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Split out the file IO stuff and adjust other files respectively.kh12014-06-242-26/+28
| | | | | | | | | Also adjust the API to use QFileDevice instead of QIODevice to make clear we just operate on files here and not on any possible device like sockets, processes etc... Change-Id: I4ecbb6e244fe4bb666ed12e62f9f5586bc1347f0 Reviewed-by: Kai Koehne <kai.koehne@digia.com>