On Fri, Apr 2, 2021 at 7:32 PM Vijay Kumar Banerjee <vi...@rtems.org> wrote:
>
> * Remove nfsclient wscript and build from netlegacy.py

These two different changes probably should have been two different
patches? I barely even noticed the nfsclient change, since it isn't
reflected in the first line of the commit subject, so it is harder to
spot. I think split them in two if that is ok.

> ---
>  bsps/powerpc/mpc55xxevb/net/smsc9218i.c |  4 +--
>  libmisc/dummy-networking.c              | 44 ++++++++++++-------------
>  netlegacy.py                            | 18 +++++++++-
>  nfsclient/wscript                       |  1 +
>  telnetd/telnetd.c                       |  4 ---
>  wscript                                 |  2 +-
>  6 files changed, 42 insertions(+), 31 deletions(-)
>
> diff --git a/bsps/powerpc/mpc55xxevb/net/smsc9218i.c 
> b/bsps/powerpc/mpc55xxevb/net/smsc9218i.c
> index d88aa8a..384f9cd 100644
> --- a/bsps/powerpc/mpc55xxevb/net/smsc9218i.c
> +++ b/bsps/powerpc/mpc55xxevb/net/smsc9218i.c
> @@ -24,7 +24,7 @@
>
>  #include <mpc55xx/regs.h>
>
> -#if defined(RTEMS_NETWORKING) && defined(MPC55XX_HAS_SIU)
> +#if defined(MPC55XX_HAS_SIU)
>
>  #include <machine/rtems-bsd-kernel-space.h>
>
> @@ -2121,4 +2121,4 @@ int smsc9218i_attach_detach(
>    return 0;
>  }
>
> -#endif /* defined(RTEMS_NETWORKING) && defined(MPC55XX_HAS_SIU) */
> +#endif /* defined(MPC55XX_HAS_SIU) */
> diff --git a/libmisc/dummy-networking.c b/libmisc/dummy-networking.c
> index 379e23e..b7f15c8 100644
> --- a/libmisc/dummy-networking.c
> +++ b/libmisc/dummy-networking.c
> @@ -16,27 +16,25 @@
>  #include <rtems.h>
>
>  /* Loopback Network Configuration */
> -#if defined(RTEMS_NETWORKING)
> -  #include <rtems/rtems_bsdnet.h>
> -  #include <sys/socket.h>
> -  #include <netinet/in.h>
> +#include <rtems/rtems_bsdnet.h>
> +#include <sys/socket.h>
> +#include <netinet/in.h>
>
> -  struct rtems_bsdnet_config rtems_bsdnet_config = {
> -      NULL,                   /* Network interface */
> -      NULL,                   /* Use fixed network configuration */
> -      0,                      /* Default network task priority */
> -      0,                      /* Default mbuf capacity */
> -      0,                      /* Default mbuf cluster capacity */
> -      "testSystem",           /* Host name */
> -      "nowhere.com",          /* Domain name */
> -      "127.0.0.1",            /* Gateway */
> -      "127.0.0.1",            /* Log host */
> -      {"127.0.0.1" },         /* Name server(s) */
> -      {"127.0.0.1" },         /* NTP server(s) */
> -      1,                      /* sb_efficiency */
> -      0,                      /* udp_tx_buf_size */
> -      0,                      /* udp_rx_buf_size */
> -      0,                      /* tcp_tx_buf_size */
> -      0                       /* tcp_rx_buf_size */
> -  };
> -#endif
> +struct rtems_bsdnet_config rtems_bsdnet_config = {
> +    NULL,                   /* Network interface */
> +    NULL,                   /* Use fixed network configuration */
> +    0,                      /* Default network task priority */
> +    0,                      /* Default mbuf capacity */
> +    0,                      /* Default mbuf cluster capacity */
> +    "testSystem",           /* Host name */
> +    "nowhere.com",          /* Domain name */
> +    "127.0.0.1",            /* Gateway */
> +    "127.0.0.1",            /* Log host */
> +    {"127.0.0.1" },         /* Name server(s) */
> +    {"127.0.0.1" },         /* NTP server(s) */
> +    1,                      /* sb_efficiency */
> +    0,                      /* udp_tx_buf_size */
> +    0,                      /* udp_rx_buf_size */
> +    0,                      /* tcp_tx_buf_size */
> +    0                       /* tcp_rx_buf_size */
> +};
> diff --git a/netlegacy.py b/netlegacy.py
> index 0889548..85c523e 100644
> --- a/netlegacy.py
> +++ b/netlegacy.py
> @@ -54,6 +54,13 @@ def build(bld):
>                     for s in os.listdir('./pppd') if s[-2:] == '.c']
>      telnetd_source = [os.path.join('./telnetd', s)
>                        for s in os.listdir('telnetd') if s[-2:] == '.c']
> +    nfs_source = []
> +    for root, dirs, files in os.walk('./nfsclient'):
> +        for name in files:
> +            ext = os.path.splitext(name)[1]
> +            if ext == '.c':
> +                src_root = os.path.split(root)[1]
> +                nfs_source.append(os.path.join('./nfsclient', src_root, 
> name))
>
>      bsp_dirs, bsp_sources = bsp_drivers.bsp_files(bld)
>
> @@ -66,6 +73,7 @@ def build(bld):
>                           './bsps/include'])
>      arch_lib_path = rtems.arch_bsp_lib_path(bld.env.RTEMS_VERSION,
>                                              bld.env.RTEMS_ARCH_BSP)
> +    lib_path = os.path.join(bld.env.PREFIX, arch_lib_path)
>      include_path.append(os.path.relpath(os.path.join(bld.env.PREFIX,
>                                                       arch_lib_path)))
>      include_path.append(os.path.relpath(os.path.join(bld.env.PREFIX,
> @@ -73,6 +81,8 @@ def build(bld):
>                                                       'include')))
>      include_path.append('./bsps/include/libchip')
>
> +    bld.read_stlib('rtemsbsp', paths=[lib_path])
> +
>      if bsp in bsp_dirs:
>          include_path.extend(bsp_dirs[bsp])
>
> @@ -107,8 +117,14 @@ def build(bld):
>                use='networking',
>                source=telnetd_source)
>
> +    bld.stlib(target='nfs',
> +              features='c',
> +              includes=ip,
> +              use=['rtemsbsp', 'networking'],
> +              source=nfs_source)
> +
>      bld.install_files(os.path.join('${PREFIX}', arch_lib_path),
> -                      ["libnetworking.a", 'libpppd.a', 'libtelnetd.a'])
> +                      ["libnetworking.a", 'libpppd.a', 'libtelnetd.a', 
> 'libnfs.a'])
>      bld.install_files(os.path.join('${PREFIX}', arch_lib_path,
>                                     'include', 'libchip'),
>                        [os.path.join('./bsps/include/libchip/', f)
> diff --git a/nfsclient/wscript b/nfsclient/wscript
> index bc2f994..c0fe420 100644
> --- a/nfsclient/wscript
> +++ b/nfsclient/wscript
> @@ -52,5 +52,6 @@ def build(bld):
>                features='c',
>                cflags=['-O2', '-g'],
>                includes=include_path,
> +              use=['networking'],
>                source=source_files)
>      bld.install_files(os.path.join('${PREFIX}', arch_lib_path), ['libnfs.a'])
> diff --git a/telnetd/telnetd.c b/telnetd/telnetd.c
> index b8adec2..3d401ff 100644
> --- a/telnetd/telnetd.c
> +++ b/telnetd/telnetd.c
> @@ -58,9 +58,7 @@
>  #include <rtems/thread.h>
>  #include <rtems/userenv.h>
>
> -#ifdef RTEMS_NETWORKING
>  #include <rtems/rtems_bsdnet.h>
> -#endif
>
>  #define TELNETD_EVENT_SUCCESS RTEMS_EVENT_0
>
> @@ -401,11 +399,9 @@ rtems_status_code rtems_telnetd_start(const 
> rtems_telnetd_config_table* config)
>    LIST_INIT(&ctx->free_sessions);
>
>    /* Check priority */
> -#ifdef RTEMS_NETWORKING
>    if (ctx->config.priority == 0) {
>      ctx->config.priority = rtems_bsdnet_config.network_task_priority;
>    }
> -#endif
Is this (and the header above) the only difference between the legacy
network stack implementation for telnetd and the libbsd one? If so, it
seems they could be shared easily, and it might be good to keep track
of where they differ.

>    if (ctx->config.priority == 0) {
>      ctx->config.priority = 100;
>    }
> diff --git a/wscript b/wscript
> index 07f774d..7af317d 100644
> --- a/wscript
> +++ b/wscript
> @@ -33,7 +33,7 @@ import sys
>  top = '.'
>
>  rtems_version = "6"
> -subdirs = ['nfsclient', 'testsuites']
> +subdirs = ['testsuites']
>
>  try:
>      import rtems_waf.rtems as rtems
> --
> 2.26.2
>
> _______________________________________________
> devel mailing list
> devel@rtems.org
> http://lists.rtems.org/mailman/listinfo/devel
_______________________________________________
devel mailing list
devel@rtems.org
http://lists.rtems.org/mailman/listinfo/devel

Reply via email to