Qt Extended Home · Build System Home · Reference · User Guide · Internals |
Projects are automatically setup to be built into packages if they define one of the pkg. variables. By default, a single package is built. It is called pkg and its contents are the result of running qbuild image. It can be configured by modifying its properties.
pkg.name=myapp pkg.desc=My Great App pkg.version=1.0
You can create other structures and assign them to the PACKAGES variable to create more than one package though this is not well tested.
Here is the definition of the package structure.
struct package { name # eg. $name.ipk desc # one line summary deps # packages that this ipk depends on multi # put multiple projects in a single package version # package version license # package license maintainer # package maintainer targets # targets to run (ie. install stuff) }
Notes
The values here are compared to the PROJECTS variable and only enabled projects are addded. The other projects must not install .directory or .desktop files.
Note that pkg.domain is automatically set to include target.domain and the domains of any app/script you have installed with hint=sxe so you should not need to set it. However, this feature is only available for the default package and you must manually assign .domain for additional packages.
There are restrictions on what can be installed. For example, .directory and .desktop files are handled differently. See A note on packages for information about .directory files.
Packages cannot contain quicklaunched applications. You should omit the quicklaunch CONFIG value.
You can create packages in ipk or rpm formats instead of the default QPK. These package formats cannot be installed by the Qt Extended package installer so you will need to provide an alternative package installer. You specify the format of the packages to create with the FORMAT variable.
The restrictions on .directory and .desktop files still apply to IPK and RPM formats but the quicklauncher restriction does not apply because these formats are designed for updating the system instead of sandboxed installation.
make packages FORMAT=ipk
Note that these formats default to creating separate -i18n packages. If you do not want this set the SPLIT_I18N variable.
make packages FORMAT=ipk SPLIT_I18N=0
See also Overviews, PACKAGES, hint=sxe, and Quicklauncher.
Copyright © 2009 Trolltech | Qt Extended - Build System Documentation |