gcc.xml 5.1 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113
  1. <?xml version="1.0" encoding="ISO-8859-1"?>
  2. <build xmlns="http://symbian.com/xml/build" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://symbian.com/xml/build ../../schema/build/2_0.xsd">
  3. <!-- build variants for GCC toolchains -->
  4. <var name="tools2_base" extends="root">
  5. <varRef ref="default.interfaces"/>
  6. <varRef ref="default.locations"/>
  7. <!-- toolchain tools -->
  8. <env name='RANLIB' default='$(GCCPREFIX)ranlib$(DOTEXE)' type='tool'/>
  9. <env name='GCC' default='$(GCCPREFIX)g++$(DOTEXE)' type='tool'/>
  10. <env name='AR' default='$(GCCPREFIX)ar$(DOTEXE)' type='tool'/>
  11. <set name='COMPILER' value='$(GCC) -c' type='tool' versionCommand='$(GCC) -v' versionResult='gcc version (3.[456])|(4.[0-9])'/>
  12. <set name='LINKER' value='$(GCC)'/>
  13. <!-- tools and scripts -->
  14. <env name='JAVATC' default='$(JAVA_HOME)/bin/java' type='tool'/> <!-- Java used by Trace Compiler -->
  15. <env name='JAVA_HOME' default='' type='path'/>
  16. <!-- targettypes -->
  17. <set name="TARGET_TYPES" value="exe lib"/>
  18. <!-- interfaces -->
  19. <append name="INTERFACE_TYPES" value="$(TARGET_TYPES)"/>
  20. <set name="INTERFACE.exe" value="Tools.exe"/>
  21. <set name="INTERFACE.lib" value="Tools.lib"/>
  22. <!-- link to bld.inf and mmp platform names -->
  23. <set name='TRADITIONAL_PLATFORM' value='TOOLS2'/>
  24. <set name='CFLAGS' value='-static-libgcc -fdefer-pop -fmerge-constants -fthread-jumps -floop-optimize -fif-conversion -fif-conversion2 -fguess-branch-probability -fcprop-registers -foptimize-sibling-calls -fstrength-reduce -fcse-follow-jumps -fcse-skip-blocks -frerun-cse-after-loop -frerun-loop-opt -fgcse -fgcse-lm -fgcse-sm -fgcse-las -fdelete-null-pointer-checks -fexpensive-optimizations -fregmove -fschedule-insns -fschedule-insns2 -fsched-interblock -fsched-spec -fcaller-saves -fpeephole2 -freorder-blocks -freorder-functions -fstrict-aliasing -funit-at-a-time -falign-functions -falign-jumps -falign-loops -falign-labels -fcrossjumping -pipe -Wall -Wno-ctor-dtor-privacy -Wno-unknown-pragmas -m32'/>
  25. <set name='VARIANTPLATFORM' value='tools2'/>
  26. <set name='CFLAGS.WIN32' value=''/>
  27. <!-- macro definitions set by mmps etc -->
  28. <set name='CDEFS' value='$(MMPDEFS)'/>
  29. <set name='CDEFS.DEFAULT' value='__SYMBIAN32__ __TOOLS__ __TOOLS2__ __EXE__ __SUPPORT_CPP_EXCEPTIONS__ __PRODUCT_INCLUDE__="$(PRODUCT_INCLUDE)"'/>
  30. <set name='CDEFS.WIN32' value='$(CDEFS.DEFAULT) _WIN32 WIN32 _WINDOWS __TOOLS2_WINDOWS__'/>
  31. <set name='CDEFS.LINUX' value='$(CDEFS.DEFAULT) __LINUX__ __TOOLS2_LINUX__'/>
  32. <set name='PREINCLUDE' value='$(EPOCINCLUDE)/gcc_mingw/gcc_mingw.h'/>
  33. <set name='OPT.D' value='-D'/>
  34. <set name='OPT.L' value='-L'/>
  35. <set name='OPT.l' value='-l'/>
  36. <set name='OPT.O' value='-o '/>
  37. <set name='OPT.PREINCLUDE' value='-include '/>
  38. <set name='OPT.SYSTEMINCLUDE' value='-isystem '/>
  39. <set name='OPT.USERINCLUDE' value='-I '/>
  40. <!-- always use stlport headers; when the move to STLport 5.2 is made, the SBS_STLPORTINCDIR
  41. default should be updated to $(EPOCINCLUDE)/tools/stlport5.2 -->
  42. <env name='SBS_STLPORTINCDIR' default='$(EPOCINCLUDE)/tools/stlport' type='path'/>
  43. <set name='SYSTEMINCLUDE' value='$(SBS_STLPORTINCDIR)'/>
  44. <set name='LFLAGS' value=''/>
  45. <set name='STATICLIBRARY' value=''/>
  46. <set name='LIBS' value=''/>
  47. <set name='LIBS.WIN32' value='$(LIBS)'/>
  48. <set name='LIBS.LINUX' value='$(LIBS) pthread'/>
  49. <set name='PLATMACROS.WINDOWS' value='GCC32 TOOLS2 TOOLS2_WINDOWS'/>
  50. <set name='PLATMACROS.LINUX' value='GCC32 TOOLS2 TOOLS2_LINUX'/>
  51. <set name='ARCHIVER' value='$(AR)'/>
  52. <set name='AFLAGS' value='cr'/>
  53. <set name='MMPDEFS' value=''/>
  54. <set name='TARGET' value=''/>
  55. <set name='TARGETTYPE' value=''/>
  56. <set name='OUTPUTPATH' value='$(SBS_BUILD_DIR)'/>
  57. <env name='SBS_STLPORTBINDIR' default='$(EPOCROOT)/epoc32/release/tools2' host='win.*' type='path'/>
  58. <env name='SBS_STLPORTBINDIR' default='$(EPOCROOT)/epoc32/release/tools2/$(HOSTPLATFORM32_DIR)' host='lin.*' type='path'/>
  59. <set name='STLPORTBINDIR' value='$(SBS_STLPORTBINDIR)'/>
  60. <set name='STLPORTLIBRARY' value='stlport.5.1'/>
  61. <set name='RELEASEPATH' value='$(EPOCROOT)/epoc32/release/tools2' host='win.*' type='path'/>
  62. <!-- Tools are 32-bit at the moment, so use the 32-bit directory -->
  63. <set name='RELEASEPATH' value='$(EPOCROOT)/epoc32/release/tools2/$(HOSTPLATFORM32_DIR)' host='lin.*' type='path'/>
  64. </var>
  65. <var name="t_deb">
  66. <set name='TOOLSPATH' value=''/> <!-- do not install -->
  67. <set name='VARIANTTYPE' value='deb'/>
  68. <append name='CFLAGS' value='-g'/>
  69. <append name='CDEFS' value='_DEBUG'/>
  70. <append name='RELEASEPATH' value='/deb' separator=''/>
  71. <append name='STLPORTBINDIR' value='/deb' separator=''/>
  72. </var>
  73. <alias name="tools2_deb" meaning="tools2_base.t_deb"/>
  74. <var name="t_rel">
  75. <set name='TOOLSPATH' value='$(EPOCROOT)/epoc32/tools'/> <!-- install -->
  76. <set name='VARIANTTYPE' value='rel'/>
  77. <append name='CFLAGS' value='-s'/>
  78. <append name='CDEFS' value='NDEBUG'/>
  79. <append name='RELEASEPATH' value='/rel' separator=''/>
  80. <append name='STLPORTBINDIR' value='/rel' separator=''/>
  81. </var>
  82. <alias name="tools2_rel" meaning="tools2_base.t_rel"/>
  83. <group name="tools2">
  84. <aliasRef ref='tools2_rel'/>
  85. <aliasRef ref='tools2_deb'/>
  86. </group>
  87. </build>