From: Andrejs Cainikovs <andrejs.cainikovs@toradex.com>
To: Simon Glass <sjg@chromium.org>
Cc: U-Boot Mailing List <u-boot@lists.denx.de>,
Tom Rini <trini@konsulko.com>,
Alexey Brodkin <Alexey.Brodkin@synopsys.com>,
Heinrich Schuchardt <xypron.glpk@gmx.de>,
Quentin Schulz <quentin.schulz@cherry.de>
Subject: Re: [PATCH v3 4/6] buildman: Always use the full path in CROSS_COMPILE
Date: Tue, 25 Jun 2024 17:16:28 +0200 [thread overview]
Message-ID: <ZnrfTOKroizhiPvY@toradex.com> (raw)
In-Reply-To: <CAFLszTgKvEUVEGOUnuiSzVD3TQE2UjwdFS9Dm8sBpwbw9guaww@mail.gmail.com>
On Tue, Jun 25, 2024 at 01:38:07PM +0100, Simon Glass wrote:
> Hi Andrejs,
>
> On Tue, 25 Jun 2024 at 01:06, Andrejs Cainikovs
> <andrejs.cainikovs@toradex.com> wrote:
> >
> > On Sun, Jun 23, 2024 at 11:56:20AM -0600, Simon Glass wrote:
> > > The feature to set the toolchain path does not seem to be needed. It
> > > causes problems with venv (see [1]). Let's remove it.
> > >
> > > Add some tests while we are here.
> > >
> > > It does not look like any docs changes are needed for this.
> > >
> > > [1] https://patchwork.ozlabs.org/project/uboot/patch/20240621131423.2363294-6-sjg@chromium.org/
> > >
> > > Signed-off-by: Simon Glass <sjg@chromium.org>
> > > Suggested-by: Tom Rini <trini@konsulko.com>
> > > ---
> > >
> > > Changes in v3:
> > > - Drop the PATH modification altogether
> > >
> > > tools/buildman/bsettings.py | 3 ++
> > > tools/buildman/builder.py | 5 +--
> > > tools/buildman/builderthread.py | 4 +-
> > > tools/buildman/cmdline.py | 2 -
> > > tools/buildman/control.py | 6 +--
> > > tools/buildman/test.py | 75 +++++++++++++++++++++++++++++++++
> > > tools/buildman/toolchain.py | 20 ++++-----
> > > 7 files changed, 92 insertions(+), 23 deletions(-)
> > >
> > > diff --git a/tools/buildman/bsettings.py b/tools/buildman/bsettings.py
> > > index e225ac2ca0f..1be1d45e0fa 100644
> > > --- a/tools/buildman/bsettings.py
> > > +++ b/tools/buildman/bsettings.py
> > > @@ -31,6 +31,9 @@ def setup(fname=''):
> > > def add_file(data):
> > > settings.readfp(io.StringIO(data))
> > >
> > > +def add_section(name):
> > > + settings.add_section(name)
> > > +
> > > def get_items(section):
> > > """Get the items from a section of the config.
> > >
> > > diff --git a/tools/buildman/builder.py b/tools/buildman/builder.py
> > > index f35175b4598..7c563cddada 100644
> > > --- a/tools/buildman/builder.py
> > > +++ b/tools/buildman/builder.py
> > > @@ -255,7 +255,7 @@ class Builder:
> > >
> > > def __init__(self, toolchains, base_dir, git_dir, num_threads, num_jobs,
> > > gnu_make='make', checkout=True, show_unknown=True, step=1,
> > > - no_subdirs=False, full_path=False, verbose_build=False,
> > > + no_subdirs=False, verbose_build=False,
> > > mrproper=False, per_board_out_dir=False,
> > > config_only=False, squash_config_y=False,
> > > warnings_as_errors=False, work_in_output=False,
> > > @@ -279,8 +279,6 @@ class Builder:
> > > step: 1 to process every commit, n to process every nth commit
> > > no_subdirs: Don't create subdirectories when building current
> > > source for a single board
> > > - full_path: Return the full path in CROSS_COMPILE and don't set
> > > - PATH
> > > verbose_build: Run build with V=1 and don't use 'make -s'
> > > mrproper: Always run 'make mrproper' when configuring
> > > per_board_out_dir: Build in a separate persistent directory per
> > > @@ -336,7 +334,6 @@ class Builder:
> > > self._step = step
> > > self._error_lines = 0
> > > self.no_subdirs = no_subdirs
> > > - self.full_path = full_path
> > > self.verbose_build = verbose_build
> > > self.config_only = config_only
> > > self.squash_config_y = squash_config_y
> > > diff --git a/tools/buildman/builderthread.py b/tools/buildman/builderthread.py
> > > index a8599c0bb2a..c23c3254d2d 100644
> > > --- a/tools/buildman/builderthread.py
> > > +++ b/tools/buildman/builderthread.py
> > > @@ -404,7 +404,7 @@ class BuilderThread(threading.Thread):
> > > the next incremental build
> > > """
> > > # Set up the environment and command line
> > > - env = self.toolchain.MakeEnvironment(self.builder.full_path)
> > > + env = self.toolchain.MakeEnvironment()
> > > mkdir(out_dir)
> > >
> > > args, cwd, src_dir = self._build_args(brd, out_dir, out_rel_dir,
> > > @@ -569,7 +569,7 @@ class BuilderThread(threading.Thread):
> > > outf.write(f'{result.return_code}')
> > >
> > > # Write out the image and function size information and an objdump
> > > - env = result.toolchain.MakeEnvironment(self.builder.full_path)
> > > + env = result.toolchain.MakeEnvironment()
> > > with open(os.path.join(build_dir, 'out-env'), 'wb') as outf:
> > > for var in sorted(env.keys()):
> > > outf.write(b'%s="%s"' % (var, env[var]))
> > > diff --git a/tools/buildman/cmdline.py b/tools/buildman/cmdline.py
> > > index 03211bd5aa5..5fda90508f2 100644
> > > --- a/tools/buildman/cmdline.py
> > > +++ b/tools/buildman/cmdline.py
> > > @@ -121,8 +121,6 @@ def add_after_m(parser):
> > > help="Override host toochain to use for sandbox (e.g. 'clang-7')")
> > > parser.add_argument('-Q', '--quick', action='store_true',
> > > default=False, help='Do a rough build, with limited warning resolution')
> > > - parser.add_argument('-p', '--full-path', action='store_true',
> > > - default=False, help="Use full toolchain path in CROSS_COMPILE")
> > > parser.add_argument('-P', '--per-board-out-dir', action='store_true',
> > > default=False, help="Use an O= (output) directory per board rather than per thread")
> > > parser.add_argument('--print-arch', action='store_true',
> > > diff --git a/tools/buildman/control.py b/tools/buildman/control.py
> > > index 8f6850c5211..3ca9e2e8761 100644
> > > --- a/tools/buildman/control.py
> > > +++ b/tools/buildman/control.py
> > > @@ -653,10 +653,8 @@ def do_buildman(args, toolchains=None, make_func=None, brds=None,
> > > builder = Builder(toolchains, output_dir, git_dir,
> > > args.threads, args.jobs, checkout=True,
> > > show_unknown=args.show_unknown, step=args.step,
> > > - no_subdirs=args.no_subdirs, full_path=args.full_path,
> > > - verbose_build=args.verbose_build,
> > > - mrproper=args.mrproper,
> > > - per_board_out_dir=args.per_board_out_dir,
> > > + no_subdirs=args.no_subdirs, verbose_build=args.verbose_build,
> > > + mrproper=args.mrproper, per_board_out_dir=args.per_board_out_dir,
> > > config_only=args.config_only,
> > > squash_config_y=not args.preserve_config_y,
> > > warnings_as_errors=args.warnings_as_errors,
> > > diff --git a/tools/buildman/test.py b/tools/buildman/test.py
> > > index f92add7a7c5..ae9963eed4f 100644
> > > --- a/tools/buildman/test.py
> > > +++ b/tools/buildman/test.py
> > > @@ -146,6 +146,7 @@ class TestBuild(unittest.TestCase):
> > > self.toolchains.Add('arm-linux-gcc', test=False)
> > > self.toolchains.Add('sparc-linux-gcc', test=False)
> > > self.toolchains.Add('powerpc-linux-gcc', test=False)
> > > + self.toolchains.Add('/path/to/aarch64-linux-gcc', test=False)
> >
> > Sorry Simon, but me and others love to be consistent.
>
> That's fine, but do you have a comment on this patch?
>
> Regards,
> Simon
I was just thinking about aarch64-linux-gcc (should it be
aarch64-linux-gnu-gcc, btw?) without path for consistency.
But this of course is very minor - feel free to disregard my
comment.
Best regards,
Andrejs.
next prev parent reply other threads:[~2024-06-26 1:59 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-06-23 17:56 [PATCH v3 0/6] Add Binman code-coverage test to CI Simon Glass
2024-06-23 17:56 ` [PATCH v3 1/6] buildman: Add python3-coverage Simon Glass
2024-07-15 13:31 ` Simon Glass
2024-06-23 17:56 ` [PATCH v3 2/6] buildman: Add python3-pycryptodome Simon Glass
2024-07-15 13:31 ` Simon Glass
2024-06-23 17:56 ` [PATCH v3 3/6] buildman: Fix a few typos in toolchain code Simon Glass
2024-07-15 13:31 ` Simon Glass
2024-06-23 17:56 ` [PATCH v3 4/6] buildman: Always use the full path in CROSS_COMPILE Simon Glass
2024-06-24 15:49 ` Tom Rini
2024-06-25 0:06 ` Andrejs Cainikovs
2024-06-25 12:38 ` Simon Glass
2024-06-25 15:16 ` Andrejs Cainikovs [this message]
2024-06-26 8:00 ` Simon Glass
2024-06-26 8:43 ` Andrejs Cainikovs
2024-07-15 13:31 ` Simon Glass
2024-06-23 17:56 ` [PATCH v3 5/6] u_boot_pylib: Use correct coverage tool within venv Simon Glass
2024-07-15 13:31 ` Simon Glass
2024-06-23 17:56 ` [PATCH v3 6/6] CI: Run code-coverage test for Binman Simon Glass
2024-06-24 15:49 ` Tom Rini
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=ZnrfTOKroizhiPvY@toradex.com \
--to=andrejs.cainikovs@toradex.com \
--cc=Alexey.Brodkin@synopsys.com \
--cc=quentin.schulz@cherry.de \
--cc=sjg@chromium.org \
--cc=trini@konsulko.com \
--cc=u-boot@lists.denx.de \
--cc=xypron.glpk@gmx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.