[PATCH rtems-net-legacy v3] nfsclient: Build nfsclient from the top level netlegacy script
Gedare Bloom
gedare at rtems.org
Wed Apr 14 06:20:06 UTC 2021
looks good, other than the comment I made on the other patch about '${PREFIX}'
On Wed, Apr 14, 2021 at 12:01 AM Vijay Kumar Banerjee <vijay at rtems.org> wrote:
>
> Ping :)
>
> On Wed, Apr 7, 2021 at 10:51 AM Vijay Kumar Banerjee <vijay at rtems.org> wrote:
> >
> > ---
> > netlegacy.py | 31 ++++++++++++++++++++++----
> > nfsclient/wscript | 56 -----------------------------------------------
> > wscript | 2 +-
> > 3 files changed, 28 insertions(+), 61 deletions(-)
> > delete mode 100644 nfsclient/wscript
> >
> > diff --git a/netlegacy.py b/netlegacy.py
> > index 89176e6..05cb78a 100644
> > --- a/netlegacy.py
> > +++ b/netlegacy.py
> > @@ -46,6 +46,14 @@ for root, dirs, files in os.walk("."):
> > if ext == '.h' and name not in exclude_headers:
> > include_files[root[2:]].append(os.path.join(root, name))
> >
> > +def find_node(bld, *paths):
> > + path = os.path.join(*paths)
> > + return os.path.relpath(str(bld.path.find_node(path)))
> > +
> > +def install_file_list(*paths):
> > + path = os.path.join(*paths)
> > + file_list = [os.path.join(path, f) for f in os.listdir(path)]
> > + return file_list
> >
> > def build(bld):
> > include_path = []
> > @@ -55,6 +63,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)
> > + nfs_source.append(os.path.join(src_root[0], src_root[1], name))
> >
> > bsp_dirs, bsp_sources = bsp_drivers.bsp_files(bld)
> >
> > @@ -67,12 +82,15 @@ 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,
> > arch_lib_path,
> > 'include')))
> > - include_path.append('./bsps/include/libchip')
> > + include_path.append(find_node(bld, 'bsps', 'include', 'libchip'))
> > +
> > + bld.read_stlib('rtemsbsp', paths=[lib_path])
> >
> > if bsp in bsp_dirs:
> > include_path.extend(bsp_dirs[bsp])
> > @@ -108,12 +126,17 @@ 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)
> > - for f in os.listdir('./bsps/include/libchip/')])
> > + install_file_list('bsps', 'include', 'libchip'))
> > for i in include_files:
> > if 'include' in i.split('/'):
> > bld.install_files(os.path.join('${PREFIX}',
> > diff --git a/nfsclient/wscript b/nfsclient/wscript
> > deleted file mode 100644
> > index bc2f994..0000000
> > --- a/nfsclient/wscript
> > +++ /dev/null
> > @@ -1,56 +0,0 @@
> > -#
> > -# RTEMS Project (https://www.rtems.org/)
> > -#
> > -# Copyright (c) 2021 Vijay Kumar Banerjee <vijay at rtems.org>.
> > -# All rights reserved.
> > -#
> > -# Redistribution and use in source and binary forms, with or without
> > -# modification, are permitted provided that the following conditions
> > -# are met:
> > -# 1. Redistributions of source code must retain the above copyright
> > -# notice, this list of conditions and the following disclaimer.
> > -# 2. Redistributions in binary form must reproduce the above copyright
> > -# notice, this list of conditions and the following disclaimer in the
> > -# documentation and/or other materials provided with the distribution.
> > -#
> > -# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
> > -# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
> > -# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
> > -# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
> > -# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
> > -# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
> > -# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
> > -# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
> > -# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
> > -# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
> > -# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
> > -
> > -from rtems_waf import rtems
> > -import os
> > -
> > -
> > -def init(ctx):
> > - pass
> > -
> > -
> > -def configure(conf):
> > - pass
> > -
> > -
> > -def build(bld):
> > - source_files = []
> > - include_path = ['./', '../', os.path.relpath(bld.env.PREFIX)]
> > - arch_lib_path = rtems.arch_bsp_lib_path(bld.env.RTEMS_VERSION,
> > - bld.env.RTEMS_ARCH_BSP)
> > - for root, dirs, files in os.walk('./nfsclient'):
> > - for name in files:
> > - if name[-2:] == '.c':
> > - src_root = root.split('/')[2]
> > - source_files.append(os.path.join(src_root, name))
> > -
> > - bld.stlib(target='nfs',
> > - features='c',
> > - cflags=['-O2', '-g'],
> > - includes=include_path,
> > - source=source_files)
> > - bld.install_files(os.path.join('${PREFIX}', arch_lib_path), ['libnfs.a'])
> > 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
> >
More information about the devel
mailing list