summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOswald Buddenhagen <oswald.buddenhagen@digia.com>2014-04-25 14:11:49 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2014-04-28 19:49:44 +0200
commit9ab41425519510b5bfbe93ac916e3f40aa0e4510 (patch)
treefa743adfb429410b857778eab863b3d496fff26d
parent485b7424df5cb3474cc802bced77770d85bdcb37 (diff)
centralize auxiliary lib creation
this covers convenience libraries which are linked into dlls (if we are not building statically) and "proper" (installed) builds of 3rdparty code. Change-Id: I2f00248c0baa0e73346e477724bf49bbc62ba925 Reviewed-by: Konstantin Ritt <ritt.ks@gmail.com> Reviewed-by: Laszlo Agocs <laszlo.agocs@digia.com> Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com> Reviewed-by: Joerg Bornemann <joerg.bornemann@digia.com>
-rw-r--r--mkspecs/features/qt_helper_lib.prf25
-rw-r--r--src/3rdparty/harfbuzz-ng/harfbuzz-ng.pro9
-rw-r--r--src/angle/src/common/common.pri1
-rw-r--r--src/angle/src/compiler/preprocessor/preprocessor.pro3
-rw-r--r--src/angle/src/compiler/translator.pro3
-rw-r--r--src/angle/src/config.pri9
-rw-r--r--src/angle/src/d3dcompiler/d3dcompiler.pro9
-rw-r--r--src/angle/src/libEGL/libEGL.pro6
-rw-r--r--src/angle/src/libGLESv2/libGLESv2.pro11
-rw-r--r--src/plugins/platforms/xcb/xcb-static/xcb-static.pro5
10 files changed, 37 insertions, 44 deletions
diff --git a/mkspecs/features/qt_helper_lib.prf b/mkspecs/features/qt_helper_lib.prf
new file mode 100644
index 0000000000..cb7bc2c8a8
--- /dev/null
+++ b/mkspecs/features/qt_helper_lib.prf
@@ -0,0 +1,25 @@
+#
+# W A R N I N G
+# -------------
+#
+# This file is not part of the Qt API. It exists purely as an
+# implementation detail. It may change from version to version
+# without notice, or even be removed.
+#
+# We mean it.
+#
+
+load(qt_build_paths)
+
+TEMPLATE = lib
+CONFIG -= qt
+
+contains(QT_CONFIG, debug_and_release): CONFIG += debug_and_release
+contains(QT_CONFIG, build_all): CONFIG += build_all
+
+DESTDIR = $$MODULE_BASE_OUTDIR/lib
+DLLDESTDIR = $$MODULE_BASE_OUTDIR/bin
+
+installed: load(qt_installs)
+
+TARGET = $$qtLibraryTarget($$TARGET)
diff --git a/src/3rdparty/harfbuzz-ng/harfbuzz-ng.pro b/src/3rdparty/harfbuzz-ng/harfbuzz-ng.pro
index d505c30aa6..bd0475fc05 100644
--- a/src/3rdparty/harfbuzz-ng/harfbuzz-ng.pro
+++ b/src/3rdparty/harfbuzz-ng/harfbuzz-ng.pro
@@ -1,16 +1,11 @@
TARGET = qtharfbuzzng
-TEMPLATE = lib
CONFIG += \
static \
hide_symbols \
exceptions_off rtti_off
-CONFIG -= qt
-contains(QT_CONFIG, debug_and_release):CONFIG += debug_and_release
-contains(QT_CONFIG, build_all):CONFIG += build_all
-
-DESTDIR = $$QT_BUILD_TREE/lib
+load(qt_helper_lib)
DEFINES += HAVE_CONFIG_H
HEADERS += $$PWD/src/config.h
@@ -133,5 +128,3 @@ mac {
# even in 10.8 where they were also made available stand-alone.
LIBS_PRIVATE += -framework ApplicationServices
}
-
-TARGET = $$TARGET$$qtPlatformTargetSuffix()
diff --git a/src/angle/src/common/common.pri b/src/angle/src/common/common.pri
index 58ad88673a..0943b3f299 100644
--- a/src/angle/src/common/common.pri
+++ b/src/angle/src/common/common.pri
@@ -1,3 +1,4 @@
+CONFIG += installed
include (../config.pri)
INCLUDEPATH += \
diff --git a/src/angle/src/compiler/preprocessor/preprocessor.pro b/src/angle/src/compiler/preprocessor/preprocessor.pro
index 74cd97c5a4..420cb90b36 100644
--- a/src/angle/src/compiler/preprocessor/preprocessor.pro
+++ b/src/angle/src/compiler/preprocessor/preprocessor.pro
@@ -1,7 +1,4 @@
-TEMPLATE = lib
CONFIG += static
-TARGET = $$qtLibraryTarget(preprocessor)
-
include(../../config.pri)
INCLUDEPATH = $$ANGLE_DIR/src/compiler/preprocessor
diff --git a/src/angle/src/compiler/translator.pro b/src/angle/src/compiler/translator.pro
index 0051486f82..18c3978e0f 100644
--- a/src/angle/src/compiler/translator.pro
+++ b/src/angle/src/compiler/translator.pro
@@ -1,7 +1,4 @@
-TEMPLATE = lib
CONFIG += static
-TARGET = $$qtLibraryTarget(translator)
-
include(../config.pri)
# Mingw 4.7 chokes on implicit move semantics, so disable C++11 here
diff --git a/src/angle/src/config.pri b/src/angle/src/config.pri
index 8e0f6b7f42..aa777c356f 100644
--- a/src/angle/src/config.pri
+++ b/src/angle/src/config.pri
@@ -59,17 +59,10 @@ CONFIG(debug, debug|release) {
}
# c++11 is needed by MinGW to get support for unordered_map.
-CONFIG -= qt
CONFIG += stl exceptions c++11
-contains(QT_CONFIG, debug_and_release):CONFIG += debug_and_release
-contains(QT_CONFIG, build_all):CONFIG += build_all
-
INCLUDEPATH += . .. $$PWD/../include
-DESTDIR = $$QT_BUILD_TREE/lib
-DLLDESTDIR = $$QT_BUILD_TREE/bin
-
msvc {
# Disabled Warnings:
# 4100: 'identifier' : unreferenced formal parameter
@@ -107,3 +100,5 @@ gcc {
QMAKE_CXXFLAGS_DEBUG = $$QMAKE_CFLAGS_DEBUG
QMAKE_CXXFLAGS_RELEASE = $$QMAKE_CFLAGS_RELEASE
+
+load(qt_helper_lib)
diff --git a/src/angle/src/d3dcompiler/d3dcompiler.pro b/src/angle/src/d3dcompiler/d3dcompiler.pro
index 4d22080185..04b1de895d 100644
--- a/src/angle/src/d3dcompiler/d3dcompiler.pro
+++ b/src/angle/src/d3dcompiler/d3dcompiler.pro
@@ -1,9 +1,8 @@
-TEMPLATE = lib
-TARGET = $$qtLibraryTarget(d3dcompiler_qt)
-
+TARGET = d3dcompiler_qt
+CONFIG += installed
include(../config.pri)
-CONFIG += qt
+CONFIG += qt
QT = core
DEFINES += QT_NO_CAST_FROM_ASCII QT_NO_CAST_TO_ASCII
SOURCES += main.cpp
@@ -16,5 +15,3 @@ winrt:equals(WINSDK_VER, 8.1) {
# __stdcall exports get mangled, so use a def file
DEF_FILE += $${TARGET}.def
-
-load(qt_installs)
diff --git a/src/angle/src/libEGL/libEGL.pro b/src/angle/src/libEGL/libEGL.pro
index 4f10583fc0..dc286ca11d 100644
--- a/src/angle/src/libEGL/libEGL.pro
+++ b/src/angle/src/libEGL/libEGL.pro
@@ -1,6 +1,4 @@
-TEMPLATE = lib
-TARGET = $$qtLibraryTarget(libEGL)
-
+CONFIG += installed
include(../common/common.pri)
angle_d3d11: \
@@ -30,8 +28,6 @@ SOURCES += \
mingw:equals(QT_ARCH, i386): DEF_FILE = $$ANGLE_DIR/src/libEGL/$${TARGET}_mingw32.def
}
-load(qt_installs)
-
egl_headers.files = \
$$ANGLE_DIR/include/EGL/egl.h \
$$ANGLE_DIR/include/EGL/eglext.h \
diff --git a/src/angle/src/libGLESv2/libGLESv2.pro b/src/angle/src/libGLESv2/libGLESv2.pro
index 6176016f13..70c58dc5a4 100644
--- a/src/angle/src/libGLESv2/libGLESv2.pro
+++ b/src/angle/src/libGLESv2/libGLESv2.pro
@@ -1,7 +1,4 @@
-TEMPLATE = lib
-TARGET = $$qtLibraryTarget(libGLESv2)
-CONFIG += simd
-
+CONFIG += simd installed
include(../common/common.pri)
INCLUDEPATH += $$OUT_PWD/.. $$ANGLE_DIR/src/libGLESv2
@@ -13,8 +10,8 @@ angle_d3d11: \
LIBS_PRIVATE += -ld3d9
LIBS_PRIVATE += -ldxguid
-STATICLIBS = translator preprocessor
+STATICLIBS = translator preprocessor
for(libname, STATICLIBS) {
# Appends 'd' to the library for debug builds and builds up the fully
# qualified path to pass to the linker.
@@ -238,8 +235,6 @@ for (vs, VERTEX_SHADERS_CLEAR) {
angle_d3d11: QMAKE_EXTRA_COMPILERS += fxc_vs_$${vs}
}
-load(qt_installs)
-
khr_headers.files = $$ANGLE_DIR/include/KHR/khrplatform.h
khr_headers.path = $$[QT_INSTALL_HEADERS]/QtANGLE/KHR
gles2_headers.files = \
@@ -248,5 +243,3 @@ gles2_headers.files = \
$$ANGLE_DIR/include/GLES2/gl2platform.h
gles2_headers.path = $$[QT_INSTALL_HEADERS]/QtANGLE/GLES2
INSTALLS += khr_headers gles2_headers
-
-
diff --git a/src/plugins/platforms/xcb/xcb-static/xcb-static.pro b/src/plugins/platforms/xcb/xcb-static/xcb-static.pro
index 19852b74b1..dfdcb2e83a 100644
--- a/src/plugins/platforms/xcb/xcb-static/xcb-static.pro
+++ b/src/plugins/platforms/xcb/xcb-static/xcb-static.pro
@@ -3,9 +3,8 @@
# libxcb-fixes, libxcb-randr, libxcb-shm, libxcb-sync, libxcb-image,
# libxcb-keysyms, libxcb-icccm, libxcb-renderutil, libxcb-xkb
#
-TEMPLATE = lib
-TARGET = xcb-static
-CONFIG += staticlib
+CONFIG += static
+load(qt_helper_lib)
XCB_DIR = ../../../../3rdparty/xcb