Summary: Lightweight library for embedding a webserver in applications
Name: libmicrohttpd
Version: 1.0.1
Release: 1%{?_dist_release}
Group: system
Vendor: Project Vine
Distribution: Vine Linux

License: LGPLv2+
URL: https://www.gnu.org/software/libmicrohttpd/
Source0: https://ftp.gnu.org/gnu/libmicrohttpd/%{name}-%{version}.tar.gz

BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root
BuildRequires:  autoconf, automake, libtool
BuildRequires:  curl-devel
BuildRequires:  gnutls-devel
BuildRequires:  libgcrypt-devel
BuildRequires:  openssl-devel
BuildRequires:  pkgconfig(zlib)
BuildRequires:  graphviz
BuildRequires:  doxygen

%description
GNU libmicrohttpd is a small C library that is supposed to make it
easy to run an HTTP server as part of another application.
Key features that distinguish libmicrohttpd from other projects are:

* C library: fast and small
* API is simple, expressive and fully reentrant
* Implementation is http 1.1 compliant
* HTTP server can listen on multiple ports
* Support for IPv6
* Support for incremental processing of POST data
* Creates binary of only 25k (for now)
* Three different threading models


%package devel
Summary:        Development files for libmicrohttpd
Summary(ja):    libmicrohttpd の開発用ファイル
Group:          programming
Requires:       %{name} = %{version}-%{release}

%description devel
Development files for libmicrohttpd


%package doc
Summary:        Documentation for libmicrohttpd
Summary(ja):    libmicrohttpd のドキュメント
Group:          documentation
BuildArch:      noarch
Requires:       %{name} = %{version}-%{release}

%description doc
Doxygen documentation for libmicrohttpd and some example source code


%debug_package


%prep
%setup -q


%build
%configure --disable-static --with-gnutls
make %{?_smp_mflags}
make full -C doc/doxygen


%install
rm -rf %{buildroot}
make install DESTDIR=%{buildroot}

rm -f %{buildroot}%{_libdir}/libmicrohttpd.la
rm -f %{buildroot}%{_libdir}/libmicrospdy.la
rm -f %{buildroot}%{_infodir}/dir

# Install some examples in /usr/share/doc/libmicrohttpd-${version}/examples
rm -rf examples
mkdir -p examples
install -m 644 src/examples/*.c examples

# Install the doxygen documentation in /usr/share/doc/libmicrohttpd-${version}/html
rm -rf html
cp -R doc/doxygen/html .


# Disabled for now due to problems reported at
# https://gnunet.org/bugs/view.php?id=1619
#check
#make check %{?_smp_mflags}


%files
%defattr(-,root,root,-)
%license COPYING
%{_libdir}/libmicro*.so.*

%files devel
%defattr(-,root,root,-)
%{_includedir}/micro*.h
%{_libdir}/libmicro*.so
%{_libdir}/pkgconfig/libmicro*.pc

%files doc
%doc AUTHORS README ChangeLog
%doc examples
%doc html
%defattr(-,root,root,-)
%{_mandir}/man3/libmicrohttpd.3.gz
%{_infodir}/libmicrohttpd.info.gz
%{_infodir}/libmicrohttpd_performance_data.png.gz
%{_infodir}/libmicrohttpd-tutorial.info.gz


%changelog
* Thu Jul 18 2024 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 1.0.1-1
- new upstream release.

* Wed Mar 15 2023 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.9.76-1
- new upstream release.

* Fri Jan 14 2022 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.9.75-1
- new upstream release.

* Fri Dec 24 2021 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.9.74-1
- new upstream release.
- dropped install-info scriptlets.

* Fri May 07 2021 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.9.73-1
- new upstream release.

* Mon Mar 29 2021 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.9.72-1
- new upstream release.
- dropped ldconfig scriptlets.

* Sun Mar 29 2020 Tomohiro "Tomo-p" KATO <tomop@teamgedoh.net> 0.9.70-1
- rebuilt with current environment.

* Sun May 15 2016 Yoji TOYODA <bsyamato@sea.plala.or.jp> 0.9.39-2
- rebuild with openssl-1.0.2

* Mon Jan 12 2015 Ryoichi INAGAKI <ryo1@toki.waseda.jp> 0.9.39-1
- updated to 0.9.39
- built with libgcrypt 1.6.0 and gnutls 3.2.20

* Mon Jan 17 2011 Kazutaka HARADA <kazutaka@vinelinux.org> 0.9.2-1
- initial build for Vine Linux based on fedora development

* Tue Nov 16 2010 Tim Niemueller <tim@niemueller.de> - 0.9.2-3
- Add missing BR gnutls-devel and libgcrypt-devel
- Added patch to fix test apps (NSS instead of GnuTLS/OpenSSL curl,
  implicit DSO linking)
- Disable test cases for now due to false errors, reported upstream

* Tue Nov 16 2010 Tim Niemueller <tim@niemueller.de> - 0.9.2-2
- Re-enable HTTPS, configure flags had unexpected result

* Sun Nov  7 2010 Tim Niemueller <tim@niemueller.de> - 0.9.2-1
- Update to 0.9.2

* Fri Jun  4 2010 Erik van Pienbroek <epienbro@fedoraproject.org> - 0.4.6-1
- Update to 0.4.6

* Fri Jul 24 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.4.2-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild

* Tue Jul 21 2009 Erik van Pienbroek <epienbro@fedoraproject.org> - 0.4.2-1
- Update to version 0.4.2
- Drop upstreamed patch

* Fri Feb 27 2009 Erik van Pienbroek <info@nntpgrab.nl> - 0.4.0a-1
- Update to version 0.4.0a
- Drop upstreamed patch
- Added a new patch to fix a 64bit issue
- The -devel package now contains a pkgconfig file
- The configure script is now run with '--enable-messages --enable-https'
- Made the -doc subpackage noarch (F11+)

* Wed Feb 25 2009 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 0.4.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild

* Sat Feb 14 2009 Erik van Pienbroek <info@nntpgrab.nl> - 0.4.0-1
- Update to version 0.4.0
- This version introduces a API bump (which is required for
  supporting large files on 32bit environments)
- The license issues we had with version 0.3.1 of this package (as
  discussed in #457924) are resolved in this version. The license
  of this package is now changed to LGPLv2+
- Added a patch to fix two testcases on 64bit environments (upstream bug #1454)

* Sat Sep 6 2008 Erik van Pienbroek <info@nntpgrab.nl> - 0.3.1-3
- Changed license to GPLv3+ and added some comments
  regarding the license issues with this package

* Sun Aug 10 2008 Erik van Pienbroek <info@nntpgrab.nl> - 0.3.1-2
- Changed license to LGPLv2+
- Moved the COPYING file to the main package

* Tue Aug 5 2008 Erik van Pienbroek <info@nntpgrab.nl> - 0.3.1-1
- Initial release