Skip to content


Subversion checkout URL

You can clone with
Download ZIP
Fetching contributors…
Cannot retrieve contributors at this time
87 lines (68 sloc) 3.07 KB
# -------------------------------------------------------------------
# Project file for the QtWebKit C++ APIs
# See 'Tools/qmake/README' for an overview of the build system
# -------------------------------------------------------------------
# Use Qt5's module system
MODULE = webkit
MODULE_PRI = ../Tools/qmake/qt_webkit.pri
# ---------------- Custom developer-build handling -------------------
# The assumption for Qt developer builds is that the module file
# will be put into qtbase/mkspecs/modules, and the libraries into
# qtbase/lib, with rpath/install_name set to the Qt lib dir.
# For WebKit we don't want that behavior for the libraries, as we want
# them to be self-contained in the WebKit build dir.
CONFIG += force_independent
# Make sure the module config doesn't override our preferred build config.
debug_and_release:if(!debug|!release) {
# Removing debug_and_release causes issues with lib suffixes when building debug on Windows.
# Work around it by only removing build_all, and still create the Makefiles for both configurations.
win32*: CONFIG -= build_all
else: CONFIG -= debug_and_release
# Allow doing a debug-only build of WebKit (not supported by Qt)
macx:!debug_and_release:debug: TARGET = $$BASE_TARGET
# Make sure the install_name of the QtWebKit library point to webkit
macx {
# We do our own absolute path so that we can trick qmake into
# using the webkit build path instead of the Qt install path.
CONFIG -= absolute_library_soname
!debug_and_release|build_pass {
# We also have to make sure the install_name is correct when
# the library is installed.
change_install_name.depends = install_target
# The install rules generated by qmake for frameworks are busted in
# that both the debug and the release makefile copy QtWebKit.framework
# into the install dir, so whatever changes we did to the release library
# will get overwritten when the debug library is installed. We work around
# that by running install_name on both, for both configs.
change_install_name.commands = framework_dir=\$\$(dirname $(TARGETD)); \
for file in \$\$(ls $$[QT_INSTALL_LIBS]/\$\$framework_dir/$$BASE_TARGET*); do \
install_name_tool -id \$\$file \$\$file; \
done = install
default_install_target.depends += change_install_name
QMAKE_EXTRA_TARGETS += change_install_name default_install_target
WEBKIT += wtf
WEBKIT += javascriptcore
WEBKIT += webcore
!no_webkit2 {
WEBKIT += webkit2
# Ensure that changes to the WebKit1 and WebKit2 API will trigger a qmake of this
# file, which in turn runs syncqt to update the forwarding headers.
!no_webkit1: WEBKIT += webkit1
Jump to Line
Something went wrong with that request. Please try again.