Multiple BSP targets

You can build an application that runs on multiple targets using the config.xml configuration file. When you build the application, the Lightfoot configuration utility processes the config.xml file, searching for information about the target that you wish to build. A good example of this is the BSP Configuration example that demonstrates this happening.
You specify each target as a target section in the config.xml file. Within each target section you can specify the following information.
clock
The clock speed in hertz
bootconstant
Boot information used to build as an eXecute In Place application, or a copy to RAM application
devices
The devices to include and exclude from the build
constants
Constants unique to that particular target
stream
Streams to use in that device

The following example shows one possible target. This is taken from the BSP Configuration example.

<target tag="vs2000_evb_1_2">
  <devices>
    <device class="ethernet"     instances="none"/>
    <device class="configmgr"    instances="none"/>
    <device class="eeprom"       instances="none"/>
    <device class="spi"          instances="none"/>
    <device class="gpio"         instances="none"/>
    <device class="watchdog"     instances="none"/>
    <device class="rtc"          instances="none"/>
    <device class="flash"        instances="none"/>
    <device class="ffs"          instances="none"/>
  </devices>

  <constants>
    <!-- system constants - override default LightOS timer -->
    <constant type="var" name="LIGHTOS_TIMER" value="0" format="integer"/>

    <!-- application-specific constants -->
    <constant type="var" name="FIRST_TIMER" value="1" format="integer"/>
    <constant type="var" name="NUM_TIMERS"  value="5" format="integer"/>
    <constant type="preproc" name="QUEUE_SIZE" value="10" format="integer"/>
    <constant type="preproc" name="SLOW_PERIOD" value="500" format="integer"/>
    <constant type="preproc" name="NUM_EVENTS" value="200000" format="integer"/>
  </constants>
</target>