mkspecs/common/symbian/symbian-mmp.conf
changeset 30 5dc02b23752f
child 33 3e2da88830cd
equal deleted inserted replaced
29:b72c6db6890b 30:5dc02b23752f
       
     1 #
       
     2 # qmake configuration for symbian-*
       
     3 #
       
     4 
       
     5 include(symbian.conf)
       
     6 
       
     7 contains(QMAKE_HOST.os, "Windows") {
       
     8     QMAKE_MOC       = $$[QT_INSTALL_BINS]$${DIR_SEPARATOR}moc.exe
       
     9     QMAKE_UIC       = $$[QT_INSTALL_BINS]$${DIR_SEPARATOR}uic.exe
       
    10     QMAKE_IDC       = $$[QT_INSTALL_BINS]$${DIR_SEPARATOR}idc.exe
       
    11 } else {
       
    12     QMAKE_MOC       = $$[QT_INSTALL_BINS]$${DIR_SEPARATOR}moc
       
    13     QMAKE_UIC       = $$[QT_INSTALL_BINS]$${DIR_SEPARATOR}uic
       
    14     QMAKE_IDC       = $$[QT_INSTALL_BINS]$${DIR_SEPARATOR}idc
       
    15 }
       
    16 
       
    17 load(symbian/add_mmp_rules)
       
    18 
       
    19 symbian-abld {
       
    20 # Versions of abld prior to Symbian^3 have a bug where you cannot remove something from the command line without replacing it
       
    21 # Rather than figure out which version of abld we're using, we'll replace the command with a macro *that should never be used*
       
    22     MMP_RULES_DONT_EXPORT_ALL_CLASS_IMPEDIMENTA = "OPTION_REPLACE ARMCC --export_all_vtbl -D__QT_NOEFFECTMACRO_DONOTUSE"
       
    23 } else {
       
    24     MMP_RULES_DONT_EXPORT_ALL_CLASS_IMPEDIMENTA = "OPTION_REPLACE ARMCC --export_all_vtbl // don't use --export_all_vtbl"
       
    25 }
       
    26 MMP_RULES += PAGED BYTEPAIRCOMPRESSTARGET
       
    27 MMP_RULES += $$MMP_RULES_DONT_EXPORT_ALL_CLASS_IMPEDIMENTA
       
    28 SYMBIAN_PLATFORMS = WINSCW GCCE ARMV5 ARMV6
       
    29 
       
    30 INCLUDEPATH = \
       
    31     $$[QT_INSTALL_PREFIX]/mkspecs/common/symbian/stl-off \
       
    32     $$[QT_INSTALL_PREFIX]/mkspecs/common/symbian \
       
    33     $${EPOCROOT}epoc32/include \
       
    34     $$OS_LAYER_LIBC_SYSTEMINCLUDE \
       
    35     $$MW_LAYER_SYSTEMINCLUDE \
       
    36     $$INCLUDEPATH
       
    37 
       
    38 # Ensure '.' directory is the first in include path.
       
    39 # RVCT seems to do this automatically, but WINSCW compiler does not, so add it here.
       
    40 MMP_RULES += "USERINCLUDE ."
       
    41 
       
    42 exists($${EPOCROOT}epoc32/release/winscw/udeb/z/system/install/series60v5.0.sis )|exists($${EPOCROOT}epoc32/data/z/system/install/series60v5.0.sis) {
       
    43     S60_VERSION = 5.0
       
    44 } else {
       
    45     exists($${EPOCROOT}epoc32/release/winscw/udeb/z/system/install/series60v3.2.sis )|exists($${EPOCROOT}epoc32/data/z/system/install/series60v3.2.sis) {
       
    46         S60_VERSION = 3.2
       
    47     } else {
       
    48         S60_VERSION = 3.1
       
    49         MMP_RULES -= PAGED BYTEPAIRCOMPRESSTARGET
       
    50     }
       
    51 }
       
    52 
       
    53 QMAKE_CXXFLAGS_FAST_VFP.ARMCC = --fpmode fast
       
    54 # [TODO] QMAKE_CXXFLAGS_FAST_VFP.GCCE =
       
    55 
       
    56 symbian {
       
    57     armfpu = $$find(MMP_RULES, "ARMFPU")
       
    58     !isEmpty(armfpu) {
       
    59         vfpv2 = $$find(MMP_RULES, "vfpv2")
       
    60         !isEmpty(vfpv2) {
       
    61             # we will respect fpu setting obtained from configure, but,
       
    62             # if vfpv2 or softvfp+vfpv2 used we want to force RunFast VFP mode
       
    63             QMAKE_CXXFLAGS.ARMCC += $${QMAKE_CXXFLAGS_FAST_VFP.ARMCC}
       
    64             # [TODO] QMAKE_CXXFLAGS.GCCE += $${QMAKE_CXXFLAGS_FAST_VFP.GCCE}
       
    65         }
       
    66     }
       
    67 }