summaryrefslogtreecommitdiffstats
path: root/src/src.pro
blob: 1bc6de11187058b80f416fd08af4e00417efd879 (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
TEMPLATE = lib
DESTDIR = ../lib
TARGET = coroutine

HEADERS += \
    coroutine.h \
    coroutinebuild.h \
    coroutinestoredfunctioncall.h

SOURCES += coroutine.cpp

INCLUDEPATH += .
DEPENDPATH += .

contains(QMAKE_CXX,g++) {
    win32 {
        # will fail for 64 bit win!
        SOURCES += \
            backend/switchstack_gcc_32_win.cpp \
            backend/initializestack_32.cpp
    }

    mac {
        CONFIG(x86_64) {
            SOURCES += \
                backend/switchstack_gcc_64_linux_mac.s \
                backend/initializestack_64_linux_mac.cpp
        } else {
            SOURCES += \
                backend/switchstack_gcc_32_linux_mac.s \
                backend/initializestack_32.cpp
        }
    }
    !win32:!mac {
        contains(QMAKE_CFLAGS,-m64) {
            SOURCES += \
                backend/switchstack_gcc_64_linux_mac.s \
                backend/initializestack_64_linux_mac.cpp
        } else {
            SOURCES += \
                backend/switchstack_gcc_32_linux_mac.s \
                backend/initializestack_32.cpp
        }
    }
}
win32:contains(QMAKE_CXX,cl) {
    # will fail for 64 bit win!
    SOURCES += \
        backend/switchstack_msvc_32.cpp \
        backend/initializestack_32.cpp
}