Files
qt5/qtwebkit.pri
Simon Hausmann 877cec0228 Fix make install with WebKit
Avoid running "make install" through build-webkit and therefore risk
accidentally rebuilding the lot. We call build-webkit either with --release
or without, but we never pass --debug. Therefore the build directory is
always WebKitBuild/Release.

This is a stop-gap for the Qt 5 beta. After the release we'll get rid of
qtwebkit.pri altogether and WebKit will be built with just qmake and make.

Change-Id: I21ff7ef8420b67cf466d5bca5efd7a1245bf4131
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@nokia.com>
Reviewed-by: Lars Knoll <lars.knoll@nokia.com>
2012-08-28 13:02:06 +02:00

95 lines
4.4 KiB
Plaintext

# Wrapper profile for QtWebkit.
#
# This is needed because webkit builds via a script.
# Technically this script is a .pro file, but we name it .pri to avoid clashing
# with qt.pro.
isEmpty(vcproj) {
QMAKE_LINK = @: IGNORE THIS LINE
OBJECTS_DIR =
win32:CONFIG -= embed_manifest_exe
} else {
CONFIG += console
PHONY_DEPS = .
phony_src.input = PHONY_DEPS
phony_src.output = phony.c
phony_src.variable_out = GENERATED_SOURCES
phony_src.commands = echo int main() { return 0; } > phony.c
phony_src.name = CREATE phony.c
phony_src.CONFIG += combine
QMAKE_EXTRA_COMPILERS += phony_src
}
DS = $$QMAKE_DIR_SEP
contains(DS, /) {
env_export = export
OPTI=+
SBC=$$quote($$QMAKE_CHK_DIR_EXISTS qtwebkit || mkdir qtwebkit &&)
} else {
env_export = set
GNUTOOLS = $$quote("set \"PATH=$$PWD/gnuwin32/bin;%PATH%\" &&")
}
# Any configuration making use of QMAKE_POST_LINK will not work for this project,
# since the building is done by webkit's own build script and qmake at this level
# does not know the real TARGET. Disable them here.
CONFIG -= separate_debug_info
exists($$PWD/qtwebkit/WebKitTools):qtwebkit_tools_dir = WebKitTools
else:qtwebkit_tools_dir = Tools
QTWEBKIT_BUILD_CONFIG =
contains(CONFIG, release):!contains(CONFIG, debug_and_release): {QTWEBKIT_BUILD_CONFIG = --release}
# WebKit2 is not yet supported on Windows, so avoid trying to build it
# Disable WebKit2 until https://bugs.webkit.org/show_bug.cgi?id=94914 is fixed.
QTWEBKIT_BUILD_CONFIG += --no-webkit2
# The '+' is to make parallel "make" work across the script boundary.
module_qtwebkit.commands = $${OPTI}$${SBC}cd qtwebkit && \
$$env_export \"WEBKITOUTPUTDIR=$$OUT_PWD/qtwebkit/WebKitBuild\" && $$GNUTOOLS \
perl $$PWD$${DS}qtwebkit$${DS}$${qtwebkit_tools_dir}$${DS}Scripts$${DS}build-webkit \
--qt \
--qmake=$(QMAKE) \
--install-libs=$$[QT_INSTALL_LIBS] \
--qmakearg=CONFIG+=production_build \
$$QTWEBKIT_BUILD_CONFIG
# "--makeargs=\"-$(MAKEFLAGS)\""
# Trick to force dependency on this rule.
#module_qtwebkit.commands += $$escape_expand(\\n)make_default: module-qtwebkit
module_qtwebkit.target = module-qtwebkit
# The '+' is to make parallel "make" work across the script boundary.
module_qtwebkit_clean.commands = $${OPTI}$${SBC}cd qtwebkit && \
$$env_export \"WEBKITOUTPUTDIR=$$OUT_PWD/qtwebkit/WebKitBuild\" && $$GNUTOOLS \
perl $$PWD$${DS}qtwebkit$${DS}$${qtwebkit_tools_dir}$${DS}Scripts$${DS}build-webkit \
--qt \
--qmake=$(QMAKE) \
--install-libs=$$[QT_INSTALL_LIBS] \
$$QTWEBKIT_BUILD_CONFIG \
"--makeargs=\"$(MAKEFLAGS)\"" \
--clean
# Trick to force dependency on this rule.
module_qtwebkit_clean.commands += $$escape_expand(\\n)clean: module-qtwebkit-clean
module_qtwebkit_clean.target = module-qtwebkit-clean
module_qtwebkit_install.commands = $${OPTI}$${SBC}cd qtwebkit/WebKitBuild/Release && $(MAKE) install
# Trick to force dependency on this rule.
module_qtwebkit_install.commands+= $$escape_expand(\\n)install: module-qtwebkit-install
module_qtwebkit_install.target = module-qtwebkit-install
module_qtwebkit_uninstall.commands = $${OPTI}$${SBC}cd qtwebkit && \
$$env_export \"WEBKITOUTPUTDIR=$$OUT_PWD/qtwebkit/WebKitBuild\" && $$GNUTOOLS \
perl $$PWD$${DS}qtwebkit$${DS}$${qtwebkit_tools_dir}$${DS}Scripts$${DS}build-webkit \
--qt \
--qmake=$(QMAKE) \
--install-libs=$$[QT_INSTALL_LIBS] \
"--makeargs=\"uninstall\""
# Trick to force dependency on this rule.
module_qtwebkit_uninstall.commands+= $$escape_expand(\\n)uninstall: module-qtwebkit-uninstall
module_qtwebkit_uninstall.target = module-qtwebkit-uninstall
# WebKit needs a nonstandard target because the build has to be initiated by the bundled script.
QMAKE_EXTRA_TARGETS += module_qtwebkit module_qtwebkit_clean module_qtwebkit_install module_qtwebkit_uninstall
PRE_TARGETDEPS += module-qtwebkit