67 Commits

Author SHA1 Message Date
karsten.heimrich@theqtcompany.com
2e30849eb9 Small cosmetical changes, no functional.
Change-Id: Ic984503444187dfcfcfa83f82768bebb329381d0
Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
2014-11-21 13:18:50 +01:00
Christoph Vogtländer
de66578f22 Fix generation of Updates.xml
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>
2014-11-18 16:34:49 +01:00
Niels Weber
ddb068f7c3 Fix compilation on OSX and Windows
Change-Id: I2981cdebda3fba7d69269ae6b1a1ae7999162fa6
Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
2014-11-14 14:24:08 +01:00
Kai Koehne
c8ed41495f Allow to check for IFW version in code
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>
2014-11-11 16:51:39 +01:00
kh1
5bacbf96be Fix the steps we perform to build an installer.
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>
2014-11-05 11:31:29 +01:00
Kai Koehne
4ebfecf411 Add LGPLv3 as new license
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>
2014-10-16 15:17:56 +02:00
kh1
84875396b7 Overhaul the binary format API.
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>
2014-10-15 17:10:18 +02:00
kh1
711ff0fe83 Make use of the new binary content write function.
Change-Id: Icd6e8a77458e61adc92d93e49846b63a79082513
Reviewed-by: Niels Weber <niels.weber@digia.com>
2014-08-27 13:26:33 +02:00
kh1
2312e7fd59 Rename binary format classes and functions. Move to QInstaller.
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>
2014-08-27 10:44:00 +02:00
kh1
a0c051656c Update documentation and rename code to improve readability.
Change-Id: I5b467aca314f81304f7a4854cb6ea5b4f57361f3
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2014-07-15 13:03:34 +02:00
kh1
5a3063968c Make the marker and the find function class members.
Prepare for QTIFW-292 and QTIFW-345.

Change-Id: I065366742d28e72bc5ae55e70eabf6532b809fea
Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
2014-07-15 11:37:07 +02:00
kh1
62ef1132ae Move class BinaryContent into its own file.
Prepare for QTIFW-292 and QTIFW-345.

Change-Id: I938b5aa728e8f81eb9521df5753ad80ac630d96e
Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
2014-07-15 11:36:15 +02:00
kh1
7f4fadd08d Workaround for QFileInfo::isBundle().
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>
2014-07-04 14:41:21 +02:00
Niels Weber
adb91d5dd8 Replace Q_OS_MAC with Q_OS_OSX
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>
2014-07-03 11:14:19 +02:00
kh1
71868e96bf Fix broken tools after switching to QFileDevice.
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>
2014-07-02 14:07:08 +02:00
kh1
924ebcdbc9 Split out the file IO stuff and adjust other files respectively.
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>
2014-06-24 10:31:08 +02:00
kh1
86f3bd1f75 Use QTemporaryDir instead of our homemade solution.
Change-Id: Ia584a9b2f954df5c29a2f0aa5f12b201b2bfbcc4
Reviewed-by: Niels Weber <niels.weber@digia.com>
Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
2014-06-03 10:49:59 +02:00
Sascha Cunz
819e068216 Name .dmg files after the application bundle on Mac OS X
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>
2013-11-08 12:59:43 +01:00
Tim Jenssen
e14d0b31bc Merge remote-tracking branch 'origin/1.4' into 1.5
Change-Id: I2725f9bacbe04240dc3f97062c5ebc50884822c8
2013-11-06 17:06:15 +01:00
Eike Ziller
0e63df370e Mac: Fix Info.plist for installer
Change-Id: I7a0199c3001395356e96c0ef5a0c5104144b9cb2
Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
2013-11-06 16:08:26 +01:00
Eike Ziller
917a234d18 Make installer apps retina-ready.
Also fixes the generator note.

Change-Id: Ic9a9a033d74320221563c46611122d0fef216c23
Reviewed-by: Iikka Eklund <iikka.eklund@digia.com>
Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
2013-10-24 11:20:40 +02:00
Tim Jenssen
7778787b91 Merge remote-tracking branch 'origin/1.4' into 1.5
Change-Id: Ib2d382d1aa398b642dc15f4df7c03b19bf638546
2013-10-23 17:09:23 +02:00
Michal Klocek
6e25ca4ec7 Option parser, rcc works for current path -> no target expected
Change-Id: I93bc6613203e1e879b18e7a8d6ef8849870835ee
Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
2013-10-16 17:27:49 +02:00
kh1
0f4ceb1950 Implement a way to replace the default resource.
Change-Id: I2e362d255bf2526f216cbb872bbb64d37383d229
Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
Reviewed-by: Michal Klocek <michal.klocek@digia.com>
2013-10-16 15:51:30 +02:00
Tim Jenssen
d8d93f85d6 Merge remote-tracking branch 'origin/1.4'
Change-Id: I9ee4395291754fd5a56555e1dd974df19ee39376
2013-08-26 12:24:11 +02:00
Tim Jenssen
9407b86794 fix online only installer creation
Task-number: QTIFW-319

Change-Id: I1f66f80b952742e7ff21ee6960120271e1579fb9
Reviewed-by: Niels Weber <niels.weber@digia.com>
Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
2013-08-01 15:57:14 +02:00
Tim Jenssen
af045e1321 rename copiedArchives to copiedFiles
- they are including the sha1 files so the old name was misleading

Change-Id: I6156b5590bc98ed319a093c82be32d9f79699d28
Reviewed-by: Niels Weber <niels.weber@digia.com>
Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
2013-07-30 09:49:33 +02:00
Tim Jenssen
72dfa6df1e Merge remote-tracking branch 'origin/1.4'
Conflicts:
	installerfw.pri
	tools/binarycreator/binarycreator.cpp
	tools/common/repositorygen.cpp
	tools/common/repositorygen.h
	tools/repogen/repogen.cpp

Change-Id: I97767b2e4ef9b7afd5ce368d99c6a7d38dfbd947
2013-06-27 11:20:29 +02:00
Kai Koehne
b38573f2da Do not use don't, can't ... in output
Don't, Can't, etc abbreviations are used in informal speech. This is
okay in code comments etc, but user output should use the correct,
non-abbreviated terms.

Change-Id: I53c0dfa91596c151bfa7ef7b65f57d5084ceccde
Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
2013-06-20 12:36:03 +02:00
Niels Weber
dc3f0a459d Lists packages not found that were given explicitly.
When the user calls repogen or binarycreator using the include or
exclude parameter, those packages that were given but could not
be found in the packages directory are now listed in a warning.

Task-number: QTIFW-233
Change-Id: Iaadd0a14d2c6d834daa6dbe956118d674e048fac
Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
2013-06-20 12:31:40 +02:00
Niels Weber
3ddfcacc51 Allow multiple package directories.
Task-number: QTIFW-24

Change-Id: I4e6e31457ecd63de7a2de98e35a7be00616151a5
Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
2013-06-11 16:29:27 +02:00
Tim Jenssen
95dc8d8930 binarycreator tries to copy qt_menu.nib dir
Change-Id: I86ae6eb2c1129537939fc797a88b5c5b8619fbf7
Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
2013-05-27 15:44:15 +02:00
Sergio Ahumada
c7f9289af6 Some minor Nokia -> Qt Project changes
- Updating the supported platforms link
 - changing com.nokia -> org.qt-project

Change-Id: Ib74fda09f177a989b79288b967423ef04c16786e
Reviewed-by: Niels Weber <niels.weber@digia.com>
Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
2013-04-30 13:05:14 +02:00
kh1
b8dc0c7313 Fully qualify function calls. Fix minor typos.
Change-Id: I36cc096f3195e69bf027aa629d31ffac1d519732
Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
2013-03-25 22:00:36 +01:00
kh1
3224fa9834 Change function names (to what they actually do) and signature.
The signature change is kind of a cosmetic one, but I think it
is more obvious that passing a reference into a function might
modify the parameter.

Change-Id: I424c06ed7a449204bd0b243ff07c2d36669b7381
Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
2013-03-25 21:59:53 +01:00
kh1
08ca491ca6 Assume offline installer if there are no repositories.
Task-number: QTIFW-224

Change-Id: I90f6b5002fde182ed59d2c26f473e258e4bdbfad
Reviewed-by: Niels Weber <niels.weber@digia.com>
Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
2013-03-25 21:59:41 +01:00
kh1
72d17b0b19 Pass the settings object to assemble.
There's no need to parse the config file a second time.

Change-Id: I7303b86a30f9ce17a8cfa419b70fc70b5948d151
Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
2013-03-25 21:59:28 +01:00
kh1
6359716fb8 Rewrite copy configuration function.
Fix broken function naming. Copy only files that are referenced
inside the config file. Replace ":" as well, copy fails here on W8.

Task-number: QTIFW-221

Change-Id: Ic039a8c54d4bb391fcd644c9da0dba7b20bda0f5
Reviewed-by: Niels Weber <niels.weber@digia.com>
Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
2013-03-25 21:59:13 +01:00
kh1
5bb70f3676 Small cleanup.
Use exit codes more consequent. Delete the meta dir even if an
exception was thrown.

Change-Id: I87354218091b562147fbc04c20181952fdc967ca
Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
2013-03-21 19:10:04 +01:00
Niels Weber
7e9b2651d0 Compile on Mac
Change-Id: Ib0aac416971bc3c73b0905d404f1c1620ddfa708
Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
2013-03-21 16:57:02 +01:00
Niels Weber
44fc5acd5c Deprecate Icon, introduce replacements.
InstallerApplicationIcon is used on Mac and Windows
for a custom icon of the installer.
InstallerWindowIcon is used to set the window icon
of the installer on all platforms.

Change-Id: I1f555441875b96e4d8e4ca9a808cf18b3a566c3c
Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
2013-03-21 13:32:31 +01:00
Niels Weber
bbebc83ebf Replace child in place instead of deleting and appending.
Change-Id: Idb8463d3728d2cdbaff59c7c27ec7d2044ea2bf0
Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
2013-03-14 15:55:06 +01:00
Niels Weber
98a9496395 Improve variable names in createMetaDataDirectory()
Split out of https://codereview.qt-project.org/#change,48710

Change-Id: Ia0f09818debaf43dcd9d12cef70361575258f89b
Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
2013-03-14 15:23:42 +01:00
Tim Jenssen
f1aa02d1dd Introduce QInstallerTools::copyWithException function
Also use this new function and clean up some output
lines related to this.

Change-Id: I74e9385b449bbca79b70fbd214c5fa75b419ea29
Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
2013-03-14 14:02:35 +01:00
Niels Weber
05b2b268bd Whitespace fixes
Change-Id: Ibd38a8e477bbf7a03fc6e7a69479b401d4a37f78
Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
2013-03-01 15:45:15 +01:00
Niels Weber
fad480d031 binarycreator still needs config option
Change-Id: Ied61160ee377bf48b2f1a80ca71cdd1e24798a55
Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
2013-03-01 15:27:44 +01:00
Niels Weber
0eb397ba65 Fix incorrect error message in binarycreator.
This happened when calling binarycreator with -i and -n at the same time.
Also fix a similar error when calling with -f -n.
Also improve the error message when using -n together with -i or -e.

Task-number: QTIFW-189
Change-Id: I369b218172997d2b46b3209ab13dfc4101767a5c
Reviewed-by: Leena Miettinen <riitta-leena.miettinen@digia.com>
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
Reviewed-by: Tim Jenssen <tim.jenssen@digia.com>
2013-02-27 17:25:00 +01:00
Kai Koehne
bf2300a1cd Don't hard-code version in sources
Change-Id: I1a1f3a22d7360f9a9e8036c76b721aa740e612e9
Reviewed-by: Niels Weber <niels.weber@digia.com>
Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
2013-02-14 13:11:55 +01:00
kh1
8633d999d6 Make IFW compile with mingw.
Change-Id: I0336e02ef701a2bc392bd385d1822bc51cee0c5c
Reviewed-by: Kai Koehne <kai.koehne@digia.com>
2013-01-29 11:12:24 +01:00
Sergio Ahumada
8f4053db30 Change copyright headers from Nokia to Digia
Change-Id: Id55a71a6ee24b234739b6066e11e9c1f2e389f73
Reviewed-by: Karsten Heimrich <karsten.heimrich@digia.com>
2012-12-21 22:25:29 +01:00