Ignore:
Timestamp:
May 5, 2011, 5:36:53 AM (14 years ago)
Author:
Dmitry A. Kuminov
Message:

trunk: Merged in qt 4.7.2 sources from branches/vendor/nokia/qt.

Location:
trunk
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • trunk

  • trunk/mkspecs/features/default_post.prf

    r769 r846  
     1QT_BREAKPAD_ROOT_PATH = $$(QT_BREAKPAD_ROOT_PATH)
     2!isEmpty(QT_BREAKPAD_ROOT_PATH): \   # quick test first whether requested ...
     3        !staticlib:!static:CONFIG(release, debug|release):contains(TEMPLATE, .*(app|lib)): \   # is it applicable?
     4        !contains(TARGET, .*phony_target.*): \   # monster hack, you don't really see this here, right? ;)
     5        system($$QT_BREAKPAD_ROOT_PATH/qtbreakpadsymbols --breakpad-exists) {    # do we really have it?
     6    CONFIG += breakpad
     7    CONFIG -= no_debug_info separate_debug_info
     8    QMAKE_CFLAGS_RELEASE = $$QMAKE_CFLAGS_RELEASE_WITH_DEBUGINFO
     9    QMAKE_CXXFLAGS_RELEASE = $$QMAKE_CXXFLAGS_RELEASE_WITH_DEBUGINFO
     10    QMAKE_LFLAGS_RELEASE = $$QMAKE_LFLAGS_RELEASE_WITH_DEBUGINFO
     11}
     12
    113CONFIG(debug, debug|release):load(debug)
    214else:load(release)
     
    921    CONFIG -= incredibuild_xge
    1022    CONFIG = incredibuild_xge $$CONFIG
     23}
     24
     25breakpad {
     26    !contains(DESTDIR, (/|.:[/\\\\]).*):TARGET_BASEPATH = $${OUT_PWD}/
     27    !isEmpty(DESTDIR):TARGET_BASEPATH = $${TARGET_BASEPATH}$${DESTDIR}/
     28
     29    win32 {
     30        TARGET_BASEPATH ~= s,/,\\,
     31        contains(TEMPLATE, .*lib) {
     32            isEmpty(TARGET_VERSION_EXT):!isEmpty(VERSION) {
     33                TARGET_VERSION_EXT = $$section(VERSION, ., 0, 0)
     34                isEqual(TARGET_VERSION_EXT, 0):unset(TARGET_VERSION_EXT)
     35            }
     36            TARGET_EXT = .dll
     37        } else {
     38            TARGET_EXT = .exe
     39        }
     40
     41        DEBUGFILENAME = $${TARGET_BASEPATH}$${TARGET}$${TARGET_VERSION_EXT}$${TARGET_EXT}
     42        PDBFILENAME = $${TARGET_BASEPATH}$${TARGET}$${TARGET_VERSION_EXT}.pdb
     43        DEBUGFILENAME ~= s,/,\\,
     44        PDBFILENAME ~= s,/,\\,
     45        QMAKE_CLEAN += $$PDBFILENAME  # for the debug case it is hardcoded in qmake
     46    } else {
     47        contains(TEMPLATE, .*lib):LIBPREFIX = lib
     48
     49        macx {
     50            equals(TEMPLATE, lib) {
     51                lib_bundle {
     52                    TARGET_BASEPATH = $${TARGET_BASEPATH}$${TARGET}.framework/$${TARGET}
     53                } else {
     54                    TARGET_BASEPATH = $${TARGET_BASEPATH}$${LIBPREFIX}$${TARGET}
     55                    !plugin {
     56                        TEMP_VERSION = $$section(VERSION, ., 0, 0)
     57                        isEmpty(TEMP_VERSION):TEMP_VERSION = 1
     58                        TARGET_BASEPATH = $${TARGET_BASEPATH}.$${TEMP_VERSION}
     59                    }
     60                    TARGET_BASEPATH = $${TARGET_BASEPATH}.$${QMAKE_EXTENSION_SHLIB}
     61                }
     62            } else {
     63                app_bundle {
     64                    TARGET_BASEPATH = $${TARGET_BASEPATH}$${TARGET}.app/Contents/MacOS/$${TARGET}
     65                } else {
     66                    TARGET_BASEPATH = $${TARGET_BASEPATH}$${TARGET}
     67                }
     68            }
     69            DEBUGFILENAME = $$TARGET_BASEPATH
     70        } else {
     71            equals(TEMPLATE, lib) {
     72                plugin {
     73                    TARGET_BASEPATH = $${TARGET_BASEPATH}$${LIBPREFIX}$${TARGET}.so
     74                } else {
     75                    TEMP_VERSION = $$VERSION
     76                    isEmpty(TEMP_VERSION):TEMP_VERSION = 1.0.0
     77                    TARGET_BASEPATH = $${TARGET_BASEPATH}$${LIBPREFIX}$${TARGET}.so.$${TEMP_VERSION}
     78                }
     79            } else {
     80                TARGET_BASEPATH = $${TARGET_BASEPATH}$${TARGET}
     81            }
     82            DEBUGFILENAME = $$TARGET_BASEPATH
     83        }
     84    }
     85
     86    PROJECTPATH = $$OUT_PWD
     87    win32:PROJECTPATH ~= s,/,\\,
     88
     89    !isEmpty(QMAKE_POST_LINK):QMAKE_POST_LINK = $$QMAKE_POST_LINK$$escape_expand(\\n\\t)
     90    QMAKE_POST_LINK += $$quote($${QT_BREAKPAD_ROOT_PATH}$${DIR_SEPARATOR}qtbreakpadsymbols \"$$DEBUGFILENAME\" \"$$PROJECTPATH\")
     91    !isEmpty(QMAKE_STRIP):QMAKE_POST_LINK = $$quote($$QMAKE_POST_LINK$$escape_expand(\\n\\t)$$QMAKE_STRIP \"$$DEBUGFILENAME\")
     92
     93    unset(TARGET_BASEPATH)
     94    unset(SYMBOLFILENAME)
     95    unset(TARGET_EXT)
     96    unset(TARGET_VERSION_EXT)
     97    unset(TEMP_VERSION)
    1198}
    1299
     
    28115    QMAKE_EXTRA_TARGETS += check
    29116}
     117
     118# Add special translation sources for projects that require them.
     119# Note 1: Since lupdate will not parse regular config scopes right, contains checks are used instead.
     120# Note 2: Checking for last value of TEMPLATE is used instead of simple contains check because
     121#         lupdate doesn't respect "-=" variable assignments and therefore always finds "app"
     122#         as the first value of TEMPLATE variable.
     123contains(CONFIG, lupdate_run):contains(CONFIG, localize_deployment) {
     124    equals($$list($$last(TEMPLATE)), app): SOURCES += $$[QT_INSTALL_DATA]/mkspecs/common/symbian/appCaptionForTranslation.cpp
     125    SOURCES += $$[QT_INSTALL_DATA]/mkspecs/common/symbian/packageNameForTranslation.cpp
     126}
Note: See TracChangeset for help on using the changeset viewer.