summaryrefslogtreecommitdiffstats
path: root/src/ogl-runtime-dylib/ogl-runtime-dylib.pro
blob: b360205e20b830ab558448a8fae3741d41c98ae9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
TEMPLATE = lib
TARGET = qt3dsopengl
VERSION = $$MODULE_VERSION

DEFINES += QT3DS_RUNTIME_EXPORTS

CONFIG += installed
include(../commoninclude.pri)
QT += qml
QT += quick-private

boot2qt: {
    RESOURCES += ../../res.qrc
    DEFINES += EMBEDDED_LINUX # TODO: Is there a compile-time flag for boot2qt?
}

integrity|ios {
    RESOURCES += ../../res.qrc
}

SOURCES += \
    ../viewer/Qt3DSAudioPlayerImpl.cpp \
    ../viewer/Qt3DSViewerApp.cpp

HEADERS += \
    ../viewer/qt3dsruntimeglobal.h \
    ../viewer/Qt3DSAudioPlayerImpl.h \
    ../viewer/Qt3DSViewerApp.h \
    ../viewer/Qt3DSViewerTimer.h

linux|qnx {
    BEGIN_ARCHIVE = -Wl,--whole-archive
    END_ARCHIVE = -Wl,--no-whole-archive
}

STATICRUNTIME = \
    $$BEGIN_ARCHIVE \
    -lqt3dsruntimestatic$$qtPlatformTargetSuffix() \
    -lEASTL$$qtPlatformTargetSuffix() \
    $$END_ARCHIVE

# On non-windows systems link the whole static archives and do not put them
# in the prl file to prevent them being linked again by targets that depend
# upon this shared library
!win32:!CONFIG(static){
    QMAKE_LFLAGS += $$STATICRUNTIME
    LIBS += -lqt3dsqmlstreamer$$qtPlatformTargetSuffix()
} else {
    mingw {
        LIBS += \
            -lqt3dsruntimestatic$$qtPlatformTargetSuffix() \
            -lEASTL$$qtPlatformTargetSuffix() \
            -lQT3DSDM$$qtPlatformTargetSuffix() \
            -lqt3dsqmlstreamer$$qtPlatformTargetSuffix()
    } else {
        LIBS += \
            $$STATICRUNTIME \
            -lqt3dsqmlstreamer$$qtPlatformTargetSuffix()
    }
}

win32 {
    LIBS += \
        -lws2_32

    RESOURCES += ../../platformres.qrc
}

linux {
    LIBS += \
        -ldl \
        -lEGL
}

macos {
    QMAKE_LFLAGS_SONAME = -Wl,-install_name,@rpath/
}

PREDEPS_LIBS = qt3dsruntimestatic

include(../../utils.pri)
PRE_TARGETDEPS += $$fixLibPredeps($$LIBDIR, PREDEPS_LIBS)

android {
    # qt prl files contain hard coded paths to android ndk so don't link against them
    # If libraries are missing because of this they need to be added separately
    CONFIG -= link_prl
}