#
# FILE: micaz/.platform
# 
# Includes that should take precedence come first.  Platforms come before
# chips because they may override files.  These must be specified as
# @includes instead of -I's to @opts, otherwise the %T won't be processed
# by ncc. 
#
# $Id: .platform,v 1.8 2008-06-24 19:03:34 beutel Exp $
#
push( @includes, qw(

  %T/platforms/mica2dot
  %T/platforms/mica2
  %T/platforms/mica
  %T/platforms/mica2dot/chips/cc1000
  %T/platforms/mica2/chips/cc1000
  %T/chips/cc1000
  %T/platforms/mica2dot/chips/at45db
  %T/platforms/mica2/chips/at45db
  %T/platforms/mica/chips/at45db
  %T/chips/at45db
  %T/chips/atm128
  %T/chips/atm128/adc
  %T/chips/atm128/pins
  %T/chips/atm128/spi
  %T/chips/atm128/timer
  %T/lib/timer
  %T/lib/serial
  %T/lib/power

) );

@opts = qw(

  -gcc=avr-gcc
  -mmcu=atmega128
  -fnesc-target=avr
  -fnesc-no-debug

);

push @opts, "-fnesc-scheduler=TinySchedulerC,TinySchedulerC.TaskBasic,TaskBasic,TaskBasic,runTask,postTask" if !$with_scheduler_flag;
push @opts, "-mingw-gcc" if $cygwin;

$ENV{'CIL_MACHINE'} =
    "version_major=3 " .
    "version_minor=4 " .
    "version=avr-3.4.3 " .
    "short=2,1, " .
    "int=2,1 " .
    "long=4,1 " .
    "long_long=8,1 " .
    "pointer=2,1 " .
    "enum=2,1 " .
    "float=4,1 " .
    "double=4,1 " .
    "long_double=4,1 " .
    "void=1,1 " .
    "fun=1,1 " .
    "wchar_size_size=2,2 " .
    "alignof_string=1 " .
    "max_alignment=1 " .
    "char_wchar_signed=true,true " .
    "const_string_literals=true " .
    "big_endian=false " .
    "underscore_name=false " .
    "__builtin_va_list=true " .
    "__thread_is_keyword=true";
