diff --git a/Quiet-a-commpiler-warning.patch b/Quiet-a-commpiler-warning.patch new file mode 100644 index 0000000..4bf4b7e --- /dev/null +++ b/Quiet-a-commpiler-warning.patch @@ -0,0 +1,34 @@ +From 62e2c4d8dd270eea0bfaa933e87182c8a1c18aac Mon Sep 17 00:00:00 2001 +From: Lee Duncan +Date: Thu, 8 Sep 2022 12:00:31 -0700 +Subject: [PATCH] Quiet a commpiler warning. + +Build error looked like: + +[ 33s] gcc -Wall -Wextra -O2 -Wall -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=3 -fstack-protector-strong -funwind-tables -fasynchronous-unwind-tables -fstack-clash-protection -Werror=return-type -flto=auto -ffat-lto-objects -g -I. -Iinclude -I. -I./include -flto=auto -ffat-lto-objects -o tests/pauw4 tests/pauw4.o -L. -lisns -Wl,--as-needed -lcrypto +[ 33s] attrs.c: In function 'isns_attr_decode': +[ 33s] attrs.c:807:9: warning: 'len' may be used uninitialized [-Wmaybe-uninitialized] +[ 33s] 807 | isns_error("Error decoding attribute, tag=0x%04x, len=%u\n", +[ 33s] | ^ +[ 33s] attrs.c:780:30: note: 'len' declared here +[ 33s] 780 | uint32_t tag, len; +--- + attrs.c | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/attrs.c b/attrs.c +index 44d9675358b9..a12c22235481 100644 +--- a/attrs.c ++++ b/attrs.c +@@ -777,7 +777,7 @@ isns_attr_decode(buf_t *bp, isns_attr_t **result) + { + isns_attr_t *attr = NULL; + isns_value_t *value; +- uint32_t tag, len; ++ uint32_t tag, len = 0; + + if (!buf_get32(bp, &tag) + || !buf_get32(bp, &len)) +-- +2.35.3 + diff --git a/_service b/_service index d9b03f4..16800ab 100644 --- a/_service +++ b/_service @@ -4,8 +4,8 @@ https://github.com/open-iscsi/open-isns.git open-isns - 0.101 - v0.101 + 0.102 + v0.102 enable diff --git a/_servicedata b/_servicedata index 7259958..2564a35 100644 --- a/_servicedata +++ b/_servicedata @@ -1,4 +1,4 @@ https://github.com/open-iscsi/open-isns.git - 0d86dc31fae2e2d77a082ccea5aba95426b40c3c \ No newline at end of file + c0e6d9fedc5a7041260de477fe1a8455fa074113 \ No newline at end of file diff --git a/open-isns-0.101.tar.xz b/open-isns-0.101.tar.xz deleted file mode 100644 index 22874b7..0000000 --- a/open-isns-0.101.tar.xz +++ /dev/null @@ -1,3 +0,0 @@ -version https://git-lfs.github.com/spec/v1 -oid sha256:4480f7d04e382eed66cf91e91c4059ba852bc6a86c3a2c7e947a13e0ee80df42 -size 232036 diff --git a/open-isns-0.102.tar.xz b/open-isns-0.102.tar.xz new file mode 100644 index 0000000..e7dc3ce --- /dev/null +++ b/open-isns-0.102.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:27aefa7bf17f6030a89f351ecca56e55e2be6561c3b637c7801da2ef2841e33a +size 233200 diff --git a/open-isns.changes b/open-isns.changes index 20cc175..addd2ee 100644 --- a/open-isns.changes +++ b/open-isns.changes @@ -1,3 +1,40 @@ +------------------------------------------------------------------- +Thu Sep 08 18:40:34 UTC 2022 - lduncan@suse.com + +- Update to version 0.102: + * Preparing for version v0.102 + * meson: just specify subdir for header-file install. + * build: only specify version in one place + * Fix two compiler warnings in slp.c + * meson: update README + * meson: small option usage cleanup + * meson: several updates based on review + * meson: fix error building shared lib with version + * meson: convert some args to 'features' + * meson: update README with meson info + * Add a decprecation warning to configure script. + * meson: Add ability to disable static library build + * meson builds now working + * git: ignore all shared library files + * build: Remove these two files, no longer used + * Add a package config file for libisns.a + * isnsd: socket: Make sure to create IPv6 socket default + * isnsadm: Fix unparse command line options "-V" and "-r" + * Typo: s/overried/override/ + * Removed bash-specific function definitions. + + Also, added patch to quiet compiler (soon upstream): + * Quiet-a-commpiler-warning.patch + + This changes the SPEC file to use the new meson build system, + supported in open-isns starting with version 0.102, instead of + autoconf/make. + + Changes in the code: + * no longer deliver isnsetup script or man page (development only) + * now deliver a package config file for the library + * now deliver both the static library and a shared library + ------------------------------------------------------------------- Mon Feb 01 18:23:30 UTC 2021 - lduncan@suse.com diff --git a/open-isns.spec b/open-isns.spec index 062fb00..abda481 100644 --- a/open-isns.spec +++ b/open-isns.spec @@ -1,7 +1,7 @@ # # spec file for package open-isns # -# Copyright (c) 2021 SUSE LLC +# Copyright (c) 2022 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -20,15 +20,18 @@ Name: open-isns Summary: Partial Implementation of iSNS iSCSI registration License: LGPL-2.1-or-later Group: System/Kernel -Version: 0.101 +Version: 0.102 Release: 0 Source: %{name}-%{version}.tar.xz +Patch1: Quiet-a-commpiler-warning.patch URL: https://github.com/open-iscsi/%{name} BuildRoot: %{_tmppath}/%{name}-%{version}-build BuildRequires: autoconf BuildRequires: automake BuildRequires: glibc-devel BuildRequires: make +BuildRequires: meson >= 0.55.0 +BuildRequires: openslp-devel BuildRequires: openssl-devel BuildRequires: systemd-rpm-macros %{?systemd_requires} @@ -46,38 +49,33 @@ iSNS, iSCSI targets can be registered to a central iSNS server and initiators can be configured to discover the targets by asking the iSNS server. -%package -n open-isns-devel +%package devel Summary: Development files for open-isns Group: Development/Libraries/C and C++ -Requires: open-isns = %{version} +Requires: %{name} = %{version} -%description -n open-isns-devel +%description devel Files to develop an application using the open-isns library. %prep -%setup -n %{name}-%{version} +%autosetup -p1 %build %global _lto_cflags %{?_lto_cflags} -ffat-lto-objects -autoconf -autoheader -%configure --prefix=%{_prefix} --with-security -make OPTFLAGS="%{optflags}" +%meson --default-library=both +%meson_build %install -make DESTDIR="%{buildroot}" install -if [ ! -d "%{buildroot}/usr/sbin" ] ; then - mkdir -p %{buildroot}/usr/sbin -fi +%meson_install ln -sf /usr/sbin/service %{buildroot}/usr/sbin/rcisnsd -make DESTDIR="%{buildroot}" install_hdrs install_lib -install -m 755 isnssetup %{buildroot}%{_sbindir} %post +%{run_ldconfig} %{service_add_post isnsd.socket isnsd.service} %postun %{service_del_postun isnsd.socket isnsd.service} +%{run_ldconfig} %pre %{service_add_pre isnsd.socket isnsd.service} @@ -85,12 +83,14 @@ install -m 755 isnssetup %{buildroot}%{_sbindir} %preun %{service_del_preun isnsd.socket isnsd.service} +%post devel -p %{run_ldconfig} +%postun devel -p %{run_ldconfig} + %files %defattr(-,root,root) %{_sbindir}/isnsd %{_sbindir}/isnsadm %{_sbindir}/isnsdd -%{_sbindir}/isnssetup %dir %{_sysconfdir}/isns %attr(0600,root,root) %config(noreplace) %{_sysconfdir}/isns/isnsd.conf %attr(0600,root,root) %config(noreplace) %{_sysconfdir}/isns/isnsadm.conf @@ -101,12 +101,12 @@ install -m 755 isnssetup %{buildroot}%{_sbindir} %doc %{_mandir}/man8/isnsd.8%{?ext_man} %doc %{_mandir}/man8/isnsadm.8%{?ext_man} %doc %{_mandir}/man8/isnsdd.8%{?ext_man} -%doc %{_mandir}/man8/isnssetup.8%{?ext_man} %doc %{_mandir}/man5/isns_config.5%{?ext_man} %{_unitdir}/isnsd.service %{_unitdir}/isnsd.socket +%{_libdir}/libisns.so.0 -%files -n open-isns-devel +%files devel %defattr(-,root,root) %dir %{_includedir}/libisns %{_includedir}/libisns/attrs.h @@ -119,5 +119,7 @@ install -m 755 isnssetup %{buildroot}%{_sbindir} %{_includedir}/libisns/types.h %{_includedir}/libisns/util.h %{_libdir}/libisns.a +%{_libdir}/libisns.so +%{_libdir}/pkgconfig/libisns.pc %changelog