Rtos API example

Committer:
marcozecchini
Date:
Sat Feb 23 12:13:36 2019 +0000
Revision:
0:9fca2b23d0ba
final commit

Who changed what in which revision?

UserRevisionLine numberNew contents of line
marcozecchini 0:9fca2b23d0ba 1 <?xml version="1.0" encoding="UTF-8"?>
marcozecchini 0:9fca2b23d0ba 2 <project xmlns:model="http://www.silabs.com/sls/IDE.ecore" name="{{ name }}" kitCompatibility="{{ kit }}"
marcozecchini 0:9fca2b23d0ba 3 partCompatibility="{{ part }}"
marcozecchini 0:9fca2b23d0ba 4 toolchainCompatibility="com.silabs.ide.si32.gcc:4.8.3.20131129"
marcozecchini 0:9fca2b23d0ba 5 sdkCompatibility="com.silabs.sdk.si32.efm32"
marcozecchini 0:9fca2b23d0ba 6 propertyScope="project"
marcozecchini 0:9fca2b23d0ba 7 contentRoot=".">
marcozecchini 0:9fca2b23d0ba 8 {# Hierarchically include all folders into the project #}
marcozecchini 0:9fca2b23d0ba 9 {%- for child in recursiveFolders.children recursive %}
marcozecchini 0:9fca2b23d0ba 10 <folder name="{{ child.name }}" uri="{{ child.name }}" includeAllFiles="true" includeAllFolders="true">
marcozecchini 0:9fca2b23d0ba 11 {%- if child.children -%}
marcozecchini 0:9fca2b23d0ba 12 {{ loop(child.children) }}
marcozecchini 0:9fca2b23d0ba 13 {%- endif %}
marcozecchini 0:9fca2b23d0ba 14 </folder>
marcozecchini 0:9fca2b23d0ba 15 {%- endfor %}
marcozecchini 0:9fca2b23d0ba 16
marcozecchini 0:9fca2b23d0ba 17 {# Include all source files not belonging to a subfolder separately #}
marcozecchini 0:9fca2b23d0ba 18 {%- for file in main_files -%}
marcozecchini 0:9fca2b23d0ba 19 <file name = "{{ file }}" uri = "file:./{{ file }}" partCompatibility = ""/>
marcozecchini 0:9fca2b23d0ba 20 {%- endfor %}
marcozecchini 0:9fca2b23d0ba 21 {%- if include_root %}
marcozecchini 0:9fca2b23d0ba 22 <file name = "mbed_config.h" uri = "file:./mbed_config.h" partCompatibility = ""/>
marcozecchini 0:9fca2b23d0ba 23 {%- endif %}
marcozecchini 0:9fca2b23d0ba 24
marcozecchini 0:9fca2b23d0ba 25 <sourceFolder></sourceFolder>
marcozecchini 0:9fca2b23d0ba 26 <model:property key="cppProjectCommon.languageId" value="org.eclipse.cdt.core.g++"/>
marcozecchini 0:9fca2b23d0ba 27 <model:property key="projectCommon.buildArtifactType" value="EXE"/>
marcozecchini 0:9fca2b23d0ba 28 <configuration name="com.silabs.ide.si32.gcc.debug#com.silabs.ide.si32.gcc:4.8.3.20131129" label="GNU ARM v4.8.3 - Debug" stockConfigCompatibility="com.silabs.ide.toolchain.core.debug">
marcozecchini 0:9fca2b23d0ba 29 <model:description></model:description>
marcozecchini 0:9fca2b23d0ba 30 {# Add all include paths to the managed build compiler, paths relative to project #}
marcozecchini 0:9fca2b23d0ba 31 {%- if include_root %}
marcozecchini 0:9fca2b23d0ba 32 <includePath languageCompatibility="c cpp" uri="."/>
marcozecchini 0:9fca2b23d0ba 33 {%- endif %}
marcozecchini 0:9fca2b23d0ba 34 {%- for path in include_paths %}
marcozecchini 0:9fca2b23d0ba 35 <includePath languageCompatibility="c cpp" uri="studio:/project/{{ path }}/"/>
marcozecchini 0:9fca2b23d0ba 36 {%- endfor %}
marcozecchini 0:9fca2b23d0ba 37 {# Add all mbed-defined #Defines for the preprocessor #}
marcozecchini 0:9fca2b23d0ba 38 {%- for define, value in defines %}
marcozecchini 0:9fca2b23d0ba 39 <macroDefinition languageCompatibility="c cpp" name="{{ define }}" value="{{ value }}"/>
marcozecchini 0:9fca2b23d0ba 40 {%- endfor %}
marcozecchini 0:9fca2b23d0ba 41 {# Include all standard libraries that mbed requires #}
marcozecchini 0:9fca2b23d0ba 42 <macroDefinition languageCompatibility="c cpp" name="DEBUG" value="1"/>
marcozecchini 0:9fca2b23d0ba 43 <libraryFile languageCompatibility="c" name="stdc++"/>
marcozecchini 0:9fca2b23d0ba 44 <libraryFile languageCompatibility="c" name="supc++"/>
marcozecchini 0:9fca2b23d0ba 45 <libraryFile languageCompatibility="c" name="m"/>
marcozecchini 0:9fca2b23d0ba 46 <libraryFile languageCompatibility="c" name="nosys"/>
marcozecchini 0:9fca2b23d0ba 47 <libraryFile languageCompatibility="c" name="c"/>
marcozecchini 0:9fca2b23d0ba 48 <libraryFile languageCompatibility="c" name="gcc"/>
marcozecchini 0:9fca2b23d0ba 49 {# Include exported libraries #}
marcozecchini 0:9fca2b23d0ba 50 {%- for library in libraries %}
marcozecchini 0:9fca2b23d0ba 51 <libraryFile languageCompatibility="c cpp" name="{{ library }}"/>
marcozecchini 0:9fca2b23d0ba 52 {%- endfor %}
marcozecchini 0:9fca2b23d0ba 53 {# Add library search paths #}
marcozecchini 0:9fca2b23d0ba 54 {%- for path in library_paths %}
marcozecchini 0:9fca2b23d0ba 55 <libraryPath languageCompatibility="c cpp" uri="studio:/project/{{ path }}/"/>
marcozecchini 0:9fca2b23d0ba 56 {%- endfor %}
marcozecchini 0:9fca2b23d0ba 57 {# Add in separate object files if needed #}
marcozecchini 0:9fca2b23d0ba 58 {%- if object_files %}
marcozecchini 0:9fca2b23d0ba 59 <toolOption toolId="com.silabs.ide.si32.gcc.cdt.managedbuild.tool.gnu.cpp.linker.base" optionId="gnu.cpp.link.option.userobjs" value="
marcozecchini 0:9fca2b23d0ba 60 {%- for file in object_files -%}
marcozecchini 0:9fca2b23d0ba 61 ${workspace_loc:/${ProjName}/{{ file }}}{% if not loop.last %} {% endif %}
marcozecchini 0:9fca2b23d0ba 62 {%- endfor -%}"/>
marcozecchini 0:9fca2b23d0ba 63 {%- endif %}
marcozecchini 0:9fca2b23d0ba 64 {# Manually override linker ordering #}
marcozecchini 0:9fca2b23d0ba 65 {%- if libraries %}
marcozecchini 0:9fca2b23d0ba 66 <toolOption toolId="com.silabs.ide.si32.gcc.cdt.managedbuild.tool.gnu.cpp.linker.base" optionId="com.silabs.ide.si32.gcc.cdt.managedbuild.tool.gnu.cpp.linker.category.ordering.selection" value="
marcozecchini 0:9fca2b23d0ba 67 {%- if object_files -%}
marcozecchini 0:9fca2b23d0ba 68 {%- for file in object_files -%}
marcozecchini 0:9fca2b23d0ba 69 ${workspace_loc:/${ProjName}/{{ file }}};
marcozecchini 0:9fca2b23d0ba 70 {%- endfor -%}
marcozecchini 0:9fca2b23d0ba 71 {%- endif -%}
marcozecchini 0:9fca2b23d0ba 72 {%- for library in libraries -%}
marcozecchini 0:9fca2b23d0ba 73 ${-l{{ library }}}{% if not loop.last %};{% endif %}
marcozecchini 0:9fca2b23d0ba 74 {%- endfor -%}"/>
marcozecchini 0:9fca2b23d0ba 75 {%- endif %}
marcozecchini 0:9fca2b23d0ba 76 {# Define mbed-specific linker file #}
marcozecchini 0:9fca2b23d0ba 77 <toolOption toolId="com.silabs.ide.si32.gcc.cdt.managedbuild.toolchain.exe" optionId="com.silabs.ide.si32.gcc.cdt.managedbuild.tool.gnu.c.linker.usescript" value="true"/>
marcozecchini 0:9fca2b23d0ba 78 <toolOption toolId="com.silabs.ide.si32.gcc.cdt.managedbuild.toolchain.exe" optionId="com.silabs.ide.si32.gcc.cdt.managedbuild.tool.gnu.c.linker.script" value="${workspace_loc:/${ProjName}/{{ linker_script }}}"/>
marcozecchini 0:9fca2b23d0ba 79 {# Make sure to wrap main in order to get clock initialization done right #}
marcozecchini 0:9fca2b23d0ba 80 <toolOption toolId="com.silabs.ide.si32.gcc.cdt.managedbuild.tool.gnu.c.linker.base" optionId="gnu.c.link.option.ldflags" value="{{ld_flags|join(" ")}}"/>
marcozecchini 0:9fca2b23d0ba 81 <toolOption toolId="com.silabs.ide.si32.gcc.cdt.managedbuild.tool.gnu.cpp.linker.base" optionId="gnu.cpp.link.option.flags" value="{{ld_flags|join(" ")}}"/>
marcozecchini 0:9fca2b23d0ba 82 {# For debug build, don't apply optimizations #}
marcozecchini 0:9fca2b23d0ba 83 <toolOption toolId="com.silabs.ide.si32.gcc.cdt.managedbuild.tool.gnu.c.compiler.base" optionId="gnu.c.compiler.option.optimization.level" value="gnu.c.optimization.level.none"/>
marcozecchini 0:9fca2b23d0ba 84 <toolOption toolId="com.silabs.ide.si32.gcc.cdt.managedbuild.tool.gnu.c.compiler.base" optionId="gnu.c.compiler.option.misc.other" value="-c {{common_flags|join(" ")}} {{c_flags|join(" ")}}"/>
marcozecchini 0:9fca2b23d0ba 85 <toolOption toolId="com.silabs.ide.si32.gcc.cdt.managedbuild.tool.gnu.cpp.compiler.base" optionId="gnu.cpp.compiler.option.optimization.level" value="gnu.cpp.compiler.optimization.level.none"/>
marcozecchini 0:9fca2b23d0ba 86 <toolOption toolId="com.silabs.ide.si32.gcc.cdt.managedbuild.tool.gnu.cpp.compiler.base" optionId="gnu.cpp.compiler.option.other.other" value="-c {{common_flags|join(" ")}} {{cxx_flags|join(" ")}}"/>
marcozecchini 0:9fca2b23d0ba 87 <toolOption toolId="com.silabs.ide.si32.gcc.cdt.managedbuild.tool.gnu.cpp.compiler.base" optionId="com.silabs.ide.si32.gcc.cdt.managedbuild.tool.gnu.cpp.compiler.misc.dialect" value="com.silabs.ide.si32.gcc.cdt.managedbuild.tool.gnu.cpp.compiler.misc.dialect.default"/>
marcozecchini 0:9fca2b23d0ba 88 </configuration>
marcozecchini 0:9fca2b23d0ba 89 <configuration name="com.silabs.ide.si32.gcc.release#com.silabs.ide.si32.gcc:4.8.3.20131129" label="GNU ARM v4.8.3 - Release" stockConfigCompatibility="com.silabs.ide.toolchain.core.release">
marcozecchini 0:9fca2b23d0ba 90 <model:description></model:description>
marcozecchini 0:9fca2b23d0ba 91 {# Add all include paths to the managed build compiler, paths relative to project #}
marcozecchini 0:9fca2b23d0ba 92 {%- if include_root %}
marcozecchini 0:9fca2b23d0ba 93 <includePath languageCompatibility="c cpp" uri="."/>
marcozecchini 0:9fca2b23d0ba 94 {%- endif %}
marcozecchini 0:9fca2b23d0ba 95 {%- for path in include_paths %}
marcozecchini 0:9fca2b23d0ba 96 <includePath languageCompatibility="c cpp" uri="studio:/project/{{ path }}/"/>
marcozecchini 0:9fca2b23d0ba 97 {%- endfor %}
marcozecchini 0:9fca2b23d0ba 98 {# Add all mbed-defined #Defines for the preprocessor #}
marcozecchini 0:9fca2b23d0ba 99 {%- for define, value in defines %}
marcozecchini 0:9fca2b23d0ba 100 <macroDefinition languageCompatibility="c cpp" name="{{ define }}" value="{{ value }}"/>
marcozecchini 0:9fca2b23d0ba 101 {%- endfor %}
marcozecchini 0:9fca2b23d0ba 102 {# Include all standard libraries that mbed requires #}
marcozecchini 0:9fca2b23d0ba 103 <libraryFile languageCompatibility="c" name="stdc++"/>
marcozecchini 0:9fca2b23d0ba 104 <libraryFile languageCompatibility="c" name="supc++"/>
marcozecchini 0:9fca2b23d0ba 105 <libraryFile languageCompatibility="c" name="m"/>
marcozecchini 0:9fca2b23d0ba 106 <libraryFile languageCompatibility="c" name="nosys"/>
marcozecchini 0:9fca2b23d0ba 107 <libraryFile languageCompatibility="c" name="c"/>
marcozecchini 0:9fca2b23d0ba 108 <libraryFile languageCompatibility="c" name="gcc"/>
marcozecchini 0:9fca2b23d0ba 109 {# Include exported libraries #}
marcozecchini 0:9fca2b23d0ba 110 {%- for library in libraries %}
marcozecchini 0:9fca2b23d0ba 111 <libraryFile languageCompatibility="c cpp" name="{{ library }}"/>
marcozecchini 0:9fca2b23d0ba 112 {%- endfor %}
marcozecchini 0:9fca2b23d0ba 113 {# Add library search paths #}
marcozecchini 0:9fca2b23d0ba 114 {%- for path in library_paths %}
marcozecchini 0:9fca2b23d0ba 115 <libraryPath languageCompatibility="c cpp" uri="studio:/project/{{ path }}/"/>
marcozecchini 0:9fca2b23d0ba 116 {%- endfor %}
marcozecchini 0:9fca2b23d0ba 117 {# Add in separate object files if needed #}
marcozecchini 0:9fca2b23d0ba 118 {%- if object_files %}
marcozecchini 0:9fca2b23d0ba 119 <toolOption toolId="com.silabs.ide.si32.gcc.cdt.managedbuild.tool.gnu.cpp.linker.base" optionId="gnu.cpp.link.option.userobjs" value="
marcozecchini 0:9fca2b23d0ba 120 {%- for file in object_files -%}
marcozecchini 0:9fca2b23d0ba 121 ${workspace_loc:/${ProjName}/{{ file }}}{% if not loop.last %} {% endif %}
marcozecchini 0:9fca2b23d0ba 122 {%- endfor -%}"/>
marcozecchini 0:9fca2b23d0ba 123 {%- endif %}
marcozecchini 0:9fca2b23d0ba 124 {# Manually override linker ordering #}
marcozecchini 0:9fca2b23d0ba 125 {%- if libraries %}
marcozecchini 0:9fca2b23d0ba 126 <toolOption toolId="com.silabs.ide.si32.gcc.cdt.managedbuild.tool.gnu.cpp.linker.base" optionId="com.silabs.ide.si32.gcc.cdt.managedbuild.tool.gnu.cpp.linker.category.ordering.selection" value="
marcozecchini 0:9fca2b23d0ba 127 {%- if object_files -%}
marcozecchini 0:9fca2b23d0ba 128 {%- for file in object_files -%}
marcozecchini 0:9fca2b23d0ba 129 ${workspace_loc:/${ProjName}/{{ file }}};
marcozecchini 0:9fca2b23d0ba 130 {%- endfor -%}
marcozecchini 0:9fca2b23d0ba 131 {%- endif -%}
marcozecchini 0:9fca2b23d0ba 132 {%- for library in libraries -%}{% if not loop.last %};{% endif %}
marcozecchini 0:9fca2b23d0ba 133 ${-l{{ library }}}
marcozecchini 0:9fca2b23d0ba 134 {%- endfor -%}"/>
marcozecchini 0:9fca2b23d0ba 135 {%- endif %}
marcozecchini 0:9fca2b23d0ba 136 {# Define mbed-specific linker file #}
marcozecchini 0:9fca2b23d0ba 137 <toolOption toolId="com.silabs.ide.si32.gcc.cdt.managedbuild.toolchain.exe" optionId="com.silabs.ide.si32.gcc.cdt.managedbuild.tool.gnu.c.linker.usescript" value="true"/>
marcozecchini 0:9fca2b23d0ba 138 <toolOption toolId="com.silabs.ide.si32.gcc.cdt.managedbuild.toolchain.exe" optionId="com.silabs.ide.si32.gcc.cdt.managedbuild.tool.gnu.c.linker.script" value="${workspace_loc:/${ProjName}/{{ linker_script }}}"/>
marcozecchini 0:9fca2b23d0ba 139 {# Make sure to wrap main in order to get clock initialization done right #}
marcozecchini 0:9fca2b23d0ba 140 <toolOption toolId="com.silabs.ide.si32.gcc.cdt.managedbuild.tool.gnu.c.linker.base" optionId="gnu.c.link.option.ldflags" value="{{ld_flags|join(" ")}}"/>
marcozecchini 0:9fca2b23d0ba 141 <toolOption toolId="com.silabs.ide.si32.gcc.cdt.managedbuild.tool.gnu.cpp.linker.base" optionId="gnu.cpp.link.option.flags" value="{{ld_flags|join(" ")}}"/>
marcozecchini 0:9fca2b23d0ba 142 {# Use optimize for size on release build #}
marcozecchini 0:9fca2b23d0ba 143 <toolOption toolId="com.silabs.ide.si32.gcc.cdt.managedbuild.tool.gnu.c.compiler.base" optionId="gnu.c.compiler.option.optimization.level" value="gnu.c.optimization.level.size"/>
marcozecchini 0:9fca2b23d0ba 144 <toolOption toolId="com.silabs.ide.si32.gcc.cdt.managedbuild.tool.gnu.c.compiler.base" optionId="gnu.c.compiler.option.misc.other" value="-c {{common_flags|join(" ")}} {{c_flags|join(" ")}}"/>
marcozecchini 0:9fca2b23d0ba 145 <toolOption toolId="com.silabs.ide.si32.gcc.cdt.managedbuild.tool.gnu.cpp.compiler.base" optionId="gnu.cpp.compiler.option.optimization.level" value="gnu.cpp.compiler.optimization.level.size"/>
marcozecchini 0:9fca2b23d0ba 146 <toolOption toolId="com.silabs.ide.si32.gcc.cdt.managedbuild.tool.gnu.cpp.compiler.base" optionId="gnu.cpp.compiler.option.other.other" value="-c {{common_flags|join(" ")}} {{cxx_flags|join(" ")}}"/>
marcozecchini 0:9fca2b23d0ba 147 <toolOption toolId="com.silabs.ide.si32.gcc.cdt.managedbuild.tool.gnu.cpp.compiler.base" optionId="com.silabs.ide.si32.gcc.cdt.managedbuild.tool.gnu.cpp.compiler.misc.dialect" value="com.silabs.ide.si32.gcc.cdt.managedbuild.tool.gnu.cpp.compiler.misc.dialect.default"/>
marcozecchini 0:9fca2b23d0ba 148 </configuration>
marcozecchini 0:9fca2b23d0ba 149 </project>