Announcement: Legacy libnetworking will be removed from RTEMS and will be placed in a separate repository

Vijay Kumar Banerjee vijay at rtems.org
Wed Mar 3 22:15:41 UTC 2021


On Wed, Mar 3, 2021 at 2:32 PM Joel Sherrill <joel at rtems.org> wrote:
>
>
>
> On Wed, Mar 3, 2021, 2:49 PM Heinz Junkes <junkes at fhi-berlin.mpg.de> wrote:
>>
>> Hallo Vijay,
>> I still have to ask a question ;-)
>>
>> When building EPICS, we distinguish legacy stack or libbsd with the help of
>> the target.cfg file. (e.g. powerpc-rtems6/beatnik/make/target.cfg).
>>
>> Earlier in it was
>> RTEMS_HAS_NETWORKING = yes (for legacy stack) and no (for new bsd stack).
>>
>> Now  this flag will no be set with the waf build in your extra net-legacy repo.
>>
>> How should we now find out if the target was built with legacyStack or with libbsd?
>
>
> Eventually RTEMS itself won't have this at all. It will always have no networking and you have to add a stack.
>
> This may be something that needs addressing. Not sure.
>

I got the same question for Michael on the core mailing list and I
have added a note there that I am planning to add an RSB recipe that
will make it easier to build the legacy networking stack.

Regarding the macro: I am not sure which path is "cleaner", but I can
think of two possible solutions. One is to add a common config file
that gets written by the libnetworking stack that will indicate that
legacy networking is used. This might also mean that we can actually
overwrite the target.cfg itself to indicate it.

I have written a detailed post here as well:
https://epics.anl.gov/core-talk/2021/msg00382.php

Best regards,
Vijay

> --joel
>
>>
>> Danke Heinz
>> .
>>
>> > On 3. Mar 2021, at 21:03, Vijay Kumar Banerjee <vijay at rtems.org> wrote:
>> >
>> > On Wed, Mar 3, 2021 at 12:37 PM junkes <junkes at fhi-berlin.mpg.de> wrote:
>> >>
>> >> Hi Vijay,
>> >> I tried it again:
>> >>
>> > Hi Heinz,
>> >
>> > I'm really sorry that the build crashed again. I missed the telnetd.h
>> > file probably because it was somewhere in my build prefix from one of
>> > the rtems builds. I have pushed a fix on the rtems repo and the
>> > rtems-net-legacy repo. This time I was more thorough and used a new
>> > prefix location, I believe it won't break this time.
>> >
>> > Thank you for helping with the testing. I really appreciate it.
>> >
>> >
>> > Best regards,
>> > Vijay
>> >
>> >> # building kernel
>> >> #git clone git://git.rtems.org/rtems.git kernel
>> >> git clone git://git.rtems.org/vijay/rtems.git kernel
>> >> cd kernel
>> >> git checkout devel-no-libnet
>> >>
>> >> # build and install bsp
>> >> # 1. Test with waf
>> >> #-e "s|RTEMS_NETWORKING = False|RTEMS_NETWORKING = True|" \
>> >> ./waf bsp_defaults --rtems-bsps=powerpc/beatnik > config.ini
>> >> sed -i \
>> >> -e "s|RTEMS_POSIX_API = False|RTEMS_POSIX_API = True|" \
>> >> -e "s|BUILD_TESTS = False|BUILD_TESTS = True|" \
>> >> config.ini
>> >> ./waf configure --prefix=/home/junkes/MVME6100_testing/rtems/6
>> >> ./waf
>> >> ./waf install
>> >>
>> >> cd ..
>> >>
>> >> # building extra legacy net
>> >> git clone git://git.rtems.org/vijay/rtems-net-legacy.git legacyNet
>> >> cd legacyNet
>> >> git submodule init
>> >> git submodule update
>> >>
>> >> ./waf configure --prefix=/home/junkes/MVME6100_testing/rtems/6
>> >>
>> >> ./waf build --rtems-archs=powerpc --rtems-bsps=beatnik
>> >>
>> >>
>> >> Much better, but still a missing file?
>> >>
>> >> [125/235] Compiling libc/res_mkquery.c
>> >> [126/235] Compiling libc/inet_lnaof.c
>> >> [127/235] Compiling librpc/src/xdr/xdr_array.c
>> >> ../../telnetd/check_passwd.c:70:10: fatal error: rtems/telnetd.h: No
>> >> such file or directory
>> >>    70 | #include <rtems/telnetd.h>
>> >>       |          ^~~~~~~~~~~~~~~~~
>> >> compilation terminated.
>> >>
>> >> ../../telnetd/telnetd.c:57:10: fatal error: rtems/telnetd.h: No such
>> >> file or directory
>> >>    57 | #include <rtems/telnetd.h>
>> >>       |          ^~~~~~~~~~~~~~~~~
>> >> compilation terminated.
>> >>
>> >> Waf: Leaving directory
>> >> `/home/junkes/MVME6100_testing/legacyNet/build/powerpc-rtems6-beatnik'
>> >> Build failed
>> >>  -> task in 'network_objects' failed with exit status 1 (run with -v to
>> >> display more information)
>> >>  -> task in 'network_objects' failed with exit status 1 (run with -v to
>> >> display more information)
>> >>
>> >> Heinz
>>


More information about the devel mailing list