public inbox for libc-alpha@sourceware.org
 help / color / mirror / Atom feed
From: "H.J. Lu" <hjl.tools@gmail.com>
To: Adhemerval Zanella <adhemerval.zanella@linaro.org>
Cc: GNU C Library <libc-alpha@sourceware.org>,
	Florian Weimer <fweimer@redhat.com>
Subject: Re: [PATCH] elf: Use a temporary file to generate Makefile fragments [BZ #28550]
Date: Tue, 16 Nov 2021 05:15:03 -0800	[thread overview]
Message-ID: <CAMe9rOr74R7JbDTeeFUWHjok_bSPXSck5RkzmnQFD9bp0w5cFg@mail.gmail.com> (raw)
In-Reply-To: <6a1c82dd-41fb-7154-f133-7799d7d64305@linaro.org>

On Tue, Nov 16, 2021 at 4:52 AM Adhemerval Zanella
<adhemerval.zanella@linaro.org> wrote:
>
>
>
> On 16/11/2021 01:48, H.J. Lu wrote:
> >
> > This works for me.
> >
> > Thanks.
> >
>
> > From a928b52c036bb888797b3e81014f441f0d876b65 Mon Sep 17 00:00:00 2001
> > From: "H.J. Lu" <hjl.tools@gmail.com>
> > Date: Mon, 15 Nov 2021 16:28:39 -0800
> > Subject: [PATCH] elf: Use a temporary file to generate Makefile fragments [BZ
> >  #28550]
> >
> > Use a temporary file to generate Makefile fragments for DSO sorting tests
> > and use -include on them.
> >
> > This partially fixes BZ #28550.
> > ---
> >  elf/Makefile | 5 +++--
> >  1 file changed, 3 insertions(+), 2 deletions(-)
> >
> > diff --git a/elf/Makefile b/elf/Makefile
> > index a311c3e23c..57374fc690 100644
> > --- a/elf/Makefile
> > +++ b/elf/Makefile
> > @@ -498,8 +498,9 @@ endif
> >  define include_dsosort_tests
> >  $(objpfx)$(1).generated-makefile: $(1)
> >       $(PYTHON) $(..)scripts/dso-ordering-test.py \
> > -     --description-file $$< --objpfx $(objpfx) --output-makefile $$@
> > -include $(objpfx)$(1).generated-makefile
> > +     --description-file $$< --objpfx $(objpfx) --output-makefile $$@T
> > +     mv $$@T $$@
> > +-include $(objpfx)$(1).generated-makefile
> >  endef
> >
> >  # Generate from each testcase description file
> > --
> > 2.33.1
>
> I think you need the below on top of your patch.  The 'avoid-generated' and
> 'postclean-generated' are required so a 'make clean' removes the autogenerated
> fragments so a subsequent 'make' regenerates them.

Fixed in the v2 patch.

Thanks.

> diff --git a/elf/Makefile b/elf/Makefile
> index 57374fc690..31759279d4 100644
> --- a/elf/Makefile
> +++ b/elf/Makefile
> @@ -491,6 +491,7 @@ tests-special += $(objpfx)order-cmp.out $(objpfx)tst-array1-cmp.out \
>                  $(objpfx)tst-unused-dep-cmp.out
>  endif
>
> +ifndef avoid-generated
>  # DSO sorting tests:
>  # The dso-ordering-test.py script generates testcase source files in $(objpfx),
>  # creating a $(objpfx)<testcase-name>-dir for each testcase, and creates a
> @@ -508,6 +509,9 @@ ifeq (yes,$(have-tunables))
>  $(eval $(call include_dsosort_tests,dso-sort-tests-1.def))
>  $(eval $(call include_dsosort_tests,dso-sort-tests-2.def))
>  endif
> +endif
> +postclean-generated += $(objpfx)/dso-sort-tests-2.generated-makefile \
> +                      $(objpfx)/dso-sort-tests-2.generated-makefile
>
>  check-abi: $(objpfx)check-abi-ld.out
>  tests-special += $(objpfx)check-abi-ld.out



-- 
H.J.

  reply	other threads:[~2021-11-16 13:15 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-11-08 15:42 [PATCH v2 0/2] Update Makefile fragments for DSO sorting tests H.J. Lu
2021-11-08 15:42 ` [PATCH v2 1/2] dso-ordering-test.py: Put all sources in one directory [BZ #28550] H.J. Lu
2021-11-11 17:52   ` Chung-Lin Tang
2021-11-11 18:21     ` H.J. Lu
2021-11-15 18:50   ` Adhemerval Zanella
2021-11-08 15:42 ` [PATCH v2 2/2] elf: Pre-generate Makefile fragment for DSO sorting tests " H.J. Lu
2021-11-15 18:59   ` Adhemerval Zanella
2021-11-15 19:51     ` H.J. Lu
2021-11-15 20:18       ` Adhemerval Zanella
2021-11-16  4:48         ` [PATCH] elf: Use a temporary file to generate Makefile fragments " H.J. Lu
2021-11-16 12:52           ` Adhemerval Zanella
2021-11-16 13:15             ` H.J. Lu [this message]
2021-11-11 13:46 ` [PATCH v2 0/2] Update Makefile fragments for DSO sorting tests H.J. Lu
2021-11-11 14:05   ` Adhemerval Zanella
2021-11-15 14:43     ` H.J. Lu

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=CAMe9rOr74R7JbDTeeFUWHjok_bSPXSck5RkzmnQFD9bp0w5cFg@mail.gmail.com \
    --to=hjl.tools@gmail.com \
    --cc=adhemerval.zanella@linaro.org \
    --cc=fweimer@redhat.com \
    --cc=libc-alpha@sourceware.org \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).