123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333 |
- <?xml version="1.0" encoding="ISO-8859-1"?>
- <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">
- <!-- Commonly used variants.
- These can be referenced from the command-line or in configurations.
- -->
- <!-- This variant enables building win32 tools in Linux. Tools2 on Linux only -->
- <var name="win32">
- <set name='TOOLS2WIN32' value='1'/>
- <env name='SBS_MINGW_LINUX_BIN' default='/usr/bin'/>
- <env name='SBS_MINGW_LINUX_PREFIX' default='i586-mingw32msvc'/>
- <env name='GCC' default='$(SBS_MINGW_LINUX_BIN)/$(SBS_MINGW_LINUX_PREFIX)-g++' type='tool'/>
- <env name='ARCHIVER' default='$(SBS_MINGW_LINUX_BIN)/$(SBS_MINGW_LINUX_PREFIX)-ar' type='tool'/>
- <env name='RANLIB' default='$(SBS_MINGW_LINUX_BIN)/$(SBS_MINGW_LINUX_PREFIX)-ranlib' type='tool'/>
- <env name='SBS_STLPORTINCDIR_WIN32' default='$(EPOCINCLUDE)/tools/stlport' type='path'/>
- <env name='SBS_STLPORTBINDIR_WIN32' default='$(EPOCROOT)/epoc32/release/tools2' type='path'/>
- <set name='STLPORTBINDIR' value='$(SBS_STLPORTBINDIR_WIN32)/$(VARIANTTYPE)'/>
- <set name='SYSTEMINCLUDE' value='$(SBS_STLPORTINCDIR_WIN32)'/>
- <set name='RELEASEPATH' value='$(EPOCROOT)/epoc32/release/tools2/$(VARIANTTYPE)'/>
- <set name='DOTEXE' value='.exe'/>
- <set name='PLATMACROS.LINUX' value='$(PLATMACROS.WINDOWS)'/>
- </var>
-
- <!-- This variant enables STLport v 5.2 for tools2 builds - it is not needed to build STLport
- itself but only tools that link against it. -->
- <var name="stlport5_2">
- <set name='STLPORTLIBRARY' value='stlport.5.2'/>
- <env name='SBS_STLPORTINCDIR' default='$(EPOCINCLUDE)/tools/stlport5.2' type='path'/>
- <env name='SBS_STLPORTINCDIR_WIN32' default='$(EPOCINCLUDE)/tools/stlport5.2' type='path' host='lin.*'/>
- </var>
-
- <!-- This variant enables STLport v 5.1 for tools2 builds - it is not needed to build STLport
- itself but only tools that link against it; this will be useful when STLport 5.2 is the
- default STLport version in tools2 builds. -->
- <var name="stlport5_1">
- <set name='STLPORTLIBRARY' value='stlport.5.1'/>
- <env name='SBS_STLPORTINCDIR' default='$(EPOCINCLUDE)/tools/stlport' type='path'/>
- <env name='SBS_STLPORTINCDIR_WIN32' default='$(EPOCINCLUDE)/tools/stlport' type='path' host='lin.*'/>
- </var>
- <!-- This variant turns debug info on for arm only -->
- <var name="debug_info">
- <set name='DEBUG_INFO' value='1'/>
- </var>
- <!-- Run this variant to turn on trace compiler -->
- <var name="tracecompiler">
- <set name='USE_TRACE_COMPILER' value='1'/>
- <env name='JAVA_HOME' default='' type='path'/>
- <env name='SBS_JAVATC' default='$(JAVA_HOME)/bin/java.exe' type='tool' versionCommand='$(SBS_JAVATC) -version' versionResult='version \"1\.[5-9]' host='win*' />
- <env name='SBS_JAVATC' default='$(JAVA_HOME)/bin/java' type='tool' versionCommand='$(SBS_JAVATC) -version' versionResult='version \"1\.[5-9]' host='lin*' />
- </var>
- <!-- Overrides the default debugging format for the ARM targets. -->
- <var name="dwarf3">
- <set name="DEBUG_FORMAT" value="$(CC.DWARF3)"/>
- </var>
- <var name="techview">
- </var>
- <var name="test">
- <set name='TESTCODE' value='TRUE'/>
- </var>
- <var name="savespace">
- <set name='SAVESPACE' value='TRUE'/>
- </var>
-
- <!-- This variant triggers linker feedback file generation, and its subsequent
- use in compilation, with toolchains that support the functionality -->
- <var name="linkerfeedback">
- <set name='LINKERFEEDBACK' value='TRUE'/>
- </var>
- <var name="profilerfeedback">
- <set name='USE_PROFILER_FEEDBACK' value='TRUE'/>
- <env name='ARM_PROFILER_FILE' default='' type='path'/>
- </var>
- <var name="ltcg">
- <set name='LTCG' value='TRUE'/>
- <set name='LTCG_OPTION' value='--ltcg'/>
- </var>
- <var name="multifile">
- <set name='MULTIFILE_ENABLED' value='TRUE'/>
- </var>
- <!-- build from clean can skip some processing -->
- <var name="bfc">
- <set name='DEPEND_SKIP' value='TRUE'/>
- </var>
- <!-- SMP variant for Kernel Code -->
- <var name="smp">
- <append name="CDEFS" value="__SMP__"/>
- <append name="PLATMACROS.WINDOWS" value="SMP"/>
- <!-- PLATMACROS.LINUX is set from PLATMACROS.WINDOWS -->
- <append name="TRADITIONAL_PLATFORM" value='SMP' separator="" />
- <append name="VARIANTPLATFORM" value="smp" separator=""/>
- <set name="SUPPORTS_ABIV1_IMPLIBS" value=""/>
- </var>
- <!-- emit formatted releasable information into the logs for post-build parsing -->
- <var name="whatlog">
- <set name='WHATLOG' value='TRUE'/>
- </var>
- <var name="gcce4_3_2" extends="gcce_base">
- <env name="SBS_GCCE432BIN" type="toolchainpath" />
- <set name="GCCEBIN" value="$(SBS_GCCE432BIN)" />
- <set name="GCCECC" value="$(GCCEBIN)/arm-none-symbianelf-g++$(DOTEXE)" type="tool" versionCommand="$(GCCECC) -dumpversion" versionResult="4.3.2"/>
- <set name="RUNTIME_LIBS_LIST" value="drtaeabi.dso dfpaeabi.dso dfprvct3_1.dso drtrvct3_1.dso"/>
- <set name="PLATMACROS.VAR" value="GCCE_4 GCCE_4_3"/>
- <set name="ARMMACROS.VAR" value="__GCCE_4__ __GCCE_4_3__"/>
- </var>
- <var name="gcce4_3_3" extends="gcce_base">
- <env name="SBS_GCCE433BIN" type="toolchainpath" />
- <set name="GCCEBIN" value="$(SBS_GCCE433BIN)" />
- <set name="GCCECC" value="$(GCCEBIN)/arm-none-symbianelf-g++$(DOTEXE)" type="tool" versionCommand="$(GCCECC) -dumpversion" versionResult="4.3.3"/>
- <set name="RUNTIME_LIBS_LIST" value="drtaeabi.dso dfpaeabi.dso dfprvct3_1.dso drtrvct3_1.dso"/>
- <set name="PLATMACROS.VAR" value="GCCE_4 GCCE_4_3"/>
- <set name="ARMMACROS.VAR" value="__GCCE_4__ __GCCE_4_3__"/>
- </var>
- <var name="gcce4_4_1" extends="gcce_base">
- <env name="SBS_GCCE441BIN" type="toolchainpath" />
- <set name="GCCEBIN" value="$(SBS_GCCE441BIN)" />
- <set name="GCCECC" value="$(GCCEBIN)/arm-none-symbianelf-g++$(DOTEXE)" type="tool" versionCommand="$(GCCECC) -dumpversion" versionResult="4.4.1"/>
- <set name="RUNTIME_LIBS_LIST" value="drtaeabi.dso dfpaeabi.dso"/>
- <set name="PLATMACROS.VAR" value="GCCE_4 GCCE_4_4"/>
- <set name="ARMMACROS.VAR" value="__GCCE_4__ __GCCE_4_4__"/>
- </var>
- <var name="gcce4_5_1" extends="gcce_base">
- <env name="SBS_GCCE451BIN" type="toolchainpath" />
- <set name="GCCEBIN" value="$(SBS_GCCE451BIN)" />
- <set name="GCCECC" value="$(GCCEBIN)/arm-none-symbianelf-g++$(DOTEXE)" type="tool" versionCommand="$(GCCECC) -dumpversion" versionResult="4.5.1"/>
- <set name="RUNTIME_LIBS_LIST" value="drtaeabi.dso dfpaeabi.dso"/>
- <set name="PLATMACROS.VAR" value="GCCE_4 GCCE_4_5"/>
- <set name="ARMMACROS.VAR" value="__GCCE_4__ __GCCE_4_5__"/>
- <set name="LINKER_DEFAULT_LIBS" value="-lsupc++ -lgcc -lgcc_eh"/>
- <set name="KERNEL_STATIC_RUNTIME_LIB" value="ksrt4_0.lib"/>
- <set name="USER_STATIC_RUNTIME_LIB" value="usrt4_0.lib"/>
- <set name="USER_STATIC_RUNTIME_LIB_NESTED_EXCEPTIONS" value="usrt_nx_4_0.lib"/>
- </var>
- <var name="rvct2_2" extends="rvct_base">
- <env name="RVCT22BIN" type="toolchainpath"/>
- <env name="RVCT22INC" type="toolchainpath"/>
- <env name="RVCT22LIB" type="toolchainpath"/>
- <set name="RVCTBIN" value="$(RVCT22BIN)"/>
- <set name="RVCTINC" value="$(RVCT22INC)"/>
- <set name="RVCTLIB" value="$(RVCT22LIB)"/>
- <set name="ARMCC" value="$(RVCTBIN)/armcc$(DOTEXE)" type="tool" versionCommand="$(ARMCC) --vsn" versionResult="Compiler, RVCT2\.2\b"/>
- <set name="OWN_LIBRARY_OPTION" value="-Ono_known_library"/>
- <set name="RELOCATABLE_IMAGE_OPTION" value="--reloc"/>
- <set name="SPLIT_OPTION" value="--split"/>
- <set name="PLATMACROS.VAR" value="ARMCC_2 ARMCC_2_2"/>
- <set name="ARMMACROS.VAR" value="__ARMCC_2__ __ARMCC_2_2__"/>
- <set name="SYMBIAN_LINK_FLAGS.VAR" value=""/>
- <set name="STATIC_LIBS_LIST" value="h_t__uf.l(switch8.o)"/>
- <set name="RUNTIME_LIBS_LIST" value="drtaeabi.dso dfpaeabi.dso dfprvct2_2.dso drtrvct2_2.dso"/>
- <set name="USER_STATIC_RUNTIME_LIB" value="usrt2_2.lib"/>
- <set name="USER_STATIC_RUNTIME_LIB_NESTED_EXCEPTIONS" value="usrt_nx_2_2.lib"/>
- <set name="KERNEL_STATIC_RUNTIME_LIB" value="ksrt2_2.lib"/>
- <set name="NEED_ENTRYPOINT_LIBRARY" value=""/>
- <set name="CC.NO_UNALIGNED_ACCESS" value="--memaccess -UL41"/>
- <set name="CC.SOFTVFP_MAYBE_VFPV2" value="softvfp"/>
- <set name="PL.SOFTVFP_MAYBE_VFPV2" value="softvfp"/>
- <set name="CC.ARMV5" value="--cpu 5T"/>
- <set name="USE_RVCT22_DELETE_WORKAROUND" value="1" />
- </var>
- <var name="rvct3_1" extends="rvct_base">
- <env name="RVCT31BIN" type="toolchainpath"/>
- <env name="RVCT31INC" type="toolchainpath"/>
- <env name="RVCT31LIB" type="toolchainpath"/>
- <set name="RVCTBIN" value="$(RVCT31BIN)"/>
- <set name="RVCTINC" value="$(RVCT31INC)"/>
- <set name="RVCTLIB" value="$(RVCT31LIB)"/>
- <set name="ARMCC" value="$(RVCTBIN)/armcc$(DOTEXE)" type="tool" versionCommand="$(ARMCC) --version_number" versionResult="310[6-9]\d\d\b"/>
- <set name="PLATMACROS.VAR" value="ARMCC_3 ARMCC_3_1"/>
- <set name="ARMMACROS.VAR" value="__ARMCC_3__ __ARMCC_3_1__"/>
- <set name="SYMBIAN_LINK_FLAGS.VAR" value="--export_all"/>
- <set name="STATIC_LIBS_LIST" value="h_5.l"/>
- <set name="RUNTIME_LIBS_LIST" value="drtaeabi.dso dfpaeabi.dso dfprvct3_1.dso drtrvct3_1.dso"/>
- <set name="USER_STATIC_RUNTIME_LIB" value="usrt3_1.lib"/>
- <set name="USER_STATIC_RUNTIME_LIB_NESTED_EXCEPTIONS" value="usrt_nx_3_1.lib"/>
- <set name="KERNEL_STATIC_RUNTIME_LIB" value="ksrt3_1.lib"/>
- <set name="CC.SOFTVFP_MAYBE_VFPV2" value="softvfp"/>
- <set name="PL.SOFTVFP_MAYBE_VFPV2" value="softvfp"/>
- <set name="CC.SOFTVFP_MAYBE_VFPV3" value="softvfp"/>
- <set name="PL.SOFTVFP_MAYBE_VFPV3" value="softvfp"/>
- </var>
- <var name="rvct4_0" extends="rvct_base">
- <env name="RVCT40BIN" type="toolchainpath"/>
- <env name="RVCT40INC" type="toolchainpath"/>
- <env name="RVCT40LIB" type="toolchainpath"/>
- <set name="RVCTBIN" value="$(RVCT40BIN)"/>
- <set name="RVCTINC" value="$(RVCT40INC)"/>
- <set name="RVCTLIB" value="$(RVCT40LIB)"/>
- <set name="ARMCC" value="$(RVCTBIN)/armcc$(DOTEXE)" type="tool" versionCommand="$(ARMCC) --version_number" versionResult="400[4-9]\d\d\b"/>
- <set name="PLATMACROS.VAR" value="ARMCC_4 ARMCC_4_0"/>
- <set name="ARMMACROS.VAR" value="__ARMCC_4__ __ARMCC_4_0__"/>
- <set name="SYMBIAN_LINK_FLAGS.VAR" value="--override_visibility $(LINKER_INLINE_OPTION)"/>
- <set name="RUNTIME_LIBS_LIST" value="drtaeabi.dso dfpaeabi.dso"/>
- <set name="USER_STATIC_RUNTIME_LIB" value="usrt4_0.lib"/>
- <set name="USER_STATIC_RUNTIME_LIB_NESTED_EXCEPTIONS" value="usrt_nx_4_0.lib"/>
- <set name="KERNEL_STATIC_RUNTIME_LIB" value="ksrt4_0.lib"/>
- </var>
- <var name="rvct4_1" extends="rvct_base">
- <env name="ARMCC41BIN" type="toolchainpath"/>
- <env name="ARMCC41INC" type="toolchainpath"/>
- <env name="ARMCC41LIB" type="toolchainpath"/>
- <set name="RVCTBIN" value="$(ARMCC41BIN)"/>
- <set name="RVCTINC" value="$(ARMCC41INC)"/>
- <set name="RVCTLIB" value="$(ARMCC41LIB)"/>
- <set name="ARMCC" value="$(RVCTBIN)/armcc$(DOTEXE)" type="tool" versionCommand="$(ARMCC) --vsn" versionResult="Compiler, 4\.1\b"/>
- <set name="PLATMACROS.VAR" value="ARMCC_4 ARMCC_4_1"/>
- <set name="ARMMACROS.VAR" value="__ARMCC_4__ __ARMCC_4_1__"/>
- <set name="SYMBIAN_LINK_FLAGS.VAR" value="--override_visibility $(LINKER_INLINE_OPTION)"/>
- <set name="RUNTIME_LIBS_LIST" value="drtaeabi.dso dfpaeabi.dso"/>
- <!-- These are good enough for now. -->
- <set name="USER_STATIC_RUNTIME_LIB" value="usrt4_0.lib"/>
- <set name="USER_STATIC_RUNTIME_LIB_NESTED_EXCEPTIONS" value="usrt_nx_4_0.lib"/>
- <set name="KERNEL_STATIC_RUNTIME_LIB" value="ksrt4_0.lib"/>
- </var>
- <var name="gccx86" extends="gccx86_base">
- <env name="SBS_GCCX86BIN" type="toolchainpath" />
- <set name="GCCX86BIN" value="$(SBS_GCCX86BIN)" />
- <set name="GCCX86CC" value="$(GCCX86BIN)/g++$(DOTEXE)" type="tool" versionCommand="$(GCCX86CC) -dumpversion" versionResult="3\.4\.5"/>
- <set name="RUNTIME_LIBS_LIST" value=""/>
- </var>
- <!-- Support x86 gcc build into a toolchain-specific tree -->
- <var name="release_x86gcc">
- <set name="VARIANTPLATFORM" value="x86gcc" />
- </var>
- <var name="urel">
- <set name="DEBUG_INFO" value=""/>
- <set name="SYMBIAN_CCFLAGS" value="$(REL_OPTIMISATION)"/>
- <set name="VARIANTTYPE" value="urel"/>
- <append name="CDEFS" value="NDEBUG"/>
- </var>
- <var name="udeb">
- <set name="DEBUG_INFO" value="1"/>
- <set name="SYMBIAN_CCFLAGS" value="$(DEBUG_OPTIMISATION)"/>
- <set name="VARIANTTYPE" value="udeb"/>
- <append name="CDEFS" value="_DEBUG"/>
- </var>
- <var name="remove_freeze">
- <set name='EFREEZE_REMOVE_OPTION' value='-Remove'/>
- </var>
- <var name="slimdebug">
- <append name='DEBUG_OPTIMISATION' value="$(DEBUGINFO_OPTIMISATION)"/>
- </var>
- <!-- OS variant mechanism is now deprecated. We retain the values for
- versions older than TB92sf until the mechanism is removed. -->
- <!-- variant for OS version v9.4 -->
- <var name="v94">
- <set name='POSTLINKER_SUPPORTS_WDP' value=''/>
- <set name='SUPPORTS_STDCPP_NEWLIB' value=''/>
- <set name='RVCT_PRE_INCLUDE' value='$(EPOCINCLUDE)/rvct2_2/rvct2_2.h'/>
- </var>
- <!-- variants for OS version TB91* (the same as OS v9.4) -->
- <var name="vtb91" extends="v94"/>
- <var name="vtb91sf" extends="v94"/>
- <!-- these OS variants are deliberately empty -->
- <var name="v95"/>
- <var name="v96"/>
- <var name="vFuture"/>
- <var name="vtb92"/>
- <var name="vtb92sf"/>
- <var name="vtb101"/>
- <var name="vtb101sf"/>
- <!-- WINSCW specific variant for pick up nested relative include headers correctly -->
- <var name="mwccinc">
- <set name='OPTION_CW' value='-cwd include'/>
- </var>
- <!-- Variant to allow GCCE-built binaries to be created in epoc32/release/gcce,
- epoc32/release/gccev6 and epoc32/release/gccev7 -->
- <var name="release_gcce">
- <set name="VARIANTPLATFORM" value="gcce" />
- <set name="STATIC_RUNTIME_DIR" value="$(EPOCROOT)/epoc32/release/armv5/$(VARIANTTYPE)"/>
- <set name="STATIC_LIBRARY_DIR" value="$(EPOCROOT)/epoc32/release/armv5/$(VARIANTTYPE)"/>
- </var>
- <var name="release_gccev6" extends="release_gcce" >
- <set name="VARIANTPLATFORM" value="gccev6" />
- </var>
- <var name="release_gccev7" extends="release_gcce" >
- <set name="VARIANTPLATFORM" value="gccev7" />
- </var>
- <!-- Variant to permit a workaround for an armlink 2.2 crash with very large targets -->
- <var name="nodebug">
- <set name="DEBUG_INFO" value=""/>
- </var>
- <!-- for builds which don't need a populated .hrh file -->
- <var name="nohrh">
- <set name="VARIANT_HRH" value="$(SBS_HOME)/lib/config/empty.hrh"/>
- </var>
-
- <!-- triggers builds to use command files in compilation calls, where supported -->
- <var name="use_compilation_command_file">
- <set name="USE_COMPILATION_COMMAND_FILE" value="TRUE"/>
- </var>
- <var name='remove_unused_sections'>
- <!-- this rvct option causes the linker to remove unused input sections, reducing symbol file size -->
- <set name="REMOVE_UNUSED_SECTIONS" value="TRUE"/>
- </var>
- </build>
|