mkspecs/features/symbian/stl.prf
changeset 37 758a864f9613
parent 30 5dc02b23752f
equal deleted inserted replaced
36:ef0373b55136 37:758a864f9613
    13 # Remove mkspecs/common/symbian/stl-off from beginning of includepath 
    13 # Remove mkspecs/common/symbian/stl-off from beginning of includepath 
    14 # in order to use new and delete operators from STL
    14 # in order to use new and delete operators from STL
    15 INCLUDEPATH -= $$[QT_INSTALL_PREFIX]/mkspecs/common/symbian/stl-off
    15 INCLUDEPATH -= $$[QT_INSTALL_PREFIX]/mkspecs/common/symbian/stl-off
    16 
    16 
    17 # libstdcppv5 is preferred over libstdcpp as it has/uses the throwing version of operator new
    17 # libstdcppv5 is preferred over libstdcpp as it has/uses the throwing version of operator new
    18 STL_LIB = -llibstdcppv5.dll
       
    19 
       
    20 # STDCPP turns on standard C++ new behaviour (ie. throwing new)
    18 # STDCPP turns on standard C++ new behaviour (ie. throwing new)
    21 STL_MMP_RULE = "STDCPP"
    19 use_libstdcppv5 = true
    22 
    20 
    23 # Fall back to old implementation if that is the only one that is found
    21 # Fall back to old implementation if that is the only one that is found
    24 exists($${EPOCROOT}epoc32/release/armv5/lib/libstdcpp.dso)|exists($${EPOCROOT}epoc32/release/winscw/udeb/libstdcpp.dll) {
    22 exists($${EPOCROOT}epoc32/release/armv5/lib/libstdcpp.dso)|exists($${EPOCROOT}epoc32/release/winscw/udeb/libstdcpp.dll) {
    25     !exists($${EPOCROOT}epoc32/release/armv5/lib/libstdcppv5.dso):!exists($${EPOCROOT}epoc32/release/winscw/udeb/libstdcppv5.dll) {
    23     !exists($${EPOCROOT}epoc32/release/armv5/lib/libstdcppv5.dso):!exists($${EPOCROOT}epoc32/release/winscw/udeb/libstdcppv5.dll) {
    26         STL_LIB = -llibstdcpp.dll
    24         use_libstdcppv5 = false
    27         STL_MMP_RULE =
       
    28     }
    25     }
    29 }
    26 }
    30 
    27 
    31 LIBS *= $$STL_LIB
    28 equals(use_libstdcppv5, true) {
    32 MMP_RULES *= $$STL_MMP_RULE
    29     LIBS *= -llibstdcppv5.dll
       
    30     symbian-abld|symbian-sbsv2 {
       
    31         MMP_RULES *= "STDCPP"
       
    32     } else {
       
    33         DEFINES *= __SYMBIAN_STDCPP_SUPPORT__
       
    34         LIBS *= -lstdnew.dll
       
    35     }
       
    36 } else {
       
    37     LIBS *= -llibstdcpp.dll
       
    38 }