src/qbase.pri
branchRCL_3
changeset 5 d3bac044e0f0
parent 4 3b1da2848fc7
child 8 3f74d0d4af4c
equal deleted inserted replaced
4:3b1da2848fc7 5:d3bac044e0f0
    93     CONFIG += headerexport symbian_no_export_sqlite
    93     CONFIG += headerexport symbian_no_export_sqlite
    94     shared {
    94     shared {
    95         DEFINES+=QT_MAKEDLL
    95         DEFINES+=QT_MAKEDLL
    96         TARGET.CAPABILITY = All -Tcb
    96         TARGET.CAPABILITY = All -Tcb
    97 
    97 
    98         defBlock = \
    98         # When building without autotests, DEF files are used by default.
    99         "$${LITERAL_HASH}ifdef WINSCW" \
    99         # This is to maintain binary compatibility with previous releases.
   100         "DEFFILE ../s60installs/bwins/$${TARGET}.def" \
   100         # To explicitly disable DEF files usage, eg. when lots of code churn is
   101         "$${LITERAL_HASH}elif defined EABI" \
   101         # going on, and functions may be added and removed before shipping, 
   102         "DEFFILE ../s60installs/eabi/$${TARGET}.def" \
   102         # configure with -no-usedeffiles
   103         "$${LITERAL_HASH}endif"
   103         # WARNING - disabling DEF files *will* break BC with previous released versions 
   104 
   104         # of Qt, and the only compatibility will be between this build of Qt and anything 
   105         contains(QT_CONFIG, private_tests) {
   105         # built in this exact environment.  *Never* use this when building a version 
   106             #When building autotest configuration, there are extra exports from
   106         # for release.
   107             #the Qt DLLs, which we don't want in the frozen DEF files.
   107         contains(CONFIG, def_files) {
   108             MMP_RULES += EXPORTUNFROZEN
   108             defFilePath=../s60installs
   109         } else {
       
   110             #When building without autotests, DEF files are used by default.
       
   111             #This is to maintain binary compatibility with previous releases.
       
   112             
       
   113             #with defBlock enabled, removed exported symbols are treated as errors
       
   114             #and there is binary compatibility between successive builds.
       
   115             #with defBlock disabled, binary compatibility is broken every time you build
       
   116             MMP_RULES += defBlock
       
   117 
       
   118             #with EXPORTUNFROZEN enabled, new exports are included in the dll without
       
   119             #needing to run abld freeze, however binary compatibility is only maintained
       
   120             #for symbols that are frozen (and only if defBlock is also enabled)
       
   121             #the downside of EXPORTUNFROZEN is that the linker gets run twice
       
   122             #MMP_RULES += EXPORTUNFROZEN
       
   123         }
   109         }
   124     }
   110     }
   125     load(armcc_warnings)
   111     load(armcc_warnings)
   126 }
   112 }
   127 win32-borland:INCLUDEPATH += kernel
   113 win32-borland:INCLUDEPATH += kernel