Build tests in %check and without LTO
The patch which enables the split build is backported from https://github.com/openssl/openssl/pull/28302. Resolves: RHEL-111634
This commit is contained in:
parent
10f6d8e74b
commit
1c469fd6d2
153
0057-Targets-to-skip-build-of-non-installable-programs.patch
Normal file
153
0057-Targets-to-skip-build-of-non-installable-programs.patch
Normal file
@ -0,0 +1,153 @@
|
|||||||
|
From b96746b02cff910f4cd3787fddc042f7e3fb4956 Mon Sep 17 00:00:00 2001
|
||||||
|
From: =?UTF-8?q?Pavol=20=C5=BD=C3=A1=C4=8Dik?= <zacik.pa@gmail.com>
|
||||||
|
Date: Tue, 19 Aug 2025 14:26:07 +0200
|
||||||
|
Subject: [PATCH] Add targets to skip build of non-installable programs
|
||||||
|
|
||||||
|
These make it possible to split the build into two
|
||||||
|
parts, e.g., when tests should be built with different
|
||||||
|
compiler flags than installed software.
|
||||||
|
|
||||||
|
Also use these as dependecies where appropriate.
|
||||||
|
---
|
||||||
|
Configurations/descrip.mms.tmpl | 7 +++++--
|
||||||
|
Configurations/unix-Makefile.tmpl | 9 ++++++---
|
||||||
|
Configurations/windows-makefile.tmpl | 8 ++++++--
|
||||||
|
util/help.pl | 2 +-
|
||||||
|
4 files changed, 18 insertions(+), 8 deletions(-)
|
||||||
|
|
||||||
|
diff --git a/Configurations/descrip.mms.tmpl b/Configurations/descrip.mms.tmpl
|
||||||
|
index db6a1b1799..bc7fc36b46 100644
|
||||||
|
--- a/Configurations/descrip.mms.tmpl
|
||||||
|
+++ b/Configurations/descrip.mms.tmpl
|
||||||
|
@@ -491,6 +491,8 @@ NODEBUG=@
|
||||||
|
{- dependmagic('build_libs'); -} : build_libs_nodep
|
||||||
|
{- dependmagic('build_modules'); -} : build_modules_nodep
|
||||||
|
{- dependmagic('build_programs'); -} : build_programs_nodep
|
||||||
|
+{- dependmagic('build_inst_sw'); -} : build_libs_nodep, build_modules_nodep, build_inst_programs_nodep
|
||||||
|
+{- dependmagic('build_inst_programs'); -} : build_inst_programs_nodep
|
||||||
|
|
||||||
|
build_generated_pods : $(GENERATED_PODS)
|
||||||
|
build_docs : build_html_docs
|
||||||
|
@@ -500,6 +502,7 @@ build_generated : $(GENERATED_MANDATORY)
|
||||||
|
build_libs_nodep : $(LIBS), $(SHLIBS)
|
||||||
|
build_modules_nodep : $(MODULES)
|
||||||
|
build_programs_nodep : $(PROGRAMS), $(SCRIPTS)
|
||||||
|
+build_inst_programs_nodep : $(INSTALL_PROGRAMS), $(SCRIPTS)
|
||||||
|
|
||||||
|
# Kept around for backward compatibility
|
||||||
|
build_apps build_tests : build_programs
|
||||||
|
@@ -606,7 +609,7 @@ install_docs : install_html_docs
|
||||||
|
uninstall_docs : uninstall_html_docs
|
||||||
|
|
||||||
|
{- output_off() if $disabled{fips}; "" -}
|
||||||
|
-install_fips : build_sw $(INSTALL_FIPSMODULECONF)
|
||||||
|
+install_fips : build_inst_sw $(INSTALL_FIPSMODULECONF)
|
||||||
|
@ WRITE SYS$OUTPUT "*** Installing FIPS module"
|
||||||
|
- CREATE/DIR ossl_installroot:[MODULES{- $target{pointer_size} -}.'arch']
|
||||||
|
- CREATE/DIR/PROT=(S:RWED,O:RWE,G:RE,W:RE) OSSL_DATAROOT:[000000]
|
||||||
|
@@ -687,7 +690,7 @@ install_runtime_libs : check_INSTALLTOP build_libs
|
||||||
|
@install_shlibs) -}
|
||||||
|
@ {- output_on() if $disabled{shared}; "" -} !
|
||||||
|
|
||||||
|
-install_programs : check_INSTALLTOP install_runtime_libs build_programs
|
||||||
|
+install_programs : check_INSTALLTOP install_runtime_libs build_inst_programs
|
||||||
|
@ {- output_off() if $disabled{apps}; "" -} !
|
||||||
|
@ ! Install the main program
|
||||||
|
- CREATE/DIR ossl_installroot:[EXE.'arch']
|
||||||
|
diff --git a/Configurations/unix-Makefile.tmpl b/Configurations/unix-Makefile.tmpl
|
||||||
|
index 70ac47b73c..98c11f7a0f 100644
|
||||||
|
--- a/Configurations/unix-Makefile.tmpl
|
||||||
|
+++ b/Configurations/unix-Makefile.tmpl
|
||||||
|
@@ -531,7 +531,9 @@ LANG=C
|
||||||
|
{- dependmagic('build_sw', 'Build all the software (default target)'); -}: build_libs_nodep build_modules_nodep build_programs_nodep link-utils
|
||||||
|
{- dependmagic('build_libs', 'Build the libraries libssl and libcrypto'); -}: build_libs_nodep
|
||||||
|
{- dependmagic('build_modules', 'Build the modules (i.e. providers and engines)'); -}: build_modules_nodep
|
||||||
|
-{- dependmagic('build_programs', 'Build the openssl executables and scripts'); -}: build_programs_nodep
|
||||||
|
+{- dependmagic('build_programs', 'Build the openssl executables, scripts and all other programs as configured (e.g. tests or demos)'); -}: build_programs_nodep
|
||||||
|
+{- dependmagic('build_inst_sw', 'Build all the software to be installed'); -}: build_libs_nodep build_modules_nodep build_inst_programs_nodep link-utils
|
||||||
|
+{- dependmagic('build_inst_programs', 'Build only the installable openssl executables and scripts'); -}: build_inst_programs_nodep
|
||||||
|
|
||||||
|
all: build_sw {- "build_docs" if !$disabled{docs}; -} ## Build software and documentation
|
||||||
|
debuginfo: $(SHLIBS)
|
||||||
|
@@ -553,6 +555,7 @@ build_generated: $(GENERATED_MANDATORY)
|
||||||
|
build_libs_nodep: $(LIBS) {- join(" ",map { platform->sharedlib_simple($_) // platform->sharedlib_import($_) // platform->sharedlib($_) // () } @{$unified_info{libraries}}) -}
|
||||||
|
build_modules_nodep: $(MODULES)
|
||||||
|
build_programs_nodep: $(PROGRAMS) $(SCRIPTS)
|
||||||
|
+build_inst_programs_nodep: $(INSTALL_PROGRAMS) $(SCRIPTS)
|
||||||
|
|
||||||
|
# Kept around for backward compatibility
|
||||||
|
build_apps build_tests: build_programs
|
||||||
|
@@ -671,7 +674,7 @@ uninstall_docs: uninstall_man_docs uninstall_html_docs ## Uninstall manpages and
|
||||||
|
$(RM) -r "$(DESTDIR)$(DOCDIR)"
|
||||||
|
|
||||||
|
{- output_off() if $disabled{fips}; "" -}
|
||||||
|
-install_fips: build_sw $(INSTALL_FIPSMODULECONF)
|
||||||
|
+install_fips: build_inst_sw $(INSTALL_FIPSMODULECONF)
|
||||||
|
@[ -n "$(INSTALLTOP)" ] || (echo INSTALLTOP should not be empty; exit 1)
|
||||||
|
@$(PERL) $(SRCDIR)/util/mkdir-p.pl "$(DESTDIR)$(MODULESDIR)"
|
||||||
|
@$(PERL) $(SRCDIR)/util/mkdir-p.pl "$(DESTDIR)$(OPENSSLDIR)"
|
||||||
|
@@ -956,7 +959,7 @@ install_runtime_libs: build_libs
|
||||||
|
: {- output_on() if windowsdll(); "" -}; \
|
||||||
|
done
|
||||||
|
|
||||||
|
-install_programs: install_runtime_libs build_programs
|
||||||
|
+install_programs: install_runtime_libs build_inst_programs
|
||||||
|
@[ -n "$(INSTALLTOP)" ] || (echo INSTALLTOP should not be empty; exit 1)
|
||||||
|
@$(PERL) $(SRCDIR)/util/mkdir-p.pl "$(DESTDIR)$(bindir)"
|
||||||
|
@$(ECHO) "*** Installing runtime programs"
|
||||||
|
diff --git a/Configurations/windows-makefile.tmpl b/Configurations/windows-makefile.tmpl
|
||||||
|
index 894834cfb7..b5872124de 100644
|
||||||
|
--- a/Configurations/windows-makefile.tmpl
|
||||||
|
+++ b/Configurations/windows-makefile.tmpl
|
||||||
|
@@ -418,6 +418,8 @@ PROCESSOR= {- $config{processor} -}
|
||||||
|
{- dependmagic('build_libs'); -}: build_libs_nodep
|
||||||
|
{- dependmagic('build_modules'); -}: build_modules_nodep
|
||||||
|
{- dependmagic('build_programs'); -}: build_programs_nodep
|
||||||
|
+{- dependmagic('build_inst_sw'); -}: build_libs_nodep build_modules_nodep build_inst_programs_nodep copy-utils
|
||||||
|
+{- dependmagic('build_inst_programs'); -}: build_inst_programs_nodep
|
||||||
|
|
||||||
|
build_docs: build_html_docs
|
||||||
|
build_html_docs: $(HTMLDOCS1) $(HTMLDOCS3) $(HTMLDOCS5) $(HTMLDOCS7)
|
||||||
|
@@ -430,6 +432,8 @@ build_modules_nodep: $(MODULES)
|
||||||
|
@
|
||||||
|
build_programs_nodep: $(PROGRAMS) $(SCRIPTS)
|
||||||
|
@
|
||||||
|
+build_inst_programs_nodep: $(INSTALL_PROGRAMS) $(SCRIPTS)
|
||||||
|
+ @
|
||||||
|
|
||||||
|
# Kept around for backward compatibility
|
||||||
|
build_apps build_tests: build_programs
|
||||||
|
@@ -507,7 +511,7 @@ install_docs: install_html_docs
|
||||||
|
uninstall_docs: uninstall_html_docs
|
||||||
|
|
||||||
|
{- output_off() if $disabled{fips}; "" -}
|
||||||
|
-install_fips: build_sw $(INSTALL_FIPSMODULECONF)
|
||||||
|
+install_fips: build_inst_sw $(INSTALL_FIPSMODULECONF)
|
||||||
|
# @[ -n "$(INSTALLTOP)" ] || (echo INSTALLTOP should not be empty; exit 1)
|
||||||
|
@"$(PERL)" "$(SRCDIR)\util\mkdir-p.pl" "$(MODULESDIR)"
|
||||||
|
@"$(PERL)" "$(SRCDIR)\util\mkdir-p.pl" "$(OPENSSLDIR)"
|
||||||
|
@@ -607,7 +611,7 @@ install_runtime_libs: build_libs
|
||||||
|
"$(PERL)" "$(SRCDIR)\util\copy.pl" $(INSTALL_SHLIBPDBS) \
|
||||||
|
"$(INSTALLTOP)\bin"
|
||||||
|
|
||||||
|
-install_programs: install_runtime_libs build_programs
|
||||||
|
+install_programs: install_runtime_libs build_inst_programs
|
||||||
|
@if "$(INSTALLTOP)"=="" ( $(ECHO) "INSTALLTOP should not be empty" & exit 1 )
|
||||||
|
@$(ECHO) "*** Installing runtime programs"
|
||||||
|
@if not "$(INSTALL_PROGRAMS)"=="" \
|
||||||
|
diff --git a/util/help.pl b/util/help.pl
|
||||||
|
index a1614fe8a9..e88ff4bae1 100755
|
||||||
|
--- a/util/help.pl
|
||||||
|
+++ b/util/help.pl
|
||||||
|
@@ -14,7 +14,7 @@ while (<>) {
|
||||||
|
chomp; # strip record separator
|
||||||
|
@Fld = split($FS, $_, -1);
|
||||||
|
if (/^[a-zA-Z0-9_\-]+:.*?##/) {
|
||||||
|
- printf " \033[36m%-15s\033[0m %s\n", $Fld[0], $Fld[1]
|
||||||
|
+ printf " \033[36m%-19s\033[0m %s\n", $Fld[0], $Fld[1]
|
||||||
|
}
|
||||||
|
if (/^##@/) {
|
||||||
|
printf "\n\033[1m%s\033[0m\n", substr($Fld[$_], (5)-1);
|
||||||
|
--
|
||||||
|
2.50.1
|
||||||
|
|
16
openssl.spec
16
openssl.spec
@ -29,7 +29,7 @@ print(string.sub(hash, 0, 16))
|
|||||||
Summary: Utilities from the general purpose cryptography library with TLS implementation
|
Summary: Utilities from the general purpose cryptography library with TLS implementation
|
||||||
Name: openssl
|
Name: openssl
|
||||||
Version: 3.5.1
|
Version: 3.5.1
|
||||||
Release: 3%{?dist}
|
Release: 4%{?dist}
|
||||||
Epoch: 1
|
Epoch: 1
|
||||||
Source0: openssl-%{version}.tar.gz
|
Source0: openssl-%{version}.tar.gz
|
||||||
Source1: fips-hmacify.sh
|
Source1: fips-hmacify.sh
|
||||||
@ -98,6 +98,7 @@ Patch0053: 0053-Allow-hybrid-MLKEM-in-FIPS-mode.patch
|
|||||||
Patch0054: 0054-Temporarily-disable-SLH-DSA-FIPS-self-tests.patch
|
Patch0054: 0054-Temporarily-disable-SLH-DSA-FIPS-self-tests.patch
|
||||||
Patch0055: 0055-Add-a-define-to-disable-symver-attributes.patch
|
Patch0055: 0055-Add-a-define-to-disable-symver-attributes.patch
|
||||||
Patch0056: 0056-Speed-test-signatures-without-errors.patch
|
Patch0056: 0056-Speed-test-signatures-without-errors.patch
|
||||||
|
Patch0057: 0057-Targets-to-skip-build-of-non-installable-programs.patch
|
||||||
|
|
||||||
License: Apache-2.0
|
License: Apache-2.0
|
||||||
URL: http://www.openssl.org/
|
URL: http://www.openssl.org/
|
||||||
@ -265,7 +266,7 @@ export HASHBANGPERL=/usr/bin/perl
|
|||||||
# Do not run this in a production package the FIPS symbols must be patched-in
|
# Do not run this in a production package the FIPS symbols must be patched-in
|
||||||
#util/mkdef.pl crypto update
|
#util/mkdef.pl crypto update
|
||||||
|
|
||||||
make -s %{?_smp_mflags} all
|
make -s %{?_smp_mflags} build_inst_sw
|
||||||
|
|
||||||
# Clean up the .pc files
|
# Clean up the .pc files
|
||||||
for i in libcrypto.pc libssl.pc openssl.pc ; do
|
for i in libcrypto.pc libssl.pc openssl.pc ; do
|
||||||
@ -289,7 +290,10 @@ export OPENSSL_ENABLE_SHA1_SIGNATURES
|
|||||||
OPENSSL_SYSTEM_CIPHERS_OVERRIDE=xyz_nonexistent_file
|
OPENSSL_SYSTEM_CIPHERS_OVERRIDE=xyz_nonexistent_file
|
||||||
export OPENSSL_SYSTEM_CIPHERS_OVERRIDE
|
export OPENSSL_SYSTEM_CIPHERS_OVERRIDE
|
||||||
%{SOURCE1} providers/fips.so
|
%{SOURCE1} providers/fips.so
|
||||||
#run tests itself
|
|
||||||
|
# Disable LTO, build tests, and run them
|
||||||
|
%define _lto_cflags %{nil}
|
||||||
|
make -s %{?_smp_mflags} build_programs
|
||||||
make test HARNESS_JOBS=8
|
make test HARNESS_JOBS=8
|
||||||
|
|
||||||
# Add generation of HMAC checksum of the final stripped library
|
# Add generation of HMAC checksum of the final stripped library
|
||||||
@ -454,6 +458,12 @@ touch $RPM_BUILD_ROOT/%{_prefix}/include/openssl/engine.h
|
|||||||
%ldconfig_scriptlets libs
|
%ldconfig_scriptlets libs
|
||||||
|
|
||||||
%changelog
|
%changelog
|
||||||
|
* Thu Aug 28 2025 Pavol Žáčik <pzacik@redhat.com> - 1:3.5.1-4
|
||||||
|
- Make openssl speed test signatures without errors
|
||||||
|
Resolves: RHEL-95182
|
||||||
|
- Build tests in check and without LTO
|
||||||
|
Resolves: RHEL-111634
|
||||||
|
|
||||||
* Thu Jul 24 2025 Simo Sorce <simo@redhat.com> - 1:3.5.1-3
|
* Thu Jul 24 2025 Simo Sorce <simo@redhat.com> - 1:3.5.1-3
|
||||||
- Add custom define to disable symbol versioning in downstream patched code
|
- Add custom define to disable symbol versioning in downstream patched code
|
||||||
Also add stricter Suggests for openssl-fips-provider
|
Also add stricter Suggests for openssl-fips-provider
|
||||||
|
Loading…
Reference in New Issue
Block a user