qtcreator.pro 3.84 KB
Newer Older
Eike Ziller's avatar
Eike Ziller committed
1 2
include(qtcreator.pri)

3
#version check qt
Oswald Buddenhagen's avatar
Oswald Buddenhagen committed
4
!minQtVersion(4, 8, 0) {
5
    message("Cannot build Qt Creator with Qt version $${QT_VERSION}.")
Oswald Buddenhagen's avatar
Oswald Buddenhagen committed
6
    error("Use at least Qt 4.8.0.")
7 8
}

Daniel Molkentin's avatar
Daniel Molkentin committed
9
include(doc/doc.pri)
10

con's avatar
con committed
11 12 13
TEMPLATE  = subdirs
CONFIG   += ordered

14
SUBDIRS = src share lib/qtcreator/qtcomponents
15
unix:!macx:!isEmpty(copydata):SUBDIRS += bin
Orgad Shaneh's avatar
Orgad Shaneh committed
16
!isEmpty(BUILD_TESTS):SUBDIRS += tests
Eike Ziller's avatar
Eike Ziller committed
17 18

OTHER_FILES += dist/copyright_template.txt \
19 20 21
    $$files(dist/changes-*) \
    qtcreator.qbp \
    qbs/pluginspec/pluginspec.qbs
22

23
qmake_cache = $$targetPath($$IDE_BUILD_TREE/.qmake.cache)
24
!equals(QMAKE_HOST.os, Windows) {
25 26 27
    maybe_quote = "\""
    maybe_backslash = "\\"
}
28 29
system("echo $${maybe_quote}$${LITERAL_HASH} config for qmake$${maybe_quote} > $$qmake_cache")
# Make sure the qbs dll ends up alongside the Creator executable.
30
exists(src/shared/qbs/qbs.pro) {
31
    system("echo QBS_DLLDESTDIR = $${IDE_BUILD_TREE}/bin >> $$qmake_cache")
32 33
    system("echo QBS_DESTDIR = $${maybe_backslash}\"$${IDE_LIBRARY_PATH}$${maybe_backslash}\" >> $$qmake_cache")
    system("echo QBSLIBDIR = $${maybe_backslash}\"$${IDE_LIBRARY_PATH}$${maybe_backslash}\" >> $$qmake_cache")
34 35 36 37 38
    system("echo QBS_INSTALL_PREFIX = $${QTC_PREFIX} >> $$qmake_cache")
    system("echo QBS_LIB_INSTALL_DIR = $${QTC_PREFIX}/$${IDE_LIBRARY_BASENAME}/qtcreator >> $$qmake_cache")
    system("echo QBS_RESOURCES_BUILD_DIR = $${maybe_backslash}\"$${IDE_DATA_PATH}/qbs$${maybe_backslash}\" >> $$qmake_cache")
    system("echo QBS_RESOURCES_INSTALL_DIR = $${QTC_PREFIX}/share/qtcreator/qbs >> $$qmake_cache")
    system("echo CONFIG += qbs_no_dev_install >> $$qmake_cache")
39 40
}

41 42 43
contains(QT_ARCH, i386): ARCHITECTURE = x86
else: ARCHITECTURE = $$QT_ARCH

44 45
macx: PLATFORM = "mac"
else:win32: PLATFORM = "windows"
46
else:linux-*: PLATFORM = "linux-$${ARCHITECTURE}"
47 48 49 50
else: PLATFORM = "unknown"

PATTERN = $${PLATFORM}$(INSTALL_EDITION)-$${QTCREATOR_VERSION}$(INSTALL_POSTFIX)

51 52
macx {
    APPBUNDLE = "$$OUT_PWD/bin/Qt Creator.app"
53
    BINDIST_SOURCE = "$$OUT_PWD/bin/Qt Creator.app"
Eike Ziller's avatar
Eike Ziller committed
54
    BINDIST_INSTALLER_SOURCE = $$BINDIST_SOURCE
55
    deployqt.commands = $$PWD/scripts/deployqtHelper_mac.sh \"$${APPBUNDLE}\" \"$$[QT_INSTALL_TRANSLATIONS]\" \"$$[QT_INSTALL_PLUGINS]\" \"$$[QT_INSTALL_IMPORTS]\" \"$$[QT_INSTALL_QML]\"
56
    codesign.commands = codesign -s \"$(SIGNING_IDENTITY)\" $(SIGNING_FLAGS) \"$${APPBUNDLE}\"
57
    dmg.commands = $$PWD/scripts/makedmg.sh $$OUT_PWD/bin qt-creator-$${PATTERN}.dmg
58
    dmg.depends = deployqt
59
    QMAKE_EXTRA_TARGETS += codesign dmg
60
} else {
61
    BINDIST_SOURCE = "$(INSTALL_ROOT)$$QTC_PREFIX"
Eike Ziller's avatar
Eike Ziller committed
62
    BINDIST_INSTALLER_SOURCE = "$$BINDIST_SOURCE/*"
Daniel Molkentin's avatar
Daniel Molkentin committed
63
    deployqt.commands = $$PWD/scripts/deployqt.py -i \"$(INSTALL_ROOT)$$QTC_PREFIX\"
64
    deployqt.depends = install
Daniel Molkentin's avatar
Daniel Molkentin committed
65 66
    win32 {
        deployartifacts.depends = install
Daniel Molkentin's avatar
Daniel Molkentin committed
67
        deployartifacts.commands = git clone "git://gitorious.org/qt-creator/binary-artifacts.git"&& xcopy /s /q /y /i "binary-artifacts\\win32" \"$(INSTALL_ROOT)$$QTC_PREFIX\"&& rmdir /s /q binary-artifacts
Daniel Molkentin's avatar
Daniel Molkentin committed
68 69
        QMAKE_EXTRA_TARGETS += deployartifacts
    }
70 71
}

72 73 74 75 76 77
INSTALLER_ARCHIVE_FROM_ENV = $$(INSTALLER_ARCHIVE)
isEmpty(INSTALLER_ARCHIVE_FROM_ENV) {
    INSTALLER_ARCHIVE = $$OUT_PWD/qt-creator-$${PATTERN}-installer-archive.7z
} else {
    INSTALLER_ARCHIVE = $$OUT_PWD/$$(INSTALLER_ARCHIVE)
}
Eike Ziller's avatar
Eike Ziller committed
78 79

bindist.depends = deployqt
80
bindist.commands = 7z a -mx9 $$OUT_PWD/qt-creator-$${PATTERN}.7z \"$$BINDIST_SOURCE\"
Eike Ziller's avatar
Eike Ziller committed
81
bindist_installer.depends = deployqt
82
bindist_installer.commands = 7z a -mx9 $${INSTALLER_ARCHIVE} \"$$BINDIST_INSTALLER_SOURCE\"
Eike Ziller's avatar
Eike Ziller committed
83
installer.depends = bindist_installer
84
installer.commands = $$PWD/scripts/packageIfw.py -i \"$(IFW_PATH)\" -v $${QTCREATOR_VERSION} -a \"$${INSTALLER_ARCHIVE}\" "qt-creator-$${PATTERN}"
Daniel Molkentin's avatar
Daniel Molkentin committed
85

86 87 88
win32 {
    deployqt.commands ~= s,/,\\\\,g
    bindist.commands ~= s,/,\\\\,g
Eike Ziller's avatar
Eike Ziller committed
89 90
    bindist_installer.commands ~= s,/,\\\\,g
    installer.commands ~= s,/,\\\\,g
91
}
92

Eike Ziller's avatar
Eike Ziller committed
93
QMAKE_EXTRA_TARGETS += deployqt bindist bindist_installer installer