Hello Ben,
you are right. I asked if I should create a new OS_CLASS (preferred by me as there where some changes needed even to the posix-part).
It was also a first try to use the posix stuff with RTEMS and get rid of RTEMS-internal (_XXX) functions.
I have choosen the way with the #ifdef’s to not break the existing RTEMS-Port.
I found no way to realise it with the build system. I am open for any “good idea”.
Heinz
> On 09 Nov 2016, at 02:01, Ben Franksen <[email protected]> wrote:
>
> Hello Heinz & EPICS Gurus
>
> I have just taken a quick look at your port. I may be wrong but it looks
> to me as if you have copied lots of osi implementation code from
> osd/posix to existing files in osd/RTEMS (surrounded with #ifdefs).
> There must be a better way to do this! If you have confirmed that there
> isn't, then you should report this as a bug and/or feature request
> against EPICS base. It should be possible to persuade the build system
> to ignore (some of the) existing osd/RTEMS files, making it fall back to
> using the ones from osd/posix. If all else fails, perhaps it makes more
> sense to create a new OS_CLASS (e.g. RTEMS412)?
>
> Cheers
> Ben
>
> Am 07.11.2016 um 08:52 schrieb Heinz Junkes:
>> Hi Matt,
>>
>> I made a port of EPICS 3.15 for RTEMS 4.12 (tested on MVME6100, beatnik)
>>
>> And put it for review to the launchpad:
>>
>> https://code.launchpad.net/~junkes/epics-base/adap-rtems4.12
>>
>>
>> There is also a pull request for bundleCPP (epics v4):
>>
>> https://github.com/hjunkes/bundleCPP
>>
>>
>> Cheers,
>> Heinz
>>
>>> On 06 Nov 2016, at 23:38, Matt Rippa <[email protected]> wrote:
>>>
>>> Is it expected that either of the latest 3.14 or 3.15 releases should build against RTEMS 4.11 ?
>>>
>>> Trying with 3.15.5-rc1 and RTEMS 4.11 I get the following error below. I'm using the beatnik, mvme2307 and mvme3100 bsp's.
>>>
>>> FWIW, 3.15.5-rc1 builds fine against RTEMS 4.10.
>>> -Matt
>>>
>>> <snip>
>>> ...
>>> make[3]: Leaving directory `/home/mrippa/work/vendor/epics/base-3.15.5-rc1/src/libCom/O.RTEMS-beatnik'
>>> make[3]: Entering directory `/home/mrippa/work/vendor/epics/base-3.15.5-rc1/src/libCom/O.RTEMS-beatnik'
>>> Installing generic include file /gem_sw/epics/R3.15.5-rc1/base/include/os/RTEMS/osiFileName.h
>>> mkdir /gem_sw/epics/R3.15.5-rc1/base/include/os/RTEMS
>>> Installing generic include file /gem_sw/epics/R3.15.5-rc1/base/include/os/RTEMS/osdSock.h
>>> <snip>
>>> ...
>>> /gem_sw/targetOS/RTEMS/rtems-4.11/bin/powerpc-rtems4.11-gcc --pipe -B/gem_sw/targetOS/RTEMS/rtems-4.11/powerpc-rtems4.11/beatnik/lib/ -specs bsp_specs -qrtems -fa
>>> sm -mcpu=7400 -D__ppc_generic -DUNIX -O2 -g -Wall -DMY_DO_BOOTP=NULL -DHAVE_MOTLOAD -DRTEMS_NETWORK_CONFIG_MBUF_SPACE=2048 -DRTEM
>>> S_NETWORK_CONFIG_CLUSTER_SPACE=5120 -I. -I../O.Common -I. -I../../../src/libCom/osi/compiler/gcc -I../../../src/libCom/osi/compiler/default -I. -I../../../src/l
>>> ibCom/osi/os/RTEMS -I../../../src/libCom/osi/os/posix -I../../../src/libCom/osi/os/default -I.. -I../../../src/libCom/as -I../../../src/libCom/bucketLib -I../../../
>>> src/libCom/calc -I../../../src/libCom/cvtFast -I../../../src/libCom/cppStd -I../../../src/libCom/cxxTemplates -I../../../src/libCom/dbmf -I../../../src/libCom/ellLi
>>> b -I../../../src/libCom/env -I../../../src/libCom/error -I../../../src/libCom/fdmgr -I../../../src/libCom/flex -I../../../src/libCom/freeList -I../../../src/libCom/
>>> gpHash -I../../../src/libCom/iocsh -I../../../src/libCom/log -I../../../src/libCom/macLib -I../../../src/libCom/misc -I../../../src/libCom/osi -I../../../src/libCom
>>> /pool -I../../../src/libCom/ring -I../../../src/libCom/taskwd -I../../../src/libCom/timer -I../../../src/libCom/yacc -I../../../src/libCom/yacc -I../../../src/libCo
>>> m/yajl -I/gem_sw/epics/R3.15.5-rc1/base/include/compiler/gcc -I/gem_sw/epics/R3.15.5-rc1/base/include/os/RTEMS -I/gem_sw/epics/R3.15.5-rc1/base/include -c .
>>> ./../../src/libCom/osi/os/RTEMS/osdPoolStatus.c
>>> ../../../src/libCom/osi/os/RTEMS/osdPoolStatus.c: In function 'osiSufficentSpaceInPool':
>>> ../../../src/libCom/osi/os/RTEMS/osdPoolStatus.c:20:5: error: unknown type name 'rtems_malloc_statistics_t'
>>> rtems_malloc_statistics_t s;
>>> ^
>>> ../../../src/libCom/osi/os/RTEMS/osdPoolStatus.c:23:5: warning: implicit declaration of function 'malloc_get_statistics' [-Wimplicit-function-declaration]
>>> malloc_get_statistics(&s);
>>> ^
>>> ../../../src/libCom/osi/os/RTEMS/osdPoolStatus.c:24:10: error: request for member 'space_available' in something not a structure or union
>>> n = s.space_available - (unsigned long)(s.lifetime_allocated - s.lifetime_freed);
>>> ^
>>> ../../../src/libCom/osi/os/RTEMS/osdPoolStatus.c:24:46: error: request for member 'lifetime_allocated' in something not a structure or union
>>> n = s.space_available - (unsigned long)(s.lifetime_allocated - s.lifetime_freed);
>>> ^
>>> ../../../src/libCom/osi/os/RTEMS/osdPoolStatus.c:24:69: error: request for member 'lifetime_freed' in something not a structure or union
>>> n = s.space_available - (unsigned long)(s.lifetime_allocated - s.lifetime_freed);
>>> ^
>>> make[3]: *** [osdPoolStatus.o] Error 1
>>> make[3]: Leaving directory `/home/mrippa/work/vendor/epics/base-3.15.5-rc1/src/libCom/O.RTEMS-beatnik'
>>> make[2]: *** [install.RTEMS-beatnik] Error 2
>>> make[2]: Leaving directory `/home/mrippa/work/vendor/epics/base-3.15.5-rc1/src/libCom'
>>> make[1]: *** [libCom.install] Error 2
>>> make[1]: Leaving directory `/home/mrippa/work/vendor/epics/base-3.15.5-rc1/src'
>>> make: *** [src.install] Error 2
>>>
>>>
>>>
>>> On Mon, Oct 31, 2016 at 1:05 PM, Andrew Johnson <[email protected]> wrote:
>>> Ralph Lange and I have today tagged and generated Release Candidate[1]
>>> versions of two new versions of EPICS Base for testing purposes. The
>>> final releases of these will happen in about 2 weeks time provided no
>>> major problems are reported in that period. Please report any problems
>>> you find with these to this tech-talk mailing list.
>>>
>>> Base-3.14.12.6-rc1
>>> See http://www.aps.anl.gov/epics/base/R3-14/12.php for the download
>>> link and Release Notes.
>>>
>>> Base-3.15.5-rc1
>>> See http://www.aps.anl.gov/epics/base/R3-15/5.php for the download
>>> link and documentation.
>>>
>>> These releases contain bug-fixes and various minor updates, and should
>>> be compatible with software written for previous releases. See the
>>> published Release Notes for details. Most of these modifications were
>>> first applied to the Base-3.14 branch and the changes merged up to the
>>> Base-3.15 branch.
>>>
>>> One new feature that is present in both releases is that PCAS now
>>> supports variable length array monitor updates — thanks to Matej
>>> Sekoranja, Bruce Hill and Ralph Lange for implementing that.
>>>
>>> The 3.15 branch does contain a major performance improvement to the IOC
>>> when loading large numbers of database records.
>>>
>>> Thanks to all the EPICS Core Developers for their work on these releases.
>>>
>>> - Andrew Johnson
>>>
>>> [1] Today's scary word for US residents
>>>
>>> --
>>> Arguing for surveillance because you have nothing to hide is no
>>> different than making the claim, "I don't care about freedom of
>>> speech because I have nothing to say." -- Edward Snowdon
>>>
>>
>
Attachment:
smime.p7s
Description: S/MIME cryptographic signature
- References:
- EPICS Base Release-Candidate Double Feature! Andrew Johnson
- Re: EPICS Base Release-Candidate Double Feature! Matt Rippa
- Re: EPICS Base Release-Candidate Double Feature! Heinz Junkes
- Re: EPICS Base Release-Candidate Double Feature! Ben Franksen
- Navigate by Date:
- Prev:
Re: processCallbacks() never called in areaDetector plugin Ben Franksen
- Next:
Control System Engineer vacancies at Diamond ulrik.pedersen
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
<2016>
2017
2018
2019
2020
2021
2022
2023
2024
- Navigate by Thread:
- Prev:
Re: EPICS Base Release-Candidate Double Feature! Ben Franksen
- Next:
RE: EPICS Base Release-Candidate Double Feature! freddie.akeroyd
- Index:
1994
1995
1996
1997
1998
1999
2000
2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
<2016>
2017
2018
2019
2020
2021
2022
2023
2024
|