maintaining BSP that isnt in an RTEMS production release

Hill, Jeff johill at lanl.gov
Fri Aug 10 17:20:22 UTC 2012


> can you please remove all
> 
> #if ( __RTEMS_MAJOR__ > 4 ) || \
>     ( __RTEMS_MAJOR__ == 4 && __RTEMS_MINOR__ > 10 ) || \
>     ( __RTEMS_MAJOR__ == 4 && __RTEMS_MINOR__ == 10 && __RTEMS_REVISION__ >= 99 )

Here is how I decided to have a special case for this type of ifdef
1) Nios2 isn't included in a production release of RTEMS
2) We will soon use RTEMS/Nios2 in a production installation
3) Currently I have to continuously back-patch the RTEMS main 
trunk Nios2 patches into the RTEMS 4.10 version and that requires 
some continuing effort. It's much easier to maintain a Nios2
support code that works on both in RTEMS 4.10 and also the 
main trunk.

Making this type of ifdef work correctly did require some effort;
I am a bit new with the gnu build system.

I am requesting that we use this type of ifdef in the Nios2 specific 
code only until such a time that the Nios2 specific code can obtain 
a citizen status in RTEMS.

I completely agree that the ifdef should be 100% removed after 
Nios2 shows up in a released branch of RTEMS; at that time I
will have two places in git to maintain both the production 
version and the main trunk version which will allow a typical
type of develop-quickly-on-the-main-trunk and polish-on-the-
production-branch approach to quality control which is not 
currently possible.

This is just a quick check to verify that you are aware 
of my concerns. If you still feel the same way after reading 
my position then I will comply with your request; I am the 
new person in this community after all so I will be happy to 
acquiesce in favor of your superior expertise with RTEMS. 

Thanks,

Jeff

> -----Original Message-----
> From: Sebastian Huber [mailto:sebastian.huber at embedded-brains.de]
> Sent: Friday, August 10, 2012 9:00 AM
> To: Hill, Jeff
> Subject: Re: FW: FW: rtems on nios2 collaborative efforts
> 
> Hello Jeff,
> 
> can you please remove all
> 
> +#if ! defined ( __RTEMS_MAJOR__ ) || \
> +    ! defined ( __RTEMS_MINOR__ ) || \
> +    ! defined ( __RTEMS_REVISION__ )
> +#   error __RTEMS_MAJOR__, __RTEMS_MINOR__, and __RTEMS_REVISION__ must
> be defined
> +#endif
> 
> and the like from the patches.  The RTEMS sources are supposed to work in
> the
> current version.
> 
> Can you please reformat at least the code in the cpukit to follow the
> RTEMS
> coding style.  This is no tabs and two space characters per indentation
> level.
>   All global Nios II specific functions should have the form
> _Nios2_Function_name(), types should have the form Nios2_Some_type, and
> constants should have the form NIOS2_SOME_CONSTANT (also enums).
> 
> Please remove all new #if 0 blocks.
> 
> Kind regards,
> 	Sebastian
> 
> --
> Sebastian Huber, embedded brains GmbH
> 
> Address : Obere Lagerstr. 30, D-82178 Puchheim, Germany
> Phone   : +49 89 18 90 80 79-6
> Fax     : +49 89 18 90 80 79-9
> E-Mail  : sebastian.huber at embedded-brains.de
> PGP     : Public key available on request.
> 
> Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.
> 





More information about the users mailing list