|
Boost : |
Subject: Re: [boost] [Boost-build] [VxWorks] Updating boost/config/platform/vxworks.hpp for VxWorks 6.9
From: Vicente J. Botet Escriba (vicente.botet_at_[hidden])
Date: 2012-11-20 18:21:02
Le 20/11/12 15:30, Brockamp, Peter a écrit :
> Hello everybody,
>
> I'm new to the Boost.Build mailing list, so please forgive me any newbie
> mistakes. I hope this is the right place for my post, if not please
> redirect me to where it belongs!
>
I'm replied to the boost dev ML as most of the patches concern Boost.Config.
> OK, some time ago I had to realize that the platform configuration for
> VxWorks boost/config/platform/vxworks.hpp appears to be badly outdated
> and doesn't work with the actual version 6.9. I started to modify this
> platform header and after a while managed to get Boost compile and run
> under VxWorks 6.9, at least as far as we use it here today. I could
> offer to the community to update the existing header if this is desired
> (I suppose it is). If so should I post the source code here or how to
> proceed? Yep, a newbie question.
You can start by creating a ticket on the Trac system
https://svn.boost.org/trac/boost/newticket.
You could add a patch associated with the ticket.
>
> My modifications surely aren't perfect/complete but it might be a fresh
> start for this OS:
>
> - I have only tested it under RTP (Real Time Process) of VxWorks, not
> DKM (Downloadable Kernel Module), due to lack of time. DKM has many
> limitations compared to RTP, so this might cause problems!
>
> - Equally, due to time constraints, I tested GCC only, not the
> diab-compiler, as we don't use it here. Same as above applies here,
> problems might arise and I could not guarantee I might be able to fix
> them.
>
> - And I tested x86 only, as we actually don't develop for ARM, etc.
>
> - I could test with V6.9 only, as we are not using the prior versions,
> so maybe there will be other problems yet unknown. But at least I could
> confirm that it is impossible to get Boost running under early versions
> of VxWorks (V5.x and older). These versions are lacking a couple of
> library functions required by Boost, they come with a library which is
> partially non-ANSI-conforming (especially the STL) and the compiler (GCC
> 2.96) is outdated beyond believe and lacks some functionality (mainly
> template stuff) needed by Boost. So some OS-version checking scheme
> would have to be added to vxworks.hpp, bailing out in case of obsolete,
> unsupported versions.
>
> - A support guy from WRS (Wind River System) mentioned that they are
> thinking of including Boost into their OS, so they might do some
> adaption work in the future. But until now it doesn't appear to me
> there's much activity from WRS, that's why I decided to offer what I
> have done so far.
>
> - When compiling Boost for VxWorks I didn't use the build-system, as
> VxWorks does a cross compile for the destination platform and I didn't
> manage to figure out how to auto build this. Instead I manually pulled
> all of Boost's files into a Workbench Project (Workbench is the eclipse
> based IDE of VxWorks). So there would be some work left to get this up &
> running as well.
>
> - My work is based mainly on modifying and supplementing most parts of
> vxworks.hpp. Anyway, during the tests I did I stumbled upon some
> problems in other files, e. g. caused by missing #ifdef's for VxWorks,
> and even errors in a few of Boost's files, which I fixed as well. Should
> all these fixes be posted here, or what's the right way to do it?
>
>
> So, if you see some potential use in what I have done, despite the
> incompleteness pictured above, please someone responsible mail me with
> further instructions.
>
Best,
Vicente
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk