summaryrefslogtreecommitdiffstats
path: root/examples/examples.pri
diff options
context:
space:
mode:
Diffstat (limited to 'examples/examples.pri')
-rw-r--r--examples/examples.pri54
1 files changed, 40 insertions, 14 deletions
diff --git a/examples/examples.pri b/examples/examples.pri
index ca91aad0..aca85733 100644
--- a/examples/examples.pri
+++ b/examples/examples.pri
@@ -19,10 +19,18 @@ TEMPLATE = app
QT += datavisualization
+!static:android {
+ # Add Qt library to be loaded in shared android build
+ vis_lib_name = DataVisualization
+ vis_src_lib = lib$${vis_lib_name}.so
+ vis_lib_dir = $$OUT_PWD/../../lib/$$vis_src_lib
+ vis_lib_formatted = $$replace(vis_lib_dir, /, $$QMAKE_DIR_SEP)
+ ANDROID_EXTRA_LIBS = $$vis_lib_formatted
+}
+
contains(TARGET, qml.*) {
uri = QtDataVisualization
lib_name = datavisualizationqml2
- vis_lib_name = DataVisualization
uri_replaced = $$replace(uri, \\., $$QMAKE_DIR_SEP)
make_qmldir_path = $$DESTDIR/$$uri_replaced
@@ -37,28 +45,45 @@ contains(TARGET, qml.*) {
QMAKE_EXTRA_TARGETS += copy_qmldir
PRE_TARGETDEPS += $$copy_qmldir.target
+ static:contains(QT_CONFIG, static) {
+ # Make import scan find our copied qmldir & statically built qml lib
+ LIB_EXTENSION = lib
+ QMLPATHS += $$DESTDIR
+ # We need to copy the qmldir & lib already at qmake run stage as import scan is done then
+ exists($$copy_qmldir.depends): system($$QMAKE_COPY $$copy_qmldir_formatted)
+ } else {
+ win32 {
+ LIB_EXTENSION = dll
+ } else {
+ mac {
+ LIB_EXTENSION = dylib
+ } else {
+ LIB_EXTENSION = so
+ }
+ }
+ }
+
win32 {
CONFIG(debug, release|debug) {
src_dir = debug
- src_lib = $${lib_name}d.dll
+ src_lib = $${lib_name}d.$$LIB_EXTENSION
}
CONFIG(release, release|debug){
src_dir = release
- src_lib = $${lib_name}.dll
+ src_lib = $${lib_name}.$$LIB_EXTENSION
}
} else {
src_dir = .
mac {
CONFIG(debug, release|debug) {
- src_lib = lib$${lib_name}_debug.dylib
+ src_lib = lib$${lib_name}_debug.$$LIB_EXTENSION
}
CONFIG(release, release|debug){
- src_lib = lib$${lib_name}.dylib
+ src_lib = lib$${lib_name}.$$LIB_EXTENSION
}
} else {
# linux, android
- src_lib = lib$${lib_name}.so
- vis_src_lib = lib$${vis_lib_name}.so
+ src_lib = lib$${lib_name}.$$LIB_EXTENSION
}
}
copy_lib.target = $$make_qmldir_path/$$src_lib
@@ -70,14 +95,15 @@ contains(TARGET, qml.*) {
android {
system($$QMAKE_COPY $$copy_qmldir_formatted)
- system($$QMAKE_COPY $$copy_lib_formatted)
android_qmldir.files = $$copy_qmldir.target
android_qmldir.path = /assets/qml/$$uri_replaced
- android_qmlplugin.files = $$copy_lib.target
- android_qmlplugin.path = $$target.path
- vis_lib_dir = $$OUT_PWD/../../lib/$$vis_src_lib
- vis_lib_formatted = $$replace(vis_lib_dir, /, $$QMAKE_DIR_SEP)
- ANDROID_EXTRA_LIBS = $$vis_lib_formatted
- INSTALLS += android_qmldir android_qmlplugin
+ INSTALLS += android_qmldir
+ # No need to do custom install for qml plugin lib when it is statically built into app
+ !static|!contains(QT_CONFIG, static) {
+ system($$QMAKE_COPY $$copy_lib_formatted)
+ android_qmlplugin.files = $$copy_lib.target
+ android_qmlplugin.path = $$target.path
+ INSTALLS += android_qmlplugin
+ }
}
}