Changeset 846 for trunk/mkspecs/features/symbian
- Timestamp:
 - May 5, 2011, 5:36:53 AM (15 years ago)
 - Location:
 - trunk
 - Files:
 - 
      
- 12 edited
 - 11 copied
 
- 
          
  . (modified) (1 prop)
 - 
          
  mkspecs/features/symbian/add_mmp_rules.prf (modified) (1 diff)
 - 
          
  mkspecs/features/symbian/application_icon.prf (modified) (1 diff)
 - 
          
  mkspecs/features/symbian/armcc_warnings.prf (modified) (1 diff)
 - 
          
  mkspecs/features/symbian/data_caging_paths.prf (modified) (1 diff)
 - 
          
  mkspecs/features/symbian/debug.prf (copied) (copied from branches/vendor/nokia/qt/4.7.2/mkspecs/features/symbian/debug.prf )
 - 
          
  mkspecs/features/symbian/def_files.prf (modified) (1 diff)
 - 
          
  mkspecs/features/symbian/def_files_disabled.prf (modified) (1 diff)
 - 
          
  mkspecs/features/symbian/default_post.prf (modified) (2 diffs)
 - 
          
  mkspecs/features/symbian/do_not_build_as_thumb.prf (copied) (copied from branches/vendor/nokia/qt/4.7.2/mkspecs/features/symbian/do_not_build_as_thumb.prf )
 - 
          
  mkspecs/features/symbian/localize_deployment.prf (copied) (copied from branches/vendor/nokia/qt/4.7.2/mkspecs/features/symbian/localize_deployment.prf )
 - 
          
  mkspecs/features/symbian/moc.prf (modified) (1 diff)
 - 
          
  mkspecs/features/symbian/nested_exceptions.prf (copied) (copied from branches/vendor/nokia/qt/4.7.2/mkspecs/features/symbian/nested_exceptions.prf )
 - 
          
  mkspecs/features/symbian/opengl.prf (copied) (copied from branches/vendor/nokia/qt/4.7.2/mkspecs/features/symbian/opengl.prf )
 - 
          
  mkspecs/features/symbian/platform_paths.prf (modified) (25 diffs)
 - 
          
  mkspecs/features/symbian/qt.prf (modified) (3 diffs)
 - 
          
  mkspecs/features/symbian/qt_config.prf (copied) (copied from branches/vendor/nokia/qt/4.7.2/mkspecs/features/symbian/qt_config.prf )
 - 
          
  mkspecs/features/symbian/release.prf (copied) (copied from branches/vendor/nokia/qt/4.7.2/mkspecs/features/symbian/release.prf )
 - 
          
  mkspecs/features/symbian/run_on_phone.prf (copied) (copied from branches/vendor/nokia/qt/4.7.2/mkspecs/features/symbian/run_on_phone.prf )
 - 
          
  mkspecs/features/symbian/sis_targets.prf (copied) (copied from branches/vendor/nokia/qt/4.7.2/mkspecs/features/symbian/sis_targets.prf )
 - 
          
  mkspecs/features/symbian/stl.prf (modified) (1 diff)
 - 
          
  mkspecs/features/symbian/symbian_building.prf (copied) (copied from branches/vendor/nokia/qt/4.7.2/mkspecs/features/symbian/symbian_building.prf )
 - 
          
  mkspecs/features/symbian/thread.prf (copied) (copied from branches/vendor/nokia/qt/4.7.2/mkspecs/features/symbian/thread.prf )
 
 
Legend:
- Unmodified
 - Added
 - Removed
 
- 
      
trunk
- Property svn:mergeinfo changed
/branches/vendor/nokia/qt/4.7.2 (added) merged: 845 /branches/vendor/nokia/qt/current merged: 844 /branches/vendor/nokia/qt/4.6.3 removed  
 - Property svn:mergeinfo changed
 - 
      
trunk/mkspecs/features/symbian/add_mmp_rules.prf
r769 r846 24 24 varVal = $$eval($${var}.default) 25 25 } 26 !isEmpty(varVal): libBlock += "$$join(varVal,$$escape_expand(\ n))"26 !isEmpty(varVal): libBlock += "$$join(varVal,$$escape_expand(\\n))" 27 27 } 28 28  - 
      
trunk/mkspecs/features/symbian/application_icon.prf
r769 r846 1 1 load(data_caging_paths) 2 2 3 # If no_icon keyword exist, the S60 UI app is just made hidden. This because S60 app FW 4 # requires the registration resource file to exist always 5 contains( CONFIG, no_icon ) { 6 symbian:RSS_RULES += "hidden = KAppIsHidden;" 7 CONFIG -= no_icon 8 } else { 9 # There is no point in compiling the MIF icon if no_icon CONFIGS is set 10 !isEmpty(ICON) { 11 12 !count(ICON, 1) { 13 ICON = $$first(ICON) 14 warning("Only first icon specified in ICON variable is used: $$ICON") 15 } 16 17 # Try to produce indentical string to fixedTarget in SymbianMakefileGenerator, replaced chars taken 18 # from SymbianMakefileGenerator::removeSpecialCharacters. 19 # 20 # Note: it is not a major problem even baseTarget is not 100% identical to fixedTarget since qmake 21 # only uses filename from RSS_RULES.icon_file when referring to icon file name. 22 baseTarget = $$basename(TARGET) 23 baseTarget = $$replace(baseTarget, /,_) 24 baseTarget = $$replace(baseTarget, \\,_) 25 baseTarget = $$replace(baseTarget, -,_) 26 baseTarget = $$replace(baseTarget, :,_) 27 baseTarget = $$replace(baseTarget, \.,_) 28 baseTarget = $$replace(baseTarget, " ",_) 29 30 # Note: symbian-sbsv2 builds can't utilize extra compiler for mifconv, so ICON handling is done in code 31 symbian-abld { 32 #Makefile: requires paths with backslash 33 ICON = $$replace( ICON, /, \\) 34 35 # Extra compiler rules for mifconv 36 mifconv.output = ${ZDIR}$$APP_RESOURCE_DIR/$${baseTarget}.mif 37 # Based on: http://www.forum.nokia.com/document/Cpp_Developers_Library 38 # svg-t icons should always use /c32 depth 39 mifconv.commands = mifconv ${QMAKE_FILE_OUT} /c32 ${QMAKE_FILE_IN} 40 mifconv.input = ICON 41 mifconv.CONFIG = no_link combine 42 # target_predeps together with combine seems not to work correctly, lets define it by ourselves 43 PRE_TARGETDEPS += $$mifconv.output 44 QMAKE_EXTRA_COMPILERS += mifconv 45 } 46 # Rules to use generated MIF file from symbian resources 47 RSS_RULES.number_of_icons = $$size(ICON) 48 RSS_RULES.icon_file = $$APP_RESOURCE_DIR/$${baseTarget}.mif 3 contains(CONFIG, no_icon) { 4 # If no_icon keyword exist, the S60 UI app is just made hidden. This because S60 app FW 5 # requires the registration resource file to exist always 6 contains(QT, gui):contains(CONFIG, qt) { 7 symbian:RSS_RULES += "hidden = KAppIsHidden;" 8 CONFIG -= no_icon 49 9 } 50 10 } 51 11 12 !contains(CONFIG, no_icon) { 13 baseTarget = $$symbianRemoveSpecialCharacters($$basename(TARGET)) 14 contains(baseTarget, "^.*\\..*$") { 15 CONFIG += no_icon 16 ICON = 17 warning("Symbian resources do not support '.' character in TARGET, skipping resource generation.") 18 } else { 19 symbian-abld|symbian-sbsv2 { 20 resourceZDir = $$EPOCROOT$$HW_ZDIR$$APP_RESOURCE_DIR 21 regZDir = $$EPOCROOT$$HW_ZDIR$$REG_RESOURCE_IMPORT_DIR 22 } else { 23 contains(DESTDIR, "/.*") { 24 resourceZDir = $$DESTDIR 25 } else:isEmpty(DESTDIR) { 26 resourceZDir = $$OUT_PWD 27 } else { 28 resourceZDir = $$OUT_PWD/$$DESTDIR 29 } 30 regZDir = $$resourceZDir 31 } 32 33 default_resource_deployment.sources += $$resourceZDir/$${baseTarget}.rsc 34 default_resource_deployment.path = $$APP_RESOURCE_DIR 35 default_reg_deployment.sources += $$regZDir/$${baseTarget}_reg.rsc 36 default_reg_deployment.path = $$REG_RESOURCE_IMPORT_DIR 37 38 !isEmpty(ICON) { 39 !count(ICON, 1) { 40 ICON = $$first(ICON) 41 warning("Only first icon specified in ICON variable is used: $$ICON") 42 } 43 44 # Note: symbian-sbsv2 builds can't utilize extra compiler for mifconv, so ICON handling is done in code 45 !symbian-sbsv2 { 46 # Absolute path required for shadow builds. 47 # However, in older Symbian environments abld toolchain can't handle even moderately long 48 # paths, so don't force absolute there. 49 !symbian-abld:!contains(ICON, "^(/|\\\\|.:).*"):ICON = $$_PRO_FILE_PWD_/$$ICON 50 51 #Makefile: requires paths with backslash 52 ICON_backslashed = $$ICON 53 54 symbian-abld { 55 # ${ZDIR} is defined in Makefile 56 mifIconZDir = ${ZDIR}$$APP_RESOURCE_DIR 57 } else { 58 mifIconZDir = $$resourceZDir 59 } 60 61 # Extra compiler rules for mifconv 62 mifconv.target = $$mifIconZDir/$${baseTarget}.mif 63 contains(QMAKE_HOST.os, "Windows") { 64 ICON_backslashed = $$replace(ICON_backslashed, /, \\) 65 mifconv.target = $$replace(mifconv.target, /, \\) 66 } 67 # Based on: http://www.forum.nokia.com/document/Cpp_Developers_Library 68 # svg-t icons should always use /c32 depth 69 mifconv.commands = mifconv $$mifconv.target /c32 $$ICON_backslashed 70 71 mifconv.depends = $$ICON 72 PRE_TARGETDEPS += $$mifconv.target 73 QMAKE_EXTRA_TARGETS += mifconv 74 QMAKE_DISTCLEAN += $$mifconv.target 75 } 76 # Rules to use generated MIF file from symbian resources 77 RSS_RULES.number_of_icons = $$size(ICON_backslashed) 78 RSS_RULES.icon_file = $$APP_RESOURCE_DIR/$${baseTarget}.mif 79 80 default_resource_deployment.sources += $$resourceZDir/$${baseTarget}.mif 81 } 82 } 83 } 84 85  - 
      
trunk/mkspecs/features/symbian/armcc_warnings.prf
r561 r846 1 # 68: integer conversion resulted in a change of sign (sounds useful, but it's 2 # buggy and is reported even in places where it makes no sense) 1 3 # 111: Statement is unreachable 2 4 # 185: Dynamic initialization in unreachable code 5 # 187: use of "=" where "==" may have been intended 3 6 # 191: Type qualifier is meaningless on cast type 4 7 # 368: class "<class>" defines no constructor to initialize the following: <member> 5 8 # (Disabled because there are other ways of assigning besides constructors) 9 # 830: function "xxx" has no corresponding operator delete (to be called if an 10 # exception is thrown during initialization of an allocated object) (used a 11 # lot in 3rd party code) 12 # 997: function "xxx" is hidden by "yyy" -- virtual function override intended? 13 # (used all over the place in the Symbian SDK) 6 14 # 1293: Assignment in condition 7 15 # 1294: pre-ANSI C style functions declarations (used a lot in 3rd party code) 8 16 # 2874: <variable> may be used before being set (this one sounds useful, but 9 17 # it's output also for class instances, making it useless in practice) 10 QMAKE_CFLAGS.ARMCC += --diag_suppress 111,185,191,368,1293,1294,2874 18 QMAKE_CFLAGS.ARMCC += --diag_suppress 68,111,185,187,191,368,830,997,1293,1294,2874 19 QMAKE_CXXFLAGS.ARMCC += --diag_suppress 68,111,185,187,191,368,830,997,1293,1294,2874 11 20 12 21 # 6780: <origvis> visibility removed from symbol '<symname>' through <impexp>  - 
      
trunk/mkspecs/features/symbian/data_caging_paths.prf
r769 r846 75 75 } 76 76 77 isEmpty(QT_PLUGINS_BASE_DIR): QT_PLUGINS_BASE_DIR = /$$RESOURCE_FILES_DIR/qt$${QT_LIBINFIX}/plugins78 77 isEmpty(HW_ZDIR): HW_ZDIR = epoc32/data/z 79 78 isEmpty(REG_RESOURCE_DIR): REG_RESOURCE_DIR = /private/10003a3f/apps 80 79 isEmpty(REG_RESOURCE_IMPORT_DIR): REG_RESOURCE_IMPORT_DIR = /private/10003a3f/import/apps 80 isEmpty(APP_PRIVATE_DIR_BASE): APP_PRIVATE_DIR_BASE = /private  - 
      
trunk/mkspecs/features/symbian/def_files.prf
r651 r846 4 4 CONFIG -= def_files_disabled 5 5 6 # Firstly, if the MMP_RULES already contain a defBlock variable, don't generate another one 7 # (this bit is slightly magic, because it depends upon everyone creating their DEFFILE statements 8 # in a defBlock variable; but otherwise we have to expand MMP_RULES then scan for the DEFFILE keyword) 9 !contains(MMP_RULES, defBlock) { 10 # Apps are executables on Symbian, so don't have exports, and therefore don't have DEF files 11 # Plugins use standard DEF files, which qmake generates, so shouldn't be using these DEFFILE 12 # statements - they use the qmake generated statements instead 13 # Static libraries obviously don't have DEF files, as they don't take part in dynamic linkage 14 !contains(TEMPLATE, app):!contains(CONFIG, plugin):!contains(CONFIG, staticlib): { 15 !isEmpty(defFilePath) { 16 defBlock = \ 17 "$${LITERAL_HASH}ifdef WINSCW" \ 18 "DEFFILE $$defFilePath/bwins/$${TARGET}.def" \ 19 "$${LITERAL_HASH}elif defined EABI" \ 20 "DEFFILE $$defFilePath/eabi/$${TARGET}.def" \ 21 "$${LITERAL_HASH}endif" 22 } else { 23 # If defFilePath is not defined, then put the folders containing the DEF files at the 24 # same level as the .pro (and generated MMP) file(s) 25 defBlock = \ 26 "$${LITERAL_HASH}ifdef WINSCW" \ 27 "DEFFILE ./bwins/$${TARGET}.def" \ 28 "$${LITERAL_HASH}elif defined EABI" \ 29 "DEFFILE ./eabi/$${TARGET}.def" \ 30 "$${LITERAL_HASH}endif" 6 # We need a target name without the INFIX'ed part, since DEF files are not infixed. 7 equals(QMAKE_TARGET_PRODUCT, Qt4)|equals(QMAKE_TARGET_PRODUCT, QTestLib):clean_TARGET = $$replace(TARGET, "$${QT_LIBINFIX}$", "") 8 else:clean_TARGET = $$TARGET 9 10 symbian-abld|symbian-sbsv2 { 11 # Firstly, if the MMP_RULES already contain a defBlock variable, don't generate another one 12 # (this bit is slightly magic, because it depends upon everyone creating their DEFFILE statements 13 # in a defBlock variable; but otherwise we have to expand MMP_RULES then scan for the DEFFILE keyword) 14 # Similarly, explicit EXPORTUNFROZEN should block adding defBlock 15 !contains(MMP_RULES, defBlock):!contains(MMP_RULES, EXPORTUNFROZEN) { 16 # Apps are executables on Symbian, so don't have exports, and therefore don't have DEF files 17 # Plugins use standard DEF files, which qmake generates, so shouldn't be using these DEFFILE 18 # statements - they use the qmake generated statements instead 19 # Static libraries obviously don't have DEF files, as they don't take part in dynamic linkage 20 !contains(TEMPLATE, app):!contains(CONFIG, plugin):!contains(CONFIG, staticlib): { 21 !isEmpty(DEF_FILE) { 22 defBlock = \ 23 "$${LITERAL_HASH}ifdef WINSCW" \ 24 "DEFFILE $$DEF_FILE/bwins/$${clean_TARGET}.def" \ 25 "$${LITERAL_HASH}elif defined EABI" \ 26 "DEFFILE $$DEF_FILE/eabi/$${clean_TARGET}.def" \ 27 "$${LITERAL_HASH}endif" 28 } else:!isEmpty(defFilePath) { 29 defBlock = \ 30 "$${LITERAL_HASH}ifdef WINSCW" \ 31 "DEFFILE $$defFilePath/bwins/$${clean_TARGET}.def" \ 32 "$${LITERAL_HASH}elif defined EABI" \ 33 "DEFFILE $$defFilePath/eabi/$${clean_TARGET}.def" \ 34 "$${LITERAL_HASH}endif" 35 } else { 36 # If defFilePath is not defined, then put the folders containing the DEF files at the 37 # same level as the .pro (and generated MMP) file(s) 38 defBlock = \ 39 "$${LITERAL_HASH}ifdef WINSCW" \ 40 "DEFFILE ./bwins/$${clean_TARGET}.def" \ 41 "$${LITERAL_HASH}elif defined EABI" \ 42 "DEFFILE ./eabi/$${clean_TARGET}.def" \ 43 "$${LITERAL_HASH}endif" 44 } 45 MMP_RULES += defBlock 31 46 } 32 MMP_RULES += defBlock33 47 } 48 49 } else:contains(TEMPLATE, lib):!contains(CONFIG, static):!contains(CONFIG, staticlib):!contains(CONFIG, plugin) { 50 !isEmpty(DEF_FILE) { 51 defFile = $$DEF_FILE 52 } else { 53 defFile = . 54 } 55 system("$$QMAKE_CHK_DIR_EXISTS $$_PRO_FILE_PWD_/$$defFile") { 56 !exists("$$_PRO_FILE_PWD_/$$defFile/eabi") { 57 system("$$QMAKE_MKDIR $$_PRO_FILE_PWD_/$$defFile/eabi") 58 } 59 elf2e32FileToAdd = $$_PRO_FILE_PWD_/$$defFile/eabi/$$basename(clean_TARGET)u.def 60 } else { 61 elf2e32FileToAdd = $$_PRO_FILE_PWD_/$$defFile 62 } 63 QMAKE_ELF2E32_FLAGS += "--definput=$$elf2e32FileToAdd" 64 65 symbianObjdir = $$OBJECTS_DIR 66 isEmpty(symbianObjdir):symbianObjdir = . 67 68 freeze_target.target = freeze 69 freeze_target.depends = first 70 # The perl part is to convert to unix line endings and remove comments, which the s60 tools refuse to do. 71 freeze_target.commands = $$QMAKE_COPY $$symbianObjdir/$${TARGET}.def $$elf2e32FileToAdd 72 QMAKE_EXTRA_TARGETS += freeze_target 73 } else:contains(TEMPLATE, subdirs) { 74 freeze_target.target = freeze 75 freeze_target.CONFIG = recursive 76 freeze_target.recurse = $$SUBDIRS 77 QMAKE_EXTRA_TARGETS += freeze_target 78 } else { 79 freeze_target.target = freeze 80 freeze_target.commands = 81 QMAKE_EXTRA_TARGETS += freeze_target 34 82 }  - 
      
trunk/mkspecs/features/symbian/def_files_disabled.prf
r651 r846 9 9 # with EXPORTUNFROZEN enabled, new exports are included in the dll and dso/lib without 10 10 # needing to run abld/sbs freeze 11 MMP_RULES += EXPORTUNFROZEN11 MMP_RULES *= EXPORTUNFROZEN 12 12 } 13 13 }  - 
      
trunk/mkspecs/features/symbian/default_post.prf
r769 r846 4 4 contains(CONFIG, stdbinary) { 5 5 QMAKE_LIBS += 6 } else:contains(QT, gui):contains(CONFIG,qt) { 7 S60MAIN_LIBS = -leuser 8 QMAKE_LIBS += -lqtmain$${QT_LIBINFIX}.lib $$S60MAIN_LIBS 6 } else:contains(CONFIG,qt) { 7 QMAKE_LIBS += $$QMAKE_LIBS_QT_ENTRY 9 8 } else { 10 QMAKE_LIBS += $$QMAKE_LIBS_ QT_ENTRY9 QMAKE_LIBS += $$QMAKE_LIBS_NO_QT_ENTRY 11 10 } 11 12 contains(DESTDIR, "/.*") { 13 default_bin_deployment.sources += $$DESTDIR/$$symbianRemoveSpecialCharacters($$basename(TARGET)).exe 14 } else:isEmpty(DESTDIR) { 15 default_bin_deployment.sources += $$OUT_PWD/$$symbianRemoveSpecialCharacters($$basename(TARGET)).exe 16 } else { 17 default_bin_deployment.sources += $$OUT_PWD/$$DESTDIR/$$symbianRemoveSpecialCharacters($$basename(TARGET)).exe 18 } 19 default_bin_deployment.path += /sys/bin 20 21 load(application_icon.prf) 12 22 } 13 23 contains(TEMPLATE, lib): { … … 27 37 } 28 38 29 contains(TEMPLATE, ".*app"):contains(QT, gui):contains(CONFIG,qt) { 30 load(application_icon.prf) 39 isEmpty(TARGET.UID3):TARGET.UID3 = $$generate_uid("$${OUT_PWD}/$${TARGET}") 40 isEmpty(TARGET.UID2) { 41 contains(CONFIG, stdbinary) { 42 TARGET.UID2 = 0x20004C45 43 } else { 44 contains(TEMPLATE, app) { 45 contains(QT, gui) { 46 TARGET.UID2 = 0x100039CE 47 } else { 48 TARGET.UID2 = 0 49 } 50 } else:contains(TEMPLATE, lib):!contains(CONFIG, static):!contains(CONFIG, staticlib) { 51 TARGET.UID2 = 0x1000008d 52 } 53 } 31 54 } 55 56 # Supports Symbian^3 and Symbian^4 by default and also S60 3.1, 3.2, and 5.0 if built against any of those. 57 platform_product_id = S60ProductID 58 platform_product_id = $$addLanguageDependentPkgItem(platform_product_id) 59 pkg_platform_dependencies = \ 60 "; Default HW/platform dependencies" \ 61 "[0x20022E6D],0,0,0,{$$platform_product_id}" \ 62 "[0x20032DE7],0,0,0,{$$platform_product_id}" 63 contains(S60_VERSION, 3.1)|contains(S60_VERSION, 3.2)|contains(S60_VERSION, 5.0) { 64 pkg_platform_dependencies += \ 65 "[0x102032BE],0,0,0,{$$platform_product_id}" \ 66 "[0x102752AE],0,0,0,{$$platform_product_id}" \ 67 "[0x1028315F],0,0,0,{$$platform_product_id}" 68 }  - 
      
trunk/mkspecs/features/symbian/moc.prf
r561 r846 1 1 load(moc) 2 2 3 RET = $$find(MOC_DIR, "(/|^)\.[^/]+/?$") 4 !isEmpty(RET):{ 5 error("Symbian does not support directories starting with a dot. Please set MOC_DIR to a different value in your profile. MOC_DIR: $$MOC_DIR") 3 symbian-abld|symbian-sbsv2 { 4 RET = $$find(MOC_DIR, "(/|^)\\.[^/]+/?$") 5 !isEmpty(RET):{ 6 error("Symbian does not support directories starting with a dot. Please set MOC_DIR to a different value in your profile. MOC_DIR: $$MOC_DIR") 7 } 8 9 RET = $$find(RCC_DIR, "(/|^)\\.[^/]+/?$") 10 !isEmpty(RET):{ 11 error("Symbian does not support directories starting with a dot. Please set RCC_DIR to a different value in your profile. RCC_DIR: $$RCC_DIR") 12 } 13 14 RET = $$find(OBJECTS_DIR, "(/|^)\\.[^/]+/?$") 15 !isEmpty(RET):{ 16 error("Symbian does not support directories starting with a dot. Please set OBJECTS_DIR to a different value in your profile. OBJECTS_DIR: $$OBJECTS_DIR") 17 } 6 18 } 7 8 RET = $$find(RCC_DIR, "(/|^)\.[^/]+/?$")9 !isEmpty(RET):{10 error("Symbian does not support directories starting with a dot. Please set RCC_DIR to a different value in your profile. RCC_DIR: $$RCC_DIR")11 }12 13 RET = $$find(OBJECTS_DIR, "(/|^)\.[^/]+/?$")14 !isEmpty(RET):{15 error("Symbian does not support directories starting with a dot. Please set OBJECTS_DIR to a different value in your profile. OBJECTS_DIR: $$OBJECTS_DIR")16 } - 
      
trunk/mkspecs/features/symbian/platform_paths.prf
r769 r846 46 46 # INCLUDEPATH += $$OS_LAYER_LIBUTILITY_SYSTEMINCLUDE 47 47 # 48 # 49 # 48 # These paths are primarily meant to be used as is in bld.inf and .mmp 49 # files, so they do not contain epocroot when using official symbian 50 # toolchains (symbian-abld or symbian-sbsv2). 51 # For makefile based mkspecs, epocroot is prepended to all paths for 52 # convenience. 53 # 54 # To use paths defined here in other contexts that require epocroot to be 55 # prepended always, such as exists checks, please use prependEpocroot 56 # replacement function: 57 # 58 # exists($$prependEpocroot($$MW_LAYER_PUBLIC_EXPORT_PATH(foobar.h))) 50 59 # 51 60 # ============================================================================== 52 61 53 exists($${EPOCROOT}epoc32/include/platform_paths.prf) { 54 62 symbian-abld|symbian-sbsv2 { 63 epocroot_prefix = / 64 } else { 65 epocroot_prefix = $${EPOCROOT} 66 } 67 68 symbian-abld|symbian-sbsv2:exists($${EPOCROOT}epoc32/include/platform_paths.prf) { 69 70 # Symbian does not provide correct profiles for non-mmp based systems, so 71 # we only should get in here with abld and sbsv2. 72 55 73 # Load platform specific paths 56 74 load($${EPOCROOT}epoc32/include/platform_paths.prf) … … 67 85 68 86 defineReplace(APP_LAYER_SDK_EXPORT_PATH) { 69 return ( /epoc32/include/app/$$1)87 return ($${epocroot_prefix}epoc32/include/app/$$1) 70 88 } 71 89 defineReplace(APP_LAYER_PUBLIC_EXPORT_PATH) { 72 return ( /epoc32/include/app/$$1)90 return ($${epocroot_prefix}epoc32/include/app/$$1) 73 91 } 74 92 … … 78 96 79 97 defineReplace(APP_LAYER_DOMAIN_EXPORT_PATH) { 80 return ( /epoc32/include/platform/app/$$1)98 return ($${epocroot_prefix}epoc32/include/platform/app/$$1) 81 99 } 82 100 defineReplace(APP_LAYER_PLATFORM_EXPORT_PATH) { 83 return ( /epoc32/include/platform/app/$$1)101 return ($${epocroot_prefix}epoc32/include/platform/app/$$1) 84 102 } 85 103 … … 89 107 90 108 defineReplace(MW_LAYER_SDK_EXPORT_PATH) { 91 return ( /epoc32/include/mw/$$1)109 return ($${epocroot_prefix}epoc32/include/mw/$$1) 92 110 } 93 111 defineReplace(MW_LAYER_PUBLIC_EXPORT_PATH) { 94 return ( /epoc32/include/mw/$$1)112 return ($${epocroot_prefix}epoc32/include/mw/$$1) 95 113 } 96 114 … … 100 118 101 119 defineReplace(MW_LAYER_DOMAIN_EXPORT_PATH) { 102 return ( /epoc32/include/platform/mw/$$1)120 return ($${epocroot_prefix}epoc32/include/platform/mw/$$1) 103 121 } 104 122 defineReplace(MW_LAYER_PLATFORM_EXPORT_PATH) { 105 return ( /epoc32/include/platform/mw/$$1)123 return ($${epocroot_prefix}epoc32/include/platform/mw/$$1) 106 124 } 107 125 … … 111 129 112 130 defineReplace(OSEXT_LAYER_SDK_EXPORT_PATH) { 113 return ( /epoc32/include/$$1)131 return ($${epocroot_prefix}epoc32/include/$$1) 114 132 } 115 133 # WARNING: If the following path changes see the exists() function around line 219 116 134 defineReplace(OS_LAYER_PUBLIC_EXPORT_PATH) { 117 return ( /epoc32/include/$$1)135 return ($${epocroot_prefix}epoc32/include/$$1) 118 136 } 119 137 … … 123 141 124 142 defineReplace(OSEXT_LAYER_DOMAIN_EXPORT_PATH) { 125 return ( /epoc32/include/platform/$$1)143 return ($${epocroot_prefix}epoc32/include/platform/$$1) 126 144 } 127 145 defineReplace(OS_LAYER_PLATFORM_EXPORT_PATH) { 128 return ( /epoc32/include/platform/$$1)146 return ($${epocroot_prefix}epoc32/include/platform/$$1) 129 147 } 130 148 … … 153 171 154 172 APP_LAYER_SYSTEMINCLUDE = \ 155 /epoc32/include \156 /epoc32/include/mw \157 /epoc32/include/platform/mw \158 /epoc32/include/platform \159 /epoc32/include/app \160 /epoc32/include/platform/app \161 /epoc32/include/platform/loc \162 /epoc32/include/platform/mw/loc \163 /epoc32/include/platform/app/loc \164 /epoc32/include/platform/loc/sc \165 /epoc32/include/platform/mw/loc/sc \166 /epoc32/include/platform/app/loc/sc173 $${epocroot_prefix}epoc32/include \ 174 $${epocroot_prefix}epoc32/include/mw \ 175 $${epocroot_prefix}epoc32/include/platform/mw \ 176 $${epocroot_prefix}epoc32/include/platform \ 177 $${epocroot_prefix}epoc32/include/app \ 178 $${epocroot_prefix}epoc32/include/platform/app \ 179 $${epocroot_prefix}epoc32/include/platform/loc \ 180 $${epocroot_prefix}epoc32/include/platform/mw/loc \ 181 $${epocroot_prefix}epoc32/include/platform/app/loc \ 182 $${epocroot_prefix}epoc32/include/platform/loc/sc \ 183 $${epocroot_prefix}epoc32/include/platform/mw/loc/sc \ 184 $${epocroot_prefix}epoc32/include/platform/app/loc/sc 167 185 168 186 # This define statements defines the include paths, which are intended to be … … 172 190 173 191 MW_LAYER_SYSTEMINCLUDE = \ 174 /epoc32/include \175 /epoc32/include/mw \176 /epoc32/include/platform/mw \177 /epoc32/include/platform \178 /epoc32/include/platform/loc \179 /epoc32/include/platform/mw/loc \180 /epoc32/include/platform/loc/sc \181 /epoc32/include/platform/mw/loc/sc192 $${epocroot_prefix}epoc32/include \ 193 $${epocroot_prefix}epoc32/include/mw \ 194 $${epocroot_prefix}epoc32/include/platform/mw \ 195 $${epocroot_prefix}epoc32/include/platform \ 196 $${epocroot_prefix}epoc32/include/platform/loc \ 197 $${epocroot_prefix}epoc32/include/platform/mw/loc \ 198 $${epocroot_prefix}epoc32/include/platform/loc/sc \ 199 $${epocroot_prefix}epoc32/include/platform/mw/loc/sc 182 200 183 201 # This define statements defines the include paths, which are intended to be … … 187 205 188 206 OS_LAYER_SYSTEMINCLUDE = \ 189 /epoc32/include \190 /epoc32/include/platform \191 /epoc32/include/platform/loc \192 /epoc32/include/platform/loc/sc207 $${epocroot_prefix}epoc32/include \ 208 $${epocroot_prefix}epoc32/include/platform \ 209 $${epocroot_prefix}epoc32/include/platform/loc \ 210 $${epocroot_prefix}epoc32/include/platform/loc/sc 193 211 194 212 # This define statements defines the include paths, which are intended to be … … 199 217 200 218 OS_LAYER_KERNEL_SYSTEMINCLUDE = \ 201 /epoc32/include/platform219 $${epocroot_prefix}epoc32/include/platform 202 220 203 221 … … 238 256 239 257 defineReplace(APP_LAYER_SDK_EXPORT_PATH) { 240 return ( /epoc32/include/applications/$$1)258 return ($${epocroot_prefix}epoc32/include/applications/$$1) 241 259 } 242 260 defineReplace(APP_LAYER_PUBLIC_EXPORT_PATH) { 243 return ( /epoc32/include/applications/$$1)261 return ($${epocroot_prefix}epoc32/include/applications/$$1) 244 262 } 245 263 … … 249 267 250 268 defineReplace(APP_LAYER_DOMAIN_EXPORT_PATH) { 251 return ( /epoc32/include/domain/applications/$$1)269 return ($${epocroot_prefix}epoc32/include/domain/applications/$$1) 252 270 } 253 271 defineReplace(APP_LAYER_PLATFORM_EXPORT_PATH) { 254 return ( /epoc32/include/domain/applications/$$1)272 return ($${epocroot_prefix}epoc32/include/domain/applications/$$1) 255 273 } 256 274 … … 260 278 261 279 defineReplace(MW_LAYER_SDK_EXPORT_PATH) { 262 return ( /epoc32/include/middleware/$$1)280 return ($${epocroot_prefix}epoc32/include/middleware/$$1) 263 281 } 264 282 defineReplace(MW_LAYER_PUBLIC_EXPORT_PATH) { 265 return ( /epoc32/include/middleware/$$1)283 return ($${epocroot_prefix}epoc32/include/middleware/$$1) 266 284 } 267 285 … … 271 289 272 290 defineReplace(MW_LAYER_DOMAIN_EXPORT_PATH) { 273 return ( /epoc32/include/domain/middleware/$$1)291 return ($${epocroot_prefix}epoc32/include/domain/middleware/$$1) 274 292 } 275 293 defineReplace(MW_LAYER_PLATFORM_EXPORT_PATH) { 276 return ( /epoc32/include/domain/middleware/$$1)294 return ($${epocroot_prefix}epoc32/include/domain/middleware/$$1) 277 295 } 278 296 … … 282 300 283 301 defineReplace(OSEXT_LAYER_SDK_EXPORT_PATH) { 284 return ( /epoc32/include/osextensions/$$1)302 return ($${epocroot_prefix}epoc32/include/osextensions/$$1) 285 303 } 286 304 # WARNING: If the following path changes see the exists() function around line 430 287 305 defineReplace(OS_LAYER_PUBLIC_EXPORT_PATH) { 288 return ( /epoc32/include/osextensions/$$1)306 return ($${epocroot_prefix}epoc32/include/osextensions/$$1) 289 307 } 290 308 … … 294 312 295 313 defineReplace(OSEXT_LAYER_DOMAIN_EXPORT_PATH) { 296 return ( /epoc32/include/domain/osextensions/$$1)314 return ($${epocroot_prefix}epoc32/include/domain/osextensions/$$1) 297 315 } 298 316 defineReplace(OS_LAYER_PLATFORM_EXPORT_PATH) { 299 return ( /epoc32/include/domain/osextensions/$$1)317 return ($${epocroot_prefix}epoc32/include/domain/osextensions/$$1) 300 318 } 301 319 … … 324 342 325 343 APP_LAYER_SYSTEMINCLUDE = \ 326 /epoc32/include \327 /epoc32/include/oem \328 /epoc32/include/middleware \329 /epoc32/include/domain/middleware \330 /epoc32/include/osextensions \331 /epoc32/include/domain/osextensions \332 /epoc32/include/applications \333 /epoc32/include/domain/applications \334 /epoc32/include/domain/osextensions/loc \335 /epoc32/include/domain/middleware/loc \336 /epoc32/include/domain/applications/loc \337 /epoc32/include/domain/osextensions/loc/sc \338 /epoc32/include/domain/middleware/loc/sc \339 /epoc32/include/domain/applications/loc/sc344 $${epocroot_prefix}epoc32/include \ 345 $${epocroot_prefix}epoc32/include/oem \ 346 $${epocroot_prefix}epoc32/include/middleware \ 347 $${epocroot_prefix}epoc32/include/domain/middleware \ 348 $${epocroot_prefix}epoc32/include/osextensions \ 349 $${epocroot_prefix}epoc32/include/domain/osextensions \ 350 $${epocroot_prefix}epoc32/include/applications \ 351 $${epocroot_prefix}epoc32/include/domain/applications \ 352 $${epocroot_prefix}epoc32/include/domain/osextensions/loc \ 353 $${epocroot_prefix}epoc32/include/domain/middleware/loc \ 354 $${epocroot_prefix}epoc32/include/domain/applications/loc \ 355 $${epocroot_prefix}epoc32/include/domain/osextensions/loc/sc \ 356 $${epocroot_prefix}epoc32/include/domain/middleware/loc/sc \ 357 $${epocroot_prefix}epoc32/include/domain/applications/loc/sc 340 358 341 359 # This define statements defines the include paths, which are intended to be … … 345 363 346 364 MW_LAYER_SYSTEMINCLUDE = \ 347 /epoc32/include \348 /epoc32/include/oem \349 /epoc32/include/middleware \350 /epoc32/include/domain/middleware \351 /epoc32/include/osextensions \352 /epoc32/include/domain/osextensions \353 /epoc32/include/domain/osextensions/loc \354 /epoc32/include/domain/middleware/loc \355 /epoc32/include/domain/osextensions/loc/sc \356 /epoc32/include/domain/middleware/loc/sc365 $${epocroot_prefix}epoc32/include \ 366 $${epocroot_prefix}epoc32/include/oem \ 367 $${epocroot_prefix}epoc32/include/middleware \ 368 $${epocroot_prefix}epoc32/include/domain/middleware \ 369 $${epocroot_prefix}epoc32/include/osextensions \ 370 $${epocroot_prefix}epoc32/include/domain/osextensions \ 371 $${epocroot_prefix}epoc32/include/domain/osextensions/loc \ 372 $${epocroot_prefix}epoc32/include/domain/middleware/loc \ 373 $${epocroot_prefix}epoc32/include/domain/osextensions/loc/sc \ 374 $${epocroot_prefix}epoc32/include/domain/middleware/loc/sc 357 375 358 376 # This define statements defines the include paths, which are intended to be … … 362 380 363 381 OS_LAYER_SYSTEMINCLUDE = \ 364 /epoc32/include \365 /epoc32/include/oem \366 /epoc32/include/osextensions \367 /epoc32/include/domain/osextensions \368 /epoc32/include/domain/osextensions/loc \369 /epoc32/include/domain/osextensions/loc/sc382 $${epocroot_prefix}epoc32/include \ 383 $${epocroot_prefix}epoc32/include/oem \ 384 $${epocroot_prefix}epoc32/include/osextensions \ 385 $${epocroot_prefix}epoc32/include/domain/osextensions \ 386 $${epocroot_prefix}epoc32/include/domain/osextensions/loc \ 387 $${epocroot_prefix}epoc32/include/domain/osextensions/loc/sc 370 388 371 389 # This define statements defines the include paths, which are intended to be … … 376 394 377 395 OS_LAYER_KERNEL_SYSTEMINCLUDE = \ 378 /epoc32/include/oem \379 /epoc32/include/osextensions \380 /epoc32/include/domain/osextensions396 $${epocroot_prefix}epoc32/include/oem \ 397 $${epocroot_prefix}epoc32/include/osextensions \ 398 $${epocroot_prefix}epoc32/include/domain/osextensions 381 399 382 400 … … 388 406 OS_LAYER_LIBC_SYSTEMINCLUDE = $$OS_LAYER_PUBLIC_EXPORT_PATH(stdapis) \ 389 407 $$OS_LAYER_PUBLIC_EXPORT_PATH(stdapis/sys) \ 390 /epoc32/include/stdapis \391 /epoc32/include/stdapis/sys408 $${epocroot_prefix}epoc32/include/stdapis \ 409 $${epocroot_prefix}epoc32/include/stdapis/sys 392 410 393 411 OS_LAYER_GLIB_SYSTEMINCLUDE = $$OS_LAYER_PUBLIC_EXPORT_PATH(stdapis/glib-2.0) \ 394 412 $$OS_LAYER_PUBLIC_EXPORT_PATH(stdapis/glib-2.0/glib) \ 395 413 $$OS_LAYER_PUBLIC_EXPORT_PATH(stdapis/glib-2.0/gObject) \ 396 /epoc32/include/stdapis/glib-2.0 \397 /epoc32/include/stdapis/glib-2.0/glib \398 /epoc32/include/stdapis/glib-2.0/gObject414 $${epocroot_prefix}epoc32/include/stdapis/glib-2.0 \ 415 $${epocroot_prefix}epoc32/include/stdapis/glib-2.0/glib \ 416 $${epocroot_prefix}epoc32/include/stdapis/glib-2.0/gObject 399 417 400 418 OS_LAYER_SSL_SYSTEMINCLUDE = $$OS_LAYER_PUBLIC_EXPORT_PATH(stdapis/openssl) \ 401 /epoc32/include/stdapis/openssl419 $${epocroot_prefix}epoc32/include/stdapis/openssl 402 420 403 421 # stlportv5 is preferred over stlport as it has the throwing version of operator new 404 422 OS_LAYER_STDCPP_SYSTEMINCLUDE = $$OS_LAYER_PUBLIC_EXPORT_PATH(stdapis/stlportv5) \ 405 /epoc32/include/stdapis/stlportv5423 $${epocroot_prefix}epoc32/include/stdapis/stlportv5 406 424 exists($${EPOCROOT}epoc32/include/osextensions/stdapis/stlport) \ 407 425 |exists($${EPOCROOT}epoc32/include/stdapis/stlport) { … … 409 427 :!exists($${EPOCROOT}epoc32/include/stdapis/stlportv5) { 410 428 OS_LAYER_STDCPP_SYSTEMINCLUDE = $$OS_LAYER_PUBLIC_EXPORT_PATH(stdapis/stlport) \ 411 /epoc32/include/stdapis/stlport429 $${epocroot_prefix}epoc32/include/stdapis/stlport 412 430 } 413 431 } 414 432 415 433 OS_LAYER_BOOST_SYSTEMINCLUDE = $$OS_LAYER_PUBLIC_EXPORT_PATH(stdapis/boost) \ 416 /epoc32/include/stdapis/boost434 $${epocroot_prefix}epoc32/include/stdapis/boost 417 435 418 436 OS_LAYER_DBUS_SYSTEMINCLUDE = $$OS_LAYER_PUBLIC_EXPORT_PATH(stdapis/dbus-1.0) \ 419 437 $$OS_LAYER_PUBLIC_EXPORT_PATH(stdapis/dbus-1.0/dbus) \ 420 /epoc32/include/stdapis/dbus-1.0 \421 /epoc32/include/stdapis/dbus-1.0/dbus438 $${epocroot_prefix}epoc32/include/stdapis/dbus-1.0 \ 439 $${epocroot_prefix}epoc32/include/stdapis/dbus-1.0/dbus 422 440 423 441 OS_LAYER_LIBUTILITY_SYSTEMINCLUDE = $$OS_LAYER_PLATFORM_EXPORT_PATH(stdapis/utility) \ 424 /epoc32/include/stdapis/utility442 $${epocroot_prefix}epoc32/include/stdapis/utility 425 443 426 444 } … … 434 452 435 453 defineReplace(CORE_APP_LAYER_IBY_EXPORT_PATH) { 436 return( /epoc32/rom/include/core/app/$$1)454 return($${epocroot_prefix}epoc32/rom/include/core/app/$$1) 437 455 } 438 456 defineReplace(CORE_MW_LAYER_IBY_EXPORT_PATH) { 439 return( /epoc32/rom/include/core/mw/$$1)457 return($${epocroot_prefix}epoc32/rom/include/core/mw/$$1) 440 458 } 441 459 442 460 defineReplace(LANGUAGE_APP_LAYER_IBY_EXPORT_PATH) { 443 return( /epoc32/rom/include/language/app/$$1)461 return($${epocroot_prefix}epoc32/rom/include/language/app/$$1) 444 462 } 445 463 defineReplace(LANGUAGE_MW_LAYER_IBY_EXPORT_PATH) { 446 return( /epoc32/rom/include/language/mw/$$1)464 return($${epocroot_prefix}epoc32/rom/include/language/mw/$$1) 447 465 } 448 466 449 467 defineReplace(CUSTOMER_APP_LAYER_IBY_EXPORT_PATH) { 450 return( /epoc32/rom/include/customer/app/$$1)468 return($${epocroot_prefix}epoc32/rom/include/customer/app/$$1) 451 469 } 452 470 defineReplace(CUSTOMER_MW_LAYER_IBY_EXPORT_PATH) { 453 return( /epoc32/rom/include/customer/mw/$$1)471 return($${epocroot_prefix}epoc32/rom/include/customer/mw/$$1) 454 472 } 455 473 456 474 defineReplace(CUSTOMER_VARIANT_APP_LAYER_IBY_EXPORT_PATH) { 457 return( /epoc32/rom/include/customervariant/app/$$1)475 return($${epocroot_prefix}epoc32/rom/include/customervariant/app/$$1) 458 476 } 459 477 defineReplace(CUSTOMER_VARIANT_MW_LAYER_IBY_EXPORT_PATH) { 460 return( /epoc32/rom/include/customervariant/mw/$$1)478 return($${epocroot_prefix}epoc32/rom/include/customervariant/mw/$$1) 461 479 } 462 480 … … 467 485 STLLIB_USAGE_DEFINES = _WCHAR_T_DECLARED 468 486 487 # Smart prepend of EPOCROOT to a string 488 defineReplace(prependEpocroot) { 489 contains(1, ^$${EPOCROOT}) { 490 return($$1) 491 } else { 492 return($${EPOCROOT}$$replace(1,"^/",)) 493 } 494 } 495 469 496 } 470 471 472  - 
      
trunk/mkspecs/features/symbian/qt.prf
r769 r846 26 26 # while self-signed version typically has temporary UID3 of 0xE001E61C. 27 27 contains(CONFIG, qt):!contains(TARGET.UID3, 0x2001E61C):!contains(TARGET.UID3, 0xE001E61C):isEmpty(QT_LIBINFIX) { 28 qt_pkg_name = Qt 28 29 pkg_depends_qt += \ 29 30 "; Default dependency to Qt libraries" \ 30 "(0x2001E61C), $${QT_MAJOR_VERSION}, $${QT_MINOR_VERSION}, $${QT_PATCH_VERSION}, {\"Qt\"}"31 "(0x2001E61C), $${QT_MAJOR_VERSION}, $${QT_MINOR_VERSION}, $${QT_PATCH_VERSION}, {$$addLanguageDependentPkgItem(qt_pkg_name)}" 31 32 32 33 # Projects linking to webkit need dependency to webkit … … 39 40 } 40 41 42 webkit_pkg_name = QtWebKit 41 43 pkg_depends_webkit += \ 42 44 "; Dependency to Qt Webkit" \ 43 "(0x200267C2), $${QT_WEBKIT_MAJOR_VERSION}, $${QT_WEBKIT_MINOR_VERSION}, $${QT_WEBKIT_PATCH_VERSION}, {\"QtWebKit\"}"45 "(0x200267C2), $${QT_WEBKIT_MAJOR_VERSION}, $${QT_WEBKIT_MINOR_VERSION}, $${QT_WEBKIT_PATCH_VERSION}, {$$addLanguageDependentPkgItem(webkit_pkg_name)}" 44 46 } else { 45 47 default_deployment.pkg_prerules -= pkg_depends_webkit … … 51 53 isEmpty(TARGET.EPOCSTACKSIZE):TARGET.EPOCSTACKSIZE = 0x14000 52 54 isEmpty(TARGET.EPOCHEAPSIZE):TARGET.EPOCHEAPSIZE = 0x020000 0x800000 55 56 # Workaround for the fact that Gnupoc and Symbian chose different approaches to 57 # the letter casing of headers. 58 contains(CONFIG, is_using_gnupoc) { 59 INCLUDEPATH += $${PWD}/../../common/symbian/header-wrappers 60 }  - 
      
trunk/mkspecs/features/symbian/stl.prf
r769 r846 13 13 # Remove mkspecs/common/symbian/stl-off from beginning of includepath 14 14 # in order to use new and delete operators from STL 15 INCLUDEPATH -= $$[QT_INSTALL_ PREFIX]/mkspecs/common/symbian/stl-off15 INCLUDEPATH -= $$[QT_INSTALL_DATA]/mkspecs/common/symbian/stl-off 16 16 17 17 # libstdcppv5 is preferred over libstdcpp as it has/uses the throwing version of operator new 18 STL_LIB = -llibstdcppv5.dll19 20 18 # STDCPP turns on standard C++ new behaviour (ie. throwing new) 21 STL_MMP_RULE = "STDCPP" 19 use_libstdcppv5 = true 22 20 23 21 # Fall back to old implementation if that is the only one that is found 24 exists($${EPOCROOT}epoc32/release/armv5/urel/libstdcpp.dll)|exists($${EPOCROOT}epoc32/release/winscw/udeb/libstdcpp.dll) { 25 !exists($${EPOCROOT}epoc32/release/armv5/urel/libstdcppv5.dll):!exists($${EPOCROOT}epoc32/release/winscw/udeb/libstdcppv5.dll) { 26 STL_LIB = -llibstdcpp.dll 27 STL_MMP_RULE = 22 exists($${EPOCROOT}epoc32/release/armv5/lib/libstdcpp.dso)|exists($${EPOCROOT}epoc32/release/winscw/udeb/libstdcpp.dll) { 23 !exists($${EPOCROOT}epoc32/release/armv5/lib/libstdcppv5.dso):!exists($${EPOCROOT}epoc32/release/winscw/udeb/libstdcppv5.dll) { 24 use_libstdcppv5 = false 28 25 } 29 26 } 30 27 31 LIBS *= $$STL_LIB 32 MMP_RULES *= $$STL_MMP_RULE 28 equals(use_libstdcppv5, true) { 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 } 39 40 # use the runtime support for nested exceptions, if a library is available 41 exists($${EPOCROOT}epoc32/release/armv5/urel/usrt_nx_*.lib) { 42 CONFIG += nested_exceptions 43 }  
  Note:
 See   TracChangeset
 for help on using the changeset viewer.
  