# Commit: Fix SM-serialization testcase
%global snapdate 20250114
%global commit e3d734c5ff84821da2f0632f733cad4d2a73d3f4
%global shortcommit %(c=%{commit}; echo ${c:0:7})


Name:           libstrophe
Version:        0.13.1
Release:        12^%{snapdate}git%{shortcommit}%{?dist}
Summary:        An XMPP library for C

License:        MIT and GPLv3
URL:            https://strophe.im/%{name}/
Source0:        https://github.com/strophe/%{name}/archive/%{commit}/%{name}-%{shortcommit}.tar.gz

BuildRequires:  gcc
BuildRequires:  automake
BuildRequires:  autoconf
BuildRequires:  libtool
BuildRequires:  zlib-devel
# expat or libxml, but no need for both
BuildRequires:  expat-devel
#BuildRequires:  libxml2-devel
BuildRequires:  openssl-devel
# For docs
BuildRequires:  doxygen
BuildRequires:  lcov

%description
libstrophe is a minimal XMPP library written in C. It has almost no
external dependencies, only an XML parsing library (expat or libxml
are both supported). It is designed for both POSIX and Windows
systems.

Commit: %{shortcommit}



%package        devel
Summary:        Development files for %{name}
Requires:       %{name}%{?_isa} = %{version}-%{release}

%description    devel
The %{name}-devel package contains libraries and header files for
developing applications that use %{name}.



%package        doc
Summary:        Documentation for %{name}
BuildArch:      noarch
Requires:       %{name} = %{version}-%{release}

%description    doc
The %{name}-doc package contains HTML documentation for developing
applications that use %{name}.



%prep
%autosetup -n %{name}-%{commit}


%build
autoreconf -i -W all
# expat is the default; use --with-libxml2 to switch
# create a code coverage report: --enable-coverage
%configure --disable-static --enable-coverage
%make_build
# Build HTML documentation
doxygen
make coverage  # results are in coverage/


%install
%make_install
# Removing libstrophe.la generated
rm -f %{buildroot}%{_libdir}/libstrophe.la

# Install examples/ dir shipping binary files generated
mkdir -p %{buildroot}%{_libdir}/%{name}/
cp -a examples/ %{buildroot}%{_libdir}/%{name}/
mv %{buildroot}%{_libdir}/%{name}/examples/.libs %{buildroot}%{_libdir}/%{name}/examples/libs
mv %{buildroot}%{_libdir}/%{name}/examples/.deps %{buildroot}%{_libdir}/%{name}/examples/deps
rm -f %{buildroot}%{_libdir}/%{name}/examples/.dirstamp
rm -f %{buildroot}%{_libdir}/%{name}/examples/deps/.dirstamp

# Install HTML documentation for the doc subpackage
mkdir -p %{buildroot}%{_pkgdocdir}/
cp -a docs/html/ %{buildroot}%{_pkgdocdir}/
cp -a coverage/ %{buildroot}%{_pkgdocdir}/html/


%check
# the tests suite is launched with 'make coverage'
# no need to run it twice



%files
%license LICENSE.txt GPL-LICENSE.txt MIT-LICENSE.txt
%doc README AUTHORS ChangeLog 
%{_libdir}/%{name}.so.*


%files devel
%doc examples/README.md
%{_includedir}/strophe.h
%{_libdir}/%{name}.so
%{_libdir}/%{name}/
%{_libdir}/pkgconfig/%{name}.pc


%files doc
%{_pkgdocdir}/html/



%changelog
* Tue Jan 14 2025 Matthieu Saulnier <fantom@fedoraproject.org> - 0.13.1-12^20250114gite3d734c
- Update to latest snapshot

* Fri Jun 28 2024 Matthieu Saulnier <fantom@fedoraproject.org> - 0.13.1-11^20240628git5142eea
- Update to latest snapshot

* Tue Feb 27 2024 Matthieu Saulnier <fantom@fedoraproject.org> - 0.13.1-10^20240227git4d59a9f
- Update to latest snapshot

* Sun Feb 4 2024 Matthieu Saulnier <fantom@fedoraproject.org> - 0.13.0-10^20240204gitd6d71e9
- Update to latest snapshot
- Add zlib as new BuildRequires

* Fri Dec 1 2023 Matthieu Saulnier <fantom@fedoraproject.org> - 0.12.3-13^20231201gitc5b6026
- Update to latest snapshot

* Thu Aug 10 2023 Matthieu Saulnier <fantom@fedoraproject.org> - 0.12.3-12^20230810git069787d
- Update to latest snapshot
- Remove tests suite from devel subpackage

* Wed Aug 9 2023 Matthieu Saulnier <fantom@fedoraproject.org> - 0.12.3-11^20230809git9eba8e8
- Update to latest snapshot
- Enable code coverage report
- Cleanup %%check section

* Tue Aug 8 2023 Matthieu Saulnier <fantom@fedoraproject.org> - 0.12.3-10^20230808gitf13ea6e
- Bump release to a higher value than stable branches
- Switch to git snapshot

* Wed Aug 2 2023 Matthieu Saulnier <fantom@fedoraproject.org> - 0.12.3-1
- Update to 0.12.3
- Improve file ownership in doc subpackage

* Thu Jul 20 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.12.2-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild

* Thu Jan 19 2023 Fedora Release Engineering <releng@fedoraproject.org> - 0.12.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild

* Fri Aug 26 2022 Matthieu Saulnier <fantom@fedoraproject.org> - 0.12.2-1
- Update to 0.12.2 version

* Thu Jul 21 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.10.1-7
- Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild

* Thu Jan 20 2022 Fedora Release Engineering <releng@fedoraproject.org> - 0.10.1-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild

* Tue Sep 14 2021 Sahana Prasad <sahana@redhat.com> - 0.10.1-5
- Rebuilt with OpenSSL 3.0.0

* Wed Aug 25 2021 Matthieu Saulnier <fantom@fedoraproject.org> - 0.10.1-4
- Package Review RHBZ#1994501:
  - Remove useless ldconfig scriptlets
  - Fix Requires tag of the doc subpackage

* Thu Aug 19 2021 Matthieu Saulnier <fantom@fedoraproject.org> - 0.10.1-3
- Package Review RHBZ#1994501:
  - Use more %%{name} macro in %%files section

* Tue Aug 17 2021 Matthieu Saulnier <fantom@fedoraproject.org> - 0.10.1-2
- Package Review RHBZ#1994501:
  - Fix Requires tag of the doc subpackage

* Tue Aug 17 2021 Matthieu Saulnier <fantom@fedoraproject.org> - 0.10.1-1
- Initial packaging