Accepting request 1071514 from Base:System
- Enable livepatching support on x86_64. OBS-URL: https://build.opensuse.org/request/show/1071514 OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/libxcrypt?expand=0&rev=17
This commit is contained in:
commit
7121e20c54
@ -1,3 +1,8 @@
|
|||||||
|
-------------------------------------------------------------------
|
||||||
|
Fri Mar 10 20:29:48 UTC 2023 - Giuliano Belinassi <giuliano.belinassi@suse.com>
|
||||||
|
|
||||||
|
- Enable livepatching support on x86_64.
|
||||||
|
|
||||||
-------------------------------------------------------------------
|
-------------------------------------------------------------------
|
||||||
Wed Nov 30 15:02:10 UTC 2022 - Andreas Schwab <schwab@suse.de>
|
Wed Nov 30 15:02:10 UTC 2022 - Andreas Schwab <schwab@suse.de>
|
||||||
|
|
||||||
|
@ -1,7 +1,7 @@
|
|||||||
#
|
#
|
||||||
# spec file for package libxcrypt
|
# spec file for package libxcrypt
|
||||||
#
|
#
|
||||||
# Copyright (c) 2022 SUSE LLC
|
# Copyright (c) 2023 SUSE LLC
|
||||||
#
|
#
|
||||||
# All modifications and additions to the file contributed by third parties
|
# All modifications and additions to the file contributed by third parties
|
||||||
# remain the property of their copyright owners, unless otherwise agreed
|
# remain the property of their copyright owners, unless otherwise agreed
|
||||||
@ -29,6 +29,13 @@ Source2: https://github.com/besser82/libxcrypt/releases/download/v%{versi
|
|||||||
Source3: baselibs.conf
|
Source3: baselibs.conf
|
||||||
BuildRequires: pkgconfig
|
BuildRequires: pkgconfig
|
||||||
|
|
||||||
|
# Enable support for livepatching.
|
||||||
|
%ifarch x86_64
|
||||||
|
%bcond_without livepatching
|
||||||
|
%else
|
||||||
|
%bcond_with livepatching
|
||||||
|
%endif
|
||||||
|
|
||||||
%description
|
%description
|
||||||
libxcrypt is a modern library for one-way hashing of passwords. It
|
libxcrypt is a modern library for one-way hashing of passwords. It
|
||||||
supports DES, MD5, SHA-2-256, SHA-2-512, and bcrypt-based password
|
supports DES, MD5, SHA-2-256, SHA-2-512, and bcrypt-based password
|
||||||
@ -94,6 +101,7 @@ is highly discouraged.
|
|||||||
# Disable LTO due to symbol versioning (boo#1138833):
|
# Disable LTO due to symbol versioning (boo#1138833):
|
||||||
# (https://en.opensuse.org/openSUSE:LTO#Symbol_versioning).
|
# (https://en.opensuse.org/openSUSE:LTO#Symbol_versioning).
|
||||||
%define _lto_cflags %{nil}
|
%define _lto_cflags %{nil}
|
||||||
|
|
||||||
%configure \
|
%configure \
|
||||||
--disable-silent-rules \
|
--disable-silent-rules \
|
||||||
--enable-shared \
|
--enable-shared \
|
||||||
@ -101,9 +109,38 @@ is highly discouraged.
|
|||||||
--enable-obsolete-api=suse \
|
--enable-obsolete-api=suse \
|
||||||
--enable-hashes=all \
|
--enable-hashes=all \
|
||||||
--with-pkgconfigdir=%{_libdir}/pkgconfig
|
--with-pkgconfigdir=%{_libdir}/pkgconfig
|
||||||
|
|
||||||
|
%if %{with livepatching}
|
||||||
|
%make_build CFLAGS="$CFLAGS -fpatchable-function-entry=16,14 -fdump-ipa-clones"
|
||||||
|
%else
|
||||||
%make_build
|
%make_build
|
||||||
|
%endif
|
||||||
|
|
||||||
%install
|
%install
|
||||||
|
|
||||||
|
%if %{with livepatching}
|
||||||
|
%define tar_basename libxcrypt-livepatch-%{version}-%{release}
|
||||||
|
%define tar_package_name %{tar_basename}.%{_arch}.tar.xz
|
||||||
|
%define clones_dest_dir %{tar_basename}/%{_arch}
|
||||||
|
|
||||||
|
# Ipa-clones are files generated by gcc which logs changes made across
|
||||||
|
# functions, and we need to know such changes to build livepatches
|
||||||
|
# correctly. These files are intended to be used by the livepatch
|
||||||
|
# developers and may be retrieved by using `osc getbinaries`.
|
||||||
|
#
|
||||||
|
# Create ipa-clones destination folder and move clones there.
|
||||||
|
mkdir -p ipa-clones/%{clones_dest_dir}
|
||||||
|
find . -name "*.ipa-clones" ! -empty \
|
||||||
|
-exec cp -t ipa-clones/%{clones_dest_dir} --parents {} +
|
||||||
|
|
||||||
|
# Create tarball with ipa-clones.
|
||||||
|
tar -cJf %{tar_package_name} -C ipa-clones \
|
||||||
|
--owner root --group root --sort name %{tar_basename}
|
||||||
|
|
||||||
|
# Copy tarball to the OTHER folder to store it as artifact.
|
||||||
|
cp %{tar_package_name} %{_topdir}/OTHER
|
||||||
|
%endif
|
||||||
|
|
||||||
%make_install
|
%make_install
|
||||||
rm -v %{buildroot}%{_libdir}/*.la
|
rm -v %{buildroot}%{_libdir}/*.la
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user