Skip to content

Commit e8f0aa1

Browse files
Harry-Chenbehlendorf
authored andcommitted
Bump SONAME of libzfs and libzpool
The ABI of libzfs and libzpool have breaking changes since last SONAME bump in commit fe6babc: * libzfs: `zpool_print_unsup_feat` removed (used by zpool cmd). * libzpool: multiple `ddt_*` symbols removed (used by zdb cmd). Bump them to avoid ABI breakage. See: #11817 Reviewed-by: Brian Behlendorf <[email protected]> Signed-off-by: Shengqi Chen <[email protected]> Closes #16609
1 parent c59d549 commit e8f0aa1

File tree

12 files changed

+50
-47
lines changed

12 files changed

+50
-47
lines changed

config/deb.am

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -58,9 +58,9 @@ deb-utils: deb-local rpm-utils-initramfs
5858
pkg1=$${name}-$${version}.$${arch}.rpm; \
5959
pkg2=libnvpair3-$${version}.$${arch}.rpm; \
6060
pkg3=libuutil3-$${version}.$${arch}.rpm; \
61-
pkg4=libzfs5-$${version}.$${arch}.rpm; \
62-
pkg5=libzpool5-$${version}.$${arch}.rpm; \
63-
pkg6=libzfs5-devel-$${version}.$${arch}.rpm; \
61+
pkg4=libzfs6-$${version}.$${arch}.rpm; \
62+
pkg5=libzpool6-$${version}.$${arch}.rpm; \
63+
pkg6=libzfs6-devel-$${version}.$${arch}.rpm; \
6464
pkg7=$${name}-test-$${version}.$${arch}.rpm; \
6565
pkg8=$${name}-dracut-$${version}.noarch.rpm; \
6666
pkg9=$${name}-initramfs-$${version}.$${arch}.rpm; \
@@ -72,7 +72,7 @@ deb-utils: deb-local rpm-utils-initramfs
7272
path_prepend=`mktemp -d /tmp/intercept.XXXXXX`; \
7373
echo "#!$(SHELL)" > $${path_prepend}/dh_shlibdeps; \
7474
echo "`which dh_shlibdeps` -- \
75-
-xlibuutil3linux -xlibnvpair3linux -xlibzfs5linux -xlibzpool5linux" \
75+
-xlibuutil3linux -xlibnvpair3linux -xlibzfs6linux -xlibzpool6linux" \
7676
>> $${path_prepend}/dh_shlibdeps; \
7777
## These -x arguments are passed to dpkg-shlibdeps, which exclude the
7878
## Debianized packages from the auto-generated dependencies of the new debs,

contrib/debian/Makefile.am

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -12,14 +12,14 @@ dist_noinst_DATA += %D%/openzfs-libpam-zfs.postinst
1212
dist_noinst_DATA += %D%/openzfs-libpam-zfs.prerm
1313
dist_noinst_DATA += %D%/openzfs-libuutil3.docs
1414
dist_noinst_DATA += %D%/openzfs-libuutil3.install.in
15-
dist_noinst_DATA += %D%/openzfs-libzfs4.docs
16-
dist_noinst_DATA += %D%/openzfs-libzfs4.install.in
15+
dist_noinst_DATA += %D%/openzfs-libzfs6.docs
16+
dist_noinst_DATA += %D%/openzfs-libzfs6.install.in
1717
dist_noinst_DATA += %D%/openzfs-libzfsbootenv1.docs
1818
dist_noinst_DATA += %D%/openzfs-libzfsbootenv1.install.in
1919
dist_noinst_DATA += %D%/openzfs-libzfs-dev.docs
2020
dist_noinst_DATA += %D%/openzfs-libzfs-dev.install.in
21-
dist_noinst_DATA += %D%/openzfs-libzpool5.docs
22-
dist_noinst_DATA += %D%/openzfs-libzpool5.install.in
21+
dist_noinst_DATA += %D%/openzfs-libzpool6.docs
22+
dist_noinst_DATA += %D%/openzfs-libzpool6.install.in
2323
dist_noinst_DATA += %D%/openzfs-python3-pyzfs.install
2424
dist_noinst_DATA += %D%/openzfs-zfs-dkms.config
2525
dist_noinst_DATA += %D%/openzfs-zfs-dkms.dkms

contrib/debian/clean

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,6 @@ contrib/pyzfs/libzfs_core/bindings/__pycache__/
66
contrib/pyzfs/pyzfs.egg-info/
77
debian/openzfs-libnvpair3.install
88
debian/openzfs-libuutil3.install
9-
debian/openzfs-libzfs4.install
9+
debian/openzfs-libzfs6.install
1010
debian/openzfs-libzfs-dev.install
11-
debian/openzfs-libzpool5.install
11+
debian/openzfs-libzpool6.install

contrib/debian/control

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -78,9 +78,9 @@ Architecture: linux-any
7878
Depends: libssl-dev | libssl1.0-dev,
7979
openzfs-libnvpair3 (= ${binary:Version}),
8080
openzfs-libuutil3 (= ${binary:Version}),
81-
openzfs-libzfs4 (= ${binary:Version}),
81+
openzfs-libzfs6 (= ${binary:Version}),
8282
openzfs-libzfsbootenv1 (= ${binary:Version}),
83-
openzfs-libzpool5 (= ${binary:Version}),
83+
openzfs-libzpool6 (= ${binary:Version}),
8484
${misc:Depends}
8585
Replaces: libzfslinux-dev
8686
Conflicts: libzfslinux-dev
@@ -90,18 +90,18 @@ Description: OpenZFS filesystem development files for Linux
9090
libraries of OpenZFS filesystem.
9191
.
9292
This package includes the development files of libnvpair3, libuutil3,
93-
libzpool5 and libzfs4.
93+
libzpool6 and libzfs6.
9494

95-
Package: openzfs-libzfs4
95+
Package: openzfs-libzfs6
9696
Section: contrib/libs
9797
Architecture: linux-any
9898
Depends: ${misc:Depends}, ${shlibs:Depends}
9999
# The libcurl4 is loaded through dlopen("libcurl.so.4").
100100
# https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=988521
101101
Recommends: libcurl4
102-
Breaks: libzfs2, libzfs4
103-
Replaces: libzfs2, libzfs4, libzfs4linux
104-
Conflicts: libzfs4linux
102+
Breaks: libzfs2, libzfs4, libzfs4linux, libzfs6linux
103+
Replaces: libzfs2, libzfs4, libzfs4linux, libzfs6linux
104+
Conflicts: libzfs6linux
105105
Description: OpenZFS filesystem library for Linux - general support
106106
OpenZFS is a storage platform that encompasses the functionality of
107107
traditional filesystems and volume managers. It supports data checksums,
@@ -123,13 +123,13 @@ Description: OpenZFS filesystem library for Linux - label info support
123123
.
124124
The zfsbootenv library provides support for modifying ZFS label information.
125125

126-
Package: openzfs-libzpool5
126+
Package: openzfs-libzpool6
127127
Section: contrib/libs
128128
Architecture: linux-any
129129
Depends: ${misc:Depends}, ${shlibs:Depends}
130-
Breaks: libzpool2, libzpool5
131-
Replaces: libzpool2, libzpool5, libzpool5linux
132-
Conflicts: libzpool5linux
130+
Breaks: libzpool2, libzpool5, libzpool5linux, libzpool6linux
131+
Replaces: libzpool2, libzpool5, libzpool5linux, libzpool6linux
132+
Conflicts: libzpool6linux
133133
Description: OpenZFS pool library for Linux
134134
OpenZFS is a storage platform that encompasses the functionality of
135135
traditional filesystems and volume managers. It supports data checksums,
@@ -246,8 +246,8 @@ Architecture: linux-any
246246
Pre-Depends: ${misc:Pre-Depends}
247247
Depends: openzfs-libnvpair3 (= ${binary:Version}),
248248
openzfs-libuutil3 (= ${binary:Version}),
249-
openzfs-libzfs4 (= ${binary:Version}),
250-
openzfs-libzpool5 (= ${binary:Version}),
249+
openzfs-libzfs6 (= ${binary:Version}),
250+
openzfs-libzpool6 (= ${binary:Version}),
251251
python3,
252252
${misc:Depends},
253253
${shlibs:Depends}

lib/libzfs/Makefile.am

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ if BUILD_FREEBSD
7070
libzfs_la_LIBADD += -lutil -lgeom
7171
endif
7272

73-
libzfs_la_LDFLAGS += -version-info 5:0:1
73+
libzfs_la_LDFLAGS += -version-info 6:0:0
7474

7575
pkgconfig_DATA += %D%/libzfs.pc
7676

lib/libzfs/libzfs.abi

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
<abi-corpus version='2.0' architecture='elf-amd-x86_64' soname='libzfs.so.4'>
1+
<abi-corpus version='2.0' architecture='elf-amd-x86_64' soname='libzfs.so.6'>
22
<elf-needed>
33
<dependency name='libzfs_core.so.3'/>
44
<dependency name='libnvpair.so.3'/>

lib/libzpool/Makefile.am

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -212,7 +212,7 @@ if BUILD_FREEBSD
212212
libzpool_la_LIBADD += -lgeom
213213
endif
214214

215-
libzpool_la_LDFLAGS += -version-info 5:0:0
215+
libzpool_la_LDFLAGS += -version-info 6:0:0
216216

217217
if TARGET_CPU_POWERPC
218218
module/zfs/libzpool_la-vdev_raidz_math_powerpc_altivec.$(OBJEXT) : CFLAGS += -maltivec

rpm/generic/zfs.spec.in

Lines changed: 24 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -99,10 +99,10 @@ License: @ZFS_META_LICENSE@
9999
URL: https://github.com/openzfs/zfs
100100
Source0: %{name}-%{version}.tar.gz
101101
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
102-
Requires: libzpool5%{?_isa} = %{version}-%{release}
102+
Requires: libzpool6%{?_isa} = %{version}-%{release}
103103
Requires: libnvpair3%{?_isa} = %{version}-%{release}
104104
Requires: libuutil3%{?_isa} = %{version}-%{release}
105-
Requires: libzfs5%{?_isa} = %{version}-%{release}
105+
Requires: libzfs6%{?_isa} = %{version}-%{release}
106106
Requires: %{name}-kmod = %{version}
107107
Provides: %{name}-kmod-common = %{version}-%{release}
108108
Obsoletes: spl <= %{version}
@@ -150,21 +150,22 @@ Requires: sysstat
150150
%description
151151
This package contains the core ZFS command line utilities.
152152

153-
%package -n libzpool5
153+
%package -n libzpool6
154154
Summary: Native ZFS pool library for Linux
155155
Group: System Environment/Kernel
156156
Obsoletes: libzpool2 <= %{version}
157157
Obsoletes: libzpool4 <= %{version}
158+
Obsoletes: libzpool5 <= %{version}
158159

159-
%description -n libzpool5
160+
%description -n libzpool6
160161
This package contains the zpool library, which provides support
161162
for managing zpools
162163

163164
%if %{defined ldconfig_scriptlets}
164-
%ldconfig_scriptlets -n libzpool5
165+
%ldconfig_scriptlets -n libzpool6
165166
%else
166-
%post -n libzpool5 -p /sbin/ldconfig
167-
%postun -n libzpool5 -p /sbin/ldconfig
167+
%post -n libzpool6 -p /sbin/ldconfig
168+
%postun -n libzpool6 -p /sbin/ldconfig
168169
%endif
169170

170171
%package -n libnvpair3
@@ -211,37 +212,39 @@ This library provides a variety of compatibility functions for OpenZFS:
211212
# The library version is encoded in the package name. When updating the
212213
# version information it is important to add an obsoletes line below for
213214
# the previous version of the package.
214-
%package -n libzfs5
215+
%package -n libzfs6
215216
Summary: Native ZFS filesystem library for Linux
216217
Group: System Environment/Kernel
217218
Obsoletes: libzfs2 <= %{version}
218219
Obsoletes: libzfs4 <= %{version}
220+
Obsoletes: libzfs5 <= %{version}
219221

220-
%description -n libzfs5
222+
%description -n libzfs6
221223
This package provides support for managing ZFS filesystems
222224

223225
%if %{defined ldconfig_scriptlets}
224-
%ldconfig_scriptlets -n libzfs5
226+
%ldconfig_scriptlets -n libzfs6
225227
%else
226-
%post -n libzfs5 -p /sbin/ldconfig
227-
%postun -n libzfs5 -p /sbin/ldconfig
228+
%post -n libzfs6 -p /sbin/ldconfig
229+
%postun -n libzfs6 -p /sbin/ldconfig
228230
%endif
229231

230-
%package -n libzfs5-devel
232+
%package -n libzfs6-devel
231233
Summary: Development headers
232234
Group: System Environment/Kernel
233-
Requires: libzfs5%{?_isa} = %{version}-%{release}
234-
Requires: libzpool5%{?_isa} = %{version}-%{release}
235+
Requires: libzfs6%{?_isa} = %{version}-%{release}
236+
Requires: libzpool6%{?_isa} = %{version}-%{release}
235237
Requires: libnvpair3%{?_isa} = %{version}-%{release}
236238
Requires: libuutil3%{?_isa} = %{version}-%{release}
237-
Provides: libzpool5-devel = %{version}-%{release}
239+
Provides: libzpool6-devel = %{version}-%{release}
238240
Provides: libnvpair3-devel = %{version}-%{release}
239241
Provides: libuutil3-devel = %{version}-%{release}
240242
Obsoletes: zfs-devel <= %{version}
241243
Obsoletes: libzfs2-devel <= %{version}
242244
Obsoletes: libzfs4-devel <= %{version}
245+
Obsoletes: libzfs5-devel <= %{version}
243246

244-
%description -n libzfs5-devel
247+
%description -n libzfs6-devel
245248
This package contains the header files needed for building additional
246249
applications against the ZFS libraries.
247250

@@ -290,7 +293,7 @@ Summary: Python %{python_version} wrapper for libzfs_core
290293
Group: Development/Languages/Python
291294
License: Apache-2.0
292295
BuildArch: noarch
293-
Requires: libzfs5 = %{version}-%{release}
296+
Requires: libzfs6 = %{version}-%{release}
294297
Requires: libnvpair3 = %{version}-%{release}
295298
Requires: libffi
296299
Requires: python%{__python_pkg_version}
@@ -534,7 +537,7 @@ systemctl --system daemon-reload >/dev/null || true
534537
%config(noreplace) %{_bashcompletiondir}/zfs
535538
%config(noreplace) %{_bashcompletiondir}/zpool
536539

537-
%files -n libzpool5
540+
%files -n libzpool6
538541
%{_libdir}/libzpool.so.*
539542

540543
%files -n libnvpair3
@@ -543,10 +546,10 @@ systemctl --system daemon-reload >/dev/null || true
543546
%files -n libuutil3
544547
%{_libdir}/libuutil.so.*
545548

546-
%files -n libzfs5
549+
%files -n libzfs6
547550
%{_libdir}/libzfs*.so.*
548551

549-
%files -n libzfs5-devel
552+
%files -n libzfs6-devel
550553
%{_pkgconfigdir}/libzfs.pc
551554
%{_pkgconfigdir}/libzfsbootenv.pc
552555
%{_pkgconfigdir}/libzfs_core.pc

0 commit comments

Comments
 (0)