Hill, Jeff | 10 Aug 2012 19:20

maintaining BSP that isnt in an RTEMS production release


> 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.
(Continue reading)

Sebastian Huber | 17 Aug 2012 13:49
Picon
Favicon

Re: maintaining BSP that isnt in an RTEMS production release

Hello Jeff,

On 08/10/2012 07:20 PM, Hill, Jeff wrote:
>
>> 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.

I understand your problem and I can imagine that it is a burden to back port 
the changes, but I don't see a reason to introduce these version dependencies 
into the master branch.  You can cherry-pick or merge the relevant Nios II 
commits from the master branch into your RTEMS 4.10 based production branch.

--

-- 
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
(Continue reading)


Gmane