summaryrefslogtreecommitdiffstats
path: root/tools
Commit message (Collapse)AuthorAgeFilesLines
* 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>
* binarycreator: add qico and qtaccessiblewidgets as QTPLUGINsRay Donnelly2014-06-201-1/+1
| | | | | | | | | | | Commit 807de076f4fee6c relies on the autoplugs mechanism (added in qtbase commit 4255ba40ab073af) to add the needed statically linked plugins; however because binarycreator is a console app it doesn't depend on gui (QT -= gui) this mechanism fails to add the plugins. Change-Id: If96b0e2c03d229ad1026602b8e8117babda03481 Reviewed-by: Niels Weber <niels.weber@digia.com> Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* Replace script with js engine.kh12014-06-034-8/+8
| | | | | Change-Id: Ic9c88e27dca1e936ba09a3776df3df7ec166c606 Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
* Use QTemporaryDir instead of our homemade solution.kh12014-06-032-2/+8
| | | | | | Change-Id: Ia584a9b2f954df5c29a2f0aa5f12b201b2bfbcc4 Reviewed-by: Niels Weber <niels.weber@digia.com> Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
* Merge remote-tracking branch 'origin/1.6'Oswald Buddenhagen2014-06-021-5/+5
|\ | | | | | | | | | | | | | | | | | | 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: I32a2a17b8fd7dc0f1f9c12272fc5f814ea5d86cb
| * Mac: Do not require Xcode command line toolsEike Ziller2014-04-161-5/+5
| | | | | | | | | | | | | | | | | | | | | | /usr/bin/xcrun is the tool to use for running build tools from the current Xcode installation, without the need to install anything beside it. Task-number: QTBUG-38015 Change-Id: I32ba8bfac2f2c49e863fe8aeeecaf3df80afb8c8 Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com> Reviewed-by: Niels Weber <niels.weber@digia.com>
* | Cleanup to support Qt5 only.kh12014-06-021-8/+0
| | | | | | | | | | Change-Id: Ib8f61229ce2f07e52c22a15e10dc817aca860ead Reviewed-by: Niels Weber <niels.weber@digia.com>
* | fix that package.xml files are not or wrongly generatedTim Jenssen2014-05-051-4/+2
| | | | | | | | | | | | Change-Id: I22b2e9da8d9a8658fec6b5c4976fe2135c2b04f8 Reviewed-by: Kai Koehne <kai.koehne@digia.com> Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
* | Make sure we read the script content as UTF8.kh12014-04-231-4/+4
| | | | | | | | | | | | | | | | Task-number: QTIFW-485 Change-Id: Id09365207c6f5b1312fb85ad67443f7e51a1944e Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com> Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* | Fix strange error message.kh12014-04-041-6/+13
|/ | | | | | | | | | | Task-number: QTIFW-309 If a component script file is empty or misses the component class constructor, bail out during binary create or installer execution. Change-Id: I422c64186652a52122d54b5b042139803c24ba10 Reviewed-by: Niels Weber <niels.weber@digia.com> Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Merge remote-tracking branch 'origin/1.5'Oswald Buddenhagen2014-03-271-1/+1
|\ | | | | | | | | | | | | Conflicts: installerfw.pri Change-Id: I8bd85997fef0fcfa21a4dd28a6362748a54a4a3b
| * doc: Remove '-u http://www.example.com:8080' from the repogen helpSergio Ahumada2014-02-101-1/+1
| | | | | | | | | | | | | | | | The --updateurl functionality was removed by 17401372c003949a86540c7581e830b980606b73 so removing its usage from the repogen tool help. Change-Id: Iaf0e7bb65b5f116e5c5e3b921d072db70e8e7236 Reviewed-by: Niels Weber <niels.weber@digia.com>
* | Make python script executable for convenience.Niels Weber2014-03-061-0/+0
| | | | | | | | | | Change-Id: I209e477129a371040b7cef940d6b88543e06678a Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* | Add a current date as release date fallback.kh12014-02-111-2/+8
| | | | | | | | | | Change-Id: Ib42ef38b8b47e3a7f0cf3beec1c1c16a7c51cf26 Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
* | add --only-metacontent feature to getrepositorycontent toolTim Jenssen2014-02-071-6/+13
|/ | | | | | Change-Id: Ifd89ccd2a5bbeb48ae304ededce35a29b701809e Reviewed-by: Niels Weber <niels.weber@digia.com> Reviewed-by: Kai Koehne <kai.koehne@digia.com>
* Name .dmg files after the application bundle on Mac OS XSascha Cunz2013-11-081-1/+1
| | | | | | | | | Use the name of the application bundle (input.outputPath) to give the disc image a volume name instead of using the file name of the .dat file ("out" is set to 'installer.dat' at construction time). Change-Id: I0f53ca7fcafb83353f4fea61b62037f48281375e Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>