Re: [PATCH 4/4] build: Switch to new openssl API for test-libcrypto

From: Arnaldo Carvalho de Melo
Date: Tue Aug 09 2022 - 15:19:04 EST


Em Tue, Aug 09, 2022 at 04:04:46PM -0300, Arnaldo Carvalho de Melo escreveu:
> Em Tue, Aug 09, 2022 at 10:00:34AM -0700, Andres Freund escreveu:
> > Hi,
> >
> > On 2022-08-09 12:21:15 -0300, Arnaldo Carvalho de Melo wrote:
> > > So I backtracked, the way it works needs further consideration with
> > > regard to the patchkit from Andres, that is already upstream, so it
> > > would be good for Roberto to take a look at what is in torvalds/master
> > > now and see if we have to removed that styled thing from Andres.
> >
> > Why would it have to be removed - seems to be fairly independent, leaving the
> > line conflicts aside? Or do you just mean folding it into one-big-test? If so,
> > that'd make sense, although I'm not sure how ready the infrastructure
>
> So below is the 3rd patch in Roberto's patchkit adapted, I removed the
> FEATURE_CHECK_LDFLAGS-disassembler-init-styled setting as we now
> automatically try with multiple sets of libraries, as with
> disassembler-four-args.

The following also had to be done:

⬢[acme@toolbox perf]$ git log --oneline -1
aa119945023c4ee7 (HEAD) tools, build: Retry detection of bfd-related features
⬢[acme@toolbox perf]$ git diff
diff --git a/tools/build/feature/Makefile b/tools/build/feature/Makefile
index 928ebc355fb3f2d0..04b07ff8823487a0 100644
--- a/tools/build/feature/Makefile
+++ b/tools/build/feature/Makefile
@@ -253,7 +253,8 @@ $(OUTPUT)test-disassembler-four-args.bin:
$(BUILD_BFD) -lopcodes -liberty -lz

$(OUTPUT)test-disassembler-init-styled.bin:
- $(BUILD) -DPACKAGE='"perf"' -lbfd -lopcodes
+ $(BUILD_BFD) -lopcodes || $(BUILD_BFD) -lopcodes -liberty || \
+ $(BUILD_BFD) -lopcodes -liberty -lz

$(OUTPUT)test-reallocarray.bin:
$(BUILD)
⬢[acme@toolbox perf]$

> - Arnaldo
>
> diff --git a/tools/perf/Makefile.config b/tools/perf/Makefile.config
> index 23648ea54e8d3d2c..0661a1cf98556ed3 100644
> --- a/tools/perf/Makefile.config
> +++ b/tools/perf/Makefile.config
> @@ -297,9 +297,6 @@ FEATURE_CHECK_LDFLAGS-libpython := $(PYTHON_EMBED_LDOPTS)
>
> FEATURE_CHECK_LDFLAGS-libaio = -lrt
>
> -FEATURE_CHECK_LDFLAGS-disassembler-four-args = -lbfd -lopcodes -ldl
> -FEATURE_CHECK_LDFLAGS-disassembler-init-styled = -lbfd -lopcodes -ldl
> -
> CORE_CFLAGS += -fno-omit-frame-pointer
> CORE_CFLAGS += -ggdb3
> CORE_CFLAGS += -funwind-tables
> @@ -329,8 +326,8 @@ ifneq ($(TCMALLOC),)
> endif
>
> ifeq ($(FEATURES_DUMP),)
> -# We will display at the end of this Makefile.config, using $(call feature_display_entries)
> -# As we may retry some feature detection here, see the disassembler-four-args case, for instance
> +# We will display at the end of this Makefile.config, using $(call feature_display_entries),
> +# as we may retry some feature detection here.
> FEATURE_DISPLAY_DEFERRED := 1
> include $(srctree)/tools/build/Makefile.feature
> else
> @@ -924,13 +921,9 @@ ifndef NO_LIBBFD
>
> ifeq ($(feature-libbfd-liberty), 1)
> EXTLIBS += -lbfd -lopcodes -liberty
> - FEATURE_CHECK_LDFLAGS-disassembler-four-args += -liberty -ldl
> - FEATURE_CHECK_LDFLAGS-disassembler-init-styled += -liberty -ldl
> else
> ifeq ($(feature-libbfd-liberty-z), 1)
> EXTLIBS += -lbfd -lopcodes -liberty -lz
> - FEATURE_CHECK_LDFLAGS-disassembler-four-args += -liberty -lz -ldl
> - FEATURE_CHECK_LDFLAGS-disassembler-init-styled += -liberty -lz -ldl
> endif
> endif
> $(call feature_check,disassembler-four-args)
> @@ -1356,7 +1349,7 @@ endif
>
> # re-generate FEATURE-DUMP as we may have called feature_check, found out
> # extra libraries to add to LDFLAGS of some other test and then redo those
> -# tests, see the block about libbfd, disassembler-four-args, for instance.
> +# tests.
> $(shell rm -f $(FEATURE_DUMP_FILENAME))
> $(foreach feat,$(FEATURE_TESTS),$(shell echo "$(call feature_assign,$(feat))" >> $(FEATURE_DUMP_FILENAME)))
>
>
> >
> > FWIW, if I would have to maintain these, I'd probably change FEATURE_TESTS,
> > FEATURE_DISPLAY into one-item-per-line to make conflicts less common and
> > easier to resolve.
> >
> >
> > > Andres, if you could take a look at Roberto's patchkit as well that
> > > would be great.
> >
> > I briefly scanned it, and the only real comment I have mirror's Quentin's,
> > namely that it'd be nice to avoid displaying more tests that don't tell the
> > user much.
> >
> > Greetings,
> >
> > Andres Freund
>
> --
>
> - Arnaldo

--

- Arnaldo