qt5base-lts/mkspecs/features/symbian/sis_targets.prf
Qt by Nokia 38be0d1383 Initial import from the monolithic Qt.
This is the beginning of revision history for this module. If you
want to look at revision history older than this, please refer to the
Qt Git wiki for how to use Git history grafting. At the time of
writing, this wiki is located here:

http://qt.gitorious.org/qt/pages/GitIntroductionWithQt

If you have already performed the grafting and you don't see any
history beyond this commit, try running "git log" with the "--follow"
argument.

Branched from the monolithic repo, Qt master branch, at commit
896db169ea224deb96c59ce8af800d019de63f12
2011-04-27 12:05:43 +02:00

227 lines
12 KiB
Plaintext

# Sis file creation
GENERATE_SIS_TARGETS = false
contains(TEMPLATE, app): GENERATE_SIS_TARGETS = true
else:!equals(DEPLOYMENT, default_deployment) {
for(dep_item, $$list($$DEPLOYMENT)) {
### Qt 5: remove .sources, inconsistent with INSTALLS
dep_item_sources = $$eval($${dep_item}.files) $$eval($${dep_item}.sources)
!isEmpty(dep_item_sources): GENERATE_SIS_TARGETS = true
}
}
equals(GENERATE_SIS_TARGETS, true) {
baseTarget = $$symbianRemoveSpecialCharacters($$basename(TARGET))
template_pkg_target.target = $${baseTarget}_template.pkg
template_pkg_target.depends += $$_PRO_FILE_
template_pkg_target.commands = $(MAKE) -f $(MAKEFILE) qmake
installer_pkg_target.target = $${baseTarget}_installer.pkg
installer_pkg_target.depends += $$_PRO_FILE_
installer_pkg_target.commands = $(MAKE) -f $(MAKEFILE) qmake
stub_pkg_target.target = $${baseTarget}_stub.pkg
stub_pkg_target.depends += $$_PRO_FILE_
stub_pkg_target.commands = $(MAKE) -f $(MAKEFILE) qmake
QMAKE_EXTRA_TARGETS += template_pkg_target installer_pkg_target stub_pkg_target
qtPrepareTool(QMAKE_CREATEPACKAGE, createpackage)
CREATEPACKAGE_DIR = $$OBJECTS_DIR/createpackage_tmp
QMAKE_CLEAN += $$CREATEPACKAGE_DIR/*
symbian-abld|symbian-sbsv2 {
symbian-sbsv2 {
CONVERT_GCCE_PARAM = -g
} else {
CONVERT_GCCE_PARAM =
}
make_cache_name = .make.cache
sis_target.target = sis
sis_target.commands = $(if $(wildcard $$make_cache_name), \
$(MAKE) -f $(MAKEFILE) ok_sis MAKEFILES=$$make_cache_name \
, \
$(if $(QT_SIS_TARGET), \
$(MAKE) -f $(MAKEFILE) ok_sis \
, \
$(MAKE) -f $(MAKEFILE) fail_sis_nocache \
) \
)
sis_target.depends += $${baseTarget}_template.pkg
ok_sis_target.target = ok_sis
ok_sis_target.commands = $$QMAKE_CREATEPACKAGE $$CONVERT_GCCE_PARAM -t $$CREATEPACKAGE_DIR $(QT_SIS_OPTIONS) $${baseTarget}_template.pkg \
$(QT_SIS_TARGET) $(QT_SIS_CERTIFICATE) $(QT_SIS_KEY) $(QT_SIS_PASSPHRASE)
unsigned_sis_target.target = unsigned_sis
unsigned_sis_target.commands = $(if $(wildcard $$make_cache_name), \
$(MAKE) -f $(MAKEFILE) ok_unsigned_sis MAKEFILES=$$make_cache_name \
, \
$(if $(QT_SIS_TARGET), \
$(MAKE) -f $(MAKEFILE) ok_unsigned_sis \
, \
$(MAKE) -f $(MAKEFILE) fail_sis_nocache \
) \
)
unsigned_sis_target.depends += $${baseTarget}_template.pkg
ok_unsigned_sis_target.target = ok_unsigned_sis
ok_unsigned_sis_target.commands = $$QMAKE_CREATEPACKAGE $$CONVERT_GCCE_PARAM -t $$CREATEPACKAGE_DIR $(QT_SIS_OPTIONS) -o $${baseTarget}_template.pkg $(QT_SIS_TARGET)
target_sis_target.target = $${baseTarget}.sis
target_sis_target.commands = $(MAKE) -f $(MAKEFILE) sis
# The installer_sis target has dependency to sis target, so it will regenerate sis package.
# To create smart installer wrapper for for an existing sis package, use ok_installer_sis target directly.
installer_sis_target.target = installer_sis
installer_sis_target.commands = $(MAKE) -f $(MAKEFILE) ok_installer_sis
installer_sis_target.depends = $${baseTarget}_installer.pkg sis
ok_installer_sis_target.target = ok_installer_sis
ok_installer_sis_target.commands = $$QMAKE_CREATEPACKAGE -t $$CREATEPACKAGE_DIR $(QT_SIS_OPTIONS) $${baseTarget}_installer.pkg - \
$(QT_SIS_CERTIFICATE) $(QT_SIS_KEY) $(QT_SIS_PASSPHRASE)
ok_installer_sis_target.depends = $${baseTarget}_installer.pkg
unsigned_installer_sis_target.target = unsigned_installer_sis
unsigned_installer_sis_target.commands = $(MAKE) -f $(MAKEFILE) ok_unsigned_installer_sis
unsigned_installer_sis_target.depends = $${baseTarget}_installer.pkg unsigned_sis
ok_unsigned_installer_sis_target.target = ok_unsigned_installer_sis
ok_unsigned_installer_sis_target.commands = $$QMAKE_CREATEPACKAGE -t $$CREATEPACKAGE_DIR $(QT_SIS_OPTIONS) -o $${baseTarget}_installer.pkg
ok_unsigned_installer_sis_target.depends = $${baseTarget}_installer.pkg
fail_sis_nocache_target.target = fail_sis_nocache
fail_sis_nocache_target.commands = "$(error Project has to be built or QT_SIS_TARGET environment variable has to be set before calling 'SIS' target)"
stub_sis_target.target = stub_sis
stub_sis_target.commands = $(if $(wildcard $$make_cache_name), \
$(MAKE) -f $(MAKEFILE) ok_stub_sis MAKEFILES=$$make_cache_name \
, \
$(if $(QT_SIS_TARGET), \
$(MAKE) -f $(MAKEFILE) ok_stub_sis \
, \
$(MAKE) -f $(MAKEFILE) fail_sis_nocache \
) \
)
stub_sis_target.depends += $${baseTarget}_stub.pkg
ok_stub_sis_target.target = ok_stub_sis
ok_stub_sis_target.commands = $$QMAKE_CREATEPACKAGE -t $$CREATEPACKAGE_DIR -s $(QT_SIS_OPTIONS) $${baseTarget}_stub.pkg \
$(QT_SIS_TARGET) $(QT_SIS_CERTIFICATE) $(QT_SIS_KEY) $(QT_SIS_PASSPHRASE)
QMAKE_EXTRA_TARGETS += sis_target \
ok_sis_target \
unsigned_sis_target \
ok_unsigned_sis_target \
target_sis_target \
installer_sis_target \
ok_installer_sis_target \
unsigned_installer_sis_target \
ok_unsigned_installer_sis_target \
fail_sis_nocache_target \
stub_sis_target \
ok_stub_sis_target
# Sbsv2 has its own store_build target which is using flms.
!symbian-sbsv2 {
contains(QMAKE_HOST.os, "Windows") {
shellFixedHash = $${LITERAL_HASH}
} else {
shellFixedHash = \\$${LITERAL_HASH}
}
store_build_target.target = store_build
store_build_target.commands = \
@echo $${shellFixedHash} ============================================================================== > $$make_cache_name \
&& echo $${shellFixedHash} This file is generated by make and should not be modified by the user >> $$make_cache_name \
&& echo $${shellFixedHash} Name : $$make_cache_name >> $$make_cache_name \
&& echo $${shellFixedHash} Part of : lineedits >> $$make_cache_name \
&& echo $${shellFixedHash} Description : This file is used to cache last build target for >> $$make_cache_name \
&& echo $${shellFixedHash} make sis target. >> $$make_cache_name \
&& echo $${shellFixedHash} Version : >> $$make_cache_name \
&& echo $${shellFixedHash} >> $$make_cache_name \
&& echo $${shellFixedHash} ============================================================================== >> $$make_cache_name \
&& echo QT_SIS_TARGET ?= $(QT_SIS_TARGET) >> $$make_cache_name
QMAKE_EXTRA_TARGETS += store_build_target
QMAKE_CLEAN += $$make_cache_name
}
} else {
sis_destdir = $$DESTDIR
isEmpty(sis_destdir):sis_destdir = .
!equals(TARGET, "$$baseTarget"):sis_destdir = $$sis_destdir/$$dirname(TARGET)
sis_target.target = sis
sis_target.commands = $$QMAKE_CREATEPACKAGE -t $$CREATEPACKAGE_DIR $(QT_SIS_OPTIONS) $${baseTarget}_template.pkg \
- $(QT_SIS_CERTIFICATE) $(QT_SIS_KEY) $(QT_SIS_PASSPHRASE)
sis_target.depends = first $${baseTarget}_template.pkg
unsigned_sis_target.target = unsigned_sis
unsigned_sis_target.commands = $$QMAKE_CREATEPACKAGE -t $$CREATEPACKAGE_DIR $(QT_SIS_OPTIONS) -o $${baseTarget}_template.pkg
unsigned_sis_target.depends = first $${baseTarget}_template.pkg
target_sis_target.target = $${sis_destdir}/$${baseTarget}.sis
target_sis_target.commands = $(MAKE) -f $(MAKEFILE) sis
installer_sis_target.target = installer_sis
installer_sis_target.commands = $(MAKE) -f $(MAKEFILE) ok_installer_sis
installer_sis_target.depends = $${baseTarget}_installer.pkg sis
ok_installer_sis_target.target = ok_installer_sis
ok_installer_sis_target.commands = $$QMAKE_CREATEPACKAGE -t $$CREATEPACKAGE_DIR $(QT_SIS_OPTIONS) $${baseTarget}_installer.pkg - \
$(QT_SIS_CERTIFICATE) $(QT_SIS_KEY) $(QT_SIS_PASSPHRASE)
ok_installer_sis_target.depends = $${baseTarget}_installer.pkg
unsigned_installer_sis_target.target = unsigned_installer_sis
unsigned_installer_sis_target.commands = $$QMAKE_CREATEPACKAGE -t $$CREATEPACKAGE_DIR $(QT_SIS_OPTIONS) -o $${baseTarget}_installer.pkg
unsigned_installer_sis_target.depends = $${baseTarget}_installer.pkg unsigned_sis
!isEmpty(sis_destdir):!equals(sis_destdir, "."):!equals(sis_destdir, "./") {
sis_target.commands += && $$QMAKE_MOVE $${baseTarget}.sis $$sis_destdir
unsigned_sis_target.commands += && $$QMAKE_MOVE $${baseTarget}_unsigned.sis $$sis_destdir
installer_sis_target.commands += && $$QMAKE_MOVE $${baseTarget}_installer.sis $$sis_destdir
unsigned_installer_sis_target.commands += && $$QMAKE_MOVE $${baseTarget}_unsigned_installer.sis $$sis_destdir
}
QMAKE_EXTRA_TARGETS += sis_target \
unsigned_sis_target \
target_sis_target \
installer_sis_target \
ok_installer_sis_target \
unsigned_installer_sis_target
QMAKE_DISTCLEAN += $${sis_destdir}/$${baseTarget}.sis
}
deploy_target.target = deploy
contains(QMAKE_HOST.os, "Windows") {
deploy_target.depends = sis
deploy_target.commands = call $$target_sis_target.target
} else {
deploy_target.commands = @echo Deployment not supported in this environment
}
QMAKE_EXTRA_TARGETS += deploy_target
} else {
contains(TEMPLATE, subdirs) {
# Enable recursive sis target.
sis_target.CONFIG = recursive
sis_target.recurse = $$SUBDIRS
} else {
# Make sure we build everything, since other sis targets in a recursive invocation
# may depend on them, even if this one is empty.
# In abld/sbsv2, we assume that subdir has been built already, as all builds are recursive.
!symbian-abld:!symbian-sbsv2: sis_target.depends = first
}
sis_target.commands =
sis_target.target = sis
QMAKE_EXTRA_TARGETS += sis_target
symbian-abld {
# Create dummy store_build target to avoid errors from .mk callbacks during build
store_build_target.target = store_build
QMAKE_EXTRA_TARGETS += store_build_target
}
}