summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorOswald Buddenhagen <[email protected]>2014-04-25 14:11:49 +0200
committerThe Qt Project <[email protected]>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 <[email protected]> Reviewed-by: Laszlo Agocs <[email protected]> Reviewed-by: Friedemann Kleint <[email protected]> Reviewed-by: Joerg Bornemann <[email protected]>
-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 00000000000..cb7bc2c8a83
--- /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 d505c30aa6b..bd0475fc057 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 58ad88673aa..0943b3f2996 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 74cd97c5a4b..420cb90b367 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 0051486f827..18c3978e0f1 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 8e0f6b7f42c..aa777c356fe 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 4d220801855..04b1de895df 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 4f10583fc04..dc286ca11dd 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 6176016f133..70c58dc5a49 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 19852b74b15..dfdcb2e83aa 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