From 7afbccd8d7c6d7ffbdfd853e210fa207abab3d70 Mon Sep 17 00:00:00 2001 From: Chris Johns Date: Tue, 1 Sep 2020 14:01:14 +1000 Subject: waf: Reformat to PEP8 using yapf --- wscript | 152 ++++++++++++++++++++++++++++++++++++++-------------------------- 1 file changed, 91 insertions(+), 61 deletions(-) (limited to 'wscript') diff --git a/wscript b/wscript index 03151bb2..55652ff8 100644 --- a/wscript +++ b/wscript @@ -1,28 +1,32 @@ -# -# RTEMS Project (https://www.rtems.org/) -# +# SPDX-License-Identifier: BSD-2-Clause +'''RTEMS LibBSD is a transparent source build of the FreeBSD kernel +source for RTEMS. + +To use see README.waf shipped with this file. +''' + # Copyright (c) 2015-2016 Chris Johns . 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. +# 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. +# 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. # # RTEMS LibBSD is a transparent source build of the FreeBSD kernel source for RTEMS. @@ -57,6 +61,7 @@ builders = {} BUILDSET_DIR = "buildset" BUILDSET_DEFAULT = "buildset/default.ini" + def load_ini(conf, f): ini = configparser.ConfigParser() ini.read(f) @@ -73,8 +78,9 @@ def load_ini(conf, f): elif os.path.isfile(os.path.join(BUILDSET_DIR, extends)): extendfile = os.path.join(BUILDSET_DIR, extends) else: - conf.fatal("'{}': Invalid file given for general/extends:'{}'" - .format(f, extends)) + conf.fatal( + "'{}': Invalid file given for general/extends:'{}'".format( + f, extends)) base = load_ini(conf, extendfile) for s in ini.sections(): if not base.has_section(s): @@ -85,6 +91,7 @@ def load_ini(conf, f): ini = base return ini + def load_config(conf, f): ini = load_ini(conf, f) config = {} @@ -100,6 +107,7 @@ def load_config(conf, f): config['modules-enabled'].append(mod) return config + def update_builders(ctx, buildset_opt): global builders builders = {} @@ -111,7 +119,7 @@ def update_builders(ctx, buildset_opt): if os.path.isdir(bs): for f in os.listdir(bs): if f[-4:] == ".ini": - buildsets += [os.path.join(bs,f)] + buildsets += [os.path.join(bs, f)] else: for f in bs.split(','): buildsets += [f] @@ -123,7 +131,8 @@ def update_builders(ctx, buildset_opt): bsname = bsconfig['name'] builder.updateConfiguration(bsconfig) builder.generate(rtems_version) - builders[bsname]=builder + builders[bsname] = builder + def bsp_init(ctx, env, contexts): # This function generates the builders and adds build-xxx, clean-xxx and @@ -143,6 +152,7 @@ def bsp_init(ctx, env, contexts): for y in contexts: newcmd = y.cmd + '-' + builder newvariant = y.variant + '-' + builder + class context(y): cmd = str(newcmd) variant = str(newvariant) @@ -158,49 +168,66 @@ def bsp_init(ctx, env, contexts): commands += [str(cmd)] waflib.Options.commands = commands + def init(ctx): - rtems.init(ctx, version = rtems_version, long_commands = True, - bsp_init = bsp_init) + rtems.init(ctx, + version=rtems_version, + long_commands=True, + bsp_init=bsp_init) + def options(opt): rtems.options(opt) opt.add_option("--enable-auto-regen", - action = "store_true", - default = False, - dest = "auto_regen", - help = "Enable auto-regeneration of LEX, RPC and YACC files.") + action="store_true", + default=False, + dest="auto_regen", + help="Enable auto-regeneration of LEX, RPC and YACC files.") opt.add_option("--enable-warnings", - action = "store_true", - default = False, - dest = "warnings", - help = "Enable all warnings. The default is quiet builds.") + action="store_true", + default=False, + dest="warnings", + help="Enable all warnings. The default is quiet builds.") opt.add_option("--net-test-config", - default = "config.inc", - dest = "net_config", - help = "Network test configuration.") + default="config.inc", + dest="net_config", + help="Network test configuration.") opt.add_option("--freebsd-options", - action = "store", - default = "", - dest = "freebsd_options", - help = "Set FreeBSD options (developer option).") - opt.add_option("--optimization", - action = "store", - default = "2", - dest = "optimization", - help = "Set optimization level to OPTIMIZATION (-On compiler flag). Default is 2 (-O2).") - opt.add_option("--buildset", - action = "append", - default = [], - dest = "buildset", - help = "Select build sets to build. If set to a directory, all .ini file in this directory will be used.") + action="store", + default="", + dest="freebsd_options", + help="Set FreeBSD options (developer option).") + opt.add_option( + "--optimization", + action="store", + default="2", + dest="optimization", + help= + "Set optimization level to OPTIMIZATION (-On compiler flag). Default is 2 (-O2)." + ) + opt.add_option( + "--buildset", + action="append", + default=[], + dest="buildset", + help= + "Select build sets to build. If set to a directory," \ + " all .ini file in this directory will be used." + ) + def bsp_configure(conf, arch_bsp): - conf.check(header_name = "dlfcn.h", features = "c") - conf.check(header_name = "rtems/pci.h", features = "c", mandatory = False) + conf.check(header_name="dlfcn.h", features="c") + conf.check(header_name="rtems/pci.h", features="c", mandatory=False) if not rtems.check_posix(conf): - conf.fatal("RTEMS kernel POSIX support is disabled; configure RTEMS with --enable-posix") + conf.fatal( + "RTEMS kernel POSIX support is disabled; configure RTEMS with --enable-posix" + ) if rtems.check_networking(conf): - conf.fatal("RTEMS kernel contains the old network support; configure RTEMS with --disable-networking") + conf.fatal( + "RTEMS kernel contains the old network support;" \ + " configure RTEMS with --disable-networking" + ) env = conf.env.derive() for builder in builders: ab = conf.env.RTEMS_ARCH_BSP @@ -210,15 +237,16 @@ def bsp_configure(conf, arch_bsp): builders[builder].bsp_configure(conf, arch_bsp) conf.setenv(ab) + def configure(conf): if conf.options.auto_regen: - conf.find_program("lex", mandatory = True) - conf.find_program("rpcgen", mandatory = True) - conf.find_program("yacc", mandatory = True) + conf.find_program("lex", mandatory=True) + conf.find_program("rpcgen", mandatory=True) + conf.find_program("yacc", mandatory=True) conf.env.AUTO_REGEN = conf.options.auto_regen conf.env.WARNINGS = conf.options.warnings conf.env.NET_CONFIG = conf.options.net_config - conf.env.FREEBSD_OPTIONS =conf.options.freebsd_options + conf.env.FREEBSD_OPTIONS = conf.options.freebsd_options conf.env.OPTIMIZATION = conf.options.optimization conf.env.BUILDSET = conf.options.buildset if len(conf.env.BUILDSET) == 0: @@ -226,9 +254,11 @@ def configure(conf): update_builders(conf, conf.env.BUILDSET) rtems.configure(conf, bsp_configure) + def test(bld): rtems.test_uninstall(bld) + def build(bld): rtems.build(bld) builders[bld.libbsd_buildset_name].build(bld) -- cgit v1.2.3