# 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. And because of that, the current platform's include directory # must be specified, otherwise its search order is last instead of first. push( @includes, qw( # normal platform includes %T/platforms/eyesIFX %T/platforms/eyesIFX/chips/tda5250 %T/platforms/eyesIFX/chips/ad5200 %T/platforms/eyesIFX/chips/msp430 %T/platforms/eyesIFX/sensors %T/platforms/eyesIFX/byte_radio %T/chips/tda5250 %T/chips/tda5250/mac %T/chips/ad5200 %T/chips/msp430 %T/chips/msp430/adc12 %T/chips/msp430/clock %T/chips/msp430/dma %T/chips/msp430/pins %T/chips/msp430/sensors %T/chips/msp430/usart %T/chips/msp430/timer %T/lib/timer %T/lib/serial %T/lib/adc %T/lib/byte_radio %T/lib/power ) ); push (@opts, qw( -gcc=msp430-gcc -fnesc-target=msp430 -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=2 " . "version=msp430-3.2.3 " . "short=2,2 " . "int=2,2 " . "long=4,2 " . "long_long=8,2 " . "pointer=2,2 " . "enum=2,2 " . "float=4,2 " . "double=4,2 " . "long_double=4,2 " . "void=1,1 " . "fun=1,2 " . "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";