%define libname libxmlrpc # libxml2 backend is broken %def_disable libxml2 Name: xmlrpc-c Version: 1.54.06 Release: alt2 Summary: XML-RPC C library - an implementation of the xmlrpc protocol License: BSD-3-Clause AND MIT Group: System/Libraries Url: http://xmlrpc-c.sourceforge.net/ Source: %name-%version.tar Patch1: %name-1.12.00-alt-configure-fixes.patch Patch2: 0001-cleanup-and-fix-libxml2-backend.patch # Patches from fedora Patch101: 0001-xmlrpc_server_abyss-use-va_args-properly.patch Patch102: 0002-Use-proper-datatypes-for-long-long.patch Patch103: 0003-allow-30x-redirections.patch # Patches from OpenNebula Patch201: xml_parse_huge.patch BuildRequires: gcc-c++ BuildRequires: libcurl-devel %{?_enable_libxml2:BuildRequires: libxml2-devel} BuildRequires: libncurses-devel libreadline-devel BuildRequires: libssl-devel zlib-devel %description XML-RPC for C/C++ is programming libraries and related tools to help you write an XML-RPC server or client in C or C++. %package -n %libname Summary: XML-RPC C library - an implementation of the xmlrpc protocol Group: System/Libraries %description -n %libname XML-RPC for C/C++ is programming libraries and related tools to help you write an XML-RPC server or client in C or C++. %package -n %libname-client Summary: C client libraries for xmlrpc-c Group: System/Libraries Requires: %libname = %version-%release %description -n %libname-client XML-RPC is a quick-and-easy way to make procedure calls over the Internet. It converts the procedure call into XML document, sends it to a remote server using HTTP, and gets back the response as XML. This library provides a modular implementation of XML-RPC for C clients. %package -n %libname-devel Summary: Files for developing applications that use %libname Requires: %libname = %version-%release Requires: %libname++ = %version-%release Requires: %libname-client = %version-%release Requires: %libname-client++ = %version-%release Group: Development/C %description -n %libname-devel The header file for developing applications that use %name. %package -n %libname++ Summary: XML-RPC C++ library - an implementation of the xmlrpc protocol Group: System/Libraries Requires: %libname = %version-%release %description -n %libname++ XML-RPC for C/C++ is programming libraries and related tools to help you write an XML-RPC server or client in C or C++. This package contains C++ bindings for %libname. %package -n %libname-client++ Summary: C++ client libraries for xmlrpc-c Group: System/Libraries Requires: %libname-client = %version-%release Requires: %libname++ = %version-%release %description -n %libname-client++ XML-RPC is a quick-and-easy way to make procedure calls over the Internet. It converts the procedure call into XML document, sends it to a remote server using HTTP, and gets back the response as XML. This library provides a modular implementation of XML-RPC for C++ clients. %package -n %libname++-devel Summary: Files for developing applications that use %libname++ Requires: %libname++ = %version-%release Requires: %libname-devel = %version-%release Group: Development/C++ %description -n %libname++-devel The header file for developing applications that use %libname++. %prep %setup %patch1 -p1 %if_enabled libxml2 %patch2 -p1 %endif %patch101 -p1 %patch102 -p1 %patch103 -p1 %patch201 -p1 %build autoconf %configure \ --disable-wininet-client \ %{?_enable_libxml2:--enable-libxml2-backend} %make %make -C tools %install %makeinstall_std %makeinstall_std -C tools rm -f %buildroot%_libdir/*.a %files %doc README doc/* %doc tools/xmlrpc_transport/xmlrpc_transport.html %_man1dir/* %_bindir/* %exclude %_bindir/xmlrpc-c-config %files -n %libname %_libdir/libxmlrpc.so.* %_libdir/libxmlrpc_*.so.* %exclude %_libdir/libxmlrpc_cpp.so.* %exclude %_libdir/libxmlrpc_*++.so.* %exclude %_libdir/libxmlrpc_client.so.* %files -n %libname-client %_libdir/libxmlrpc_client.so.* %files -n %libname++ %_libdir/libxmlrpc_cpp.so.* %_libdir/libxmlrpc++.so.* %_libdir/libxmlrpc_*++.so.* %exclude %_libdir/libxmlrpc_client++.so.* %files -n %libname-client++ %_libdir/libxmlrpc_client++.so.* %files -n %libname-devel %_bindir/xmlrpc-c-config %_includedir/xmlrpc-c/ %_includedir/*.h %_pkgconfigdir/*.pc %_libdir/*.so %changelog * Fri Jan 27 2023 Alexey Shabalin 1.54.06-alt2 - apply xml_parse_huge.patch for OpenNebula * Thu Sep 29 2022 Alexey Shabalin 1.54.06-alt1 - 1.54.06 * Mon Jul 19 2021 Alexey Shabalin 1.51.07-alt1 - 1.51.07 * Wed Apr 08 2020 Alexey Shabalin 1.51.06-alt1 - 1.51.06 * Tue Jan 22 2019 Alexey Shabalin 1.51.03-alt1.svn3018 - 1.51.03 * Wed Sep 26 2018 Alexey Shabalin 1.51.02-alt1.svn3011 - 1.51.02 * Thu Mar 01 2018 Alexey Shabalin 1.43.06-alt1.svn2912 - 1.43.06 * Wed Aug 30 2017 Alexey Shabalin 1.39.12-alt1.svn2910 - 1.39.12 * Tue Jul 21 2015 Vitaly Lipatov 1.32.5-alt2.svn2451 - use cmake macros - rebuild with new libstdc++ * Tue Mar 11 2014 Timur Aitov 1.32.5-alt1.svn2451 - 1.32.5 * Wed Sep 28 2011 Aeliya Grevnyov 1.27.0-alt1.svn2145 - update to 1.27.0 (svn2145) (ALT#26363) - enable cplusplus, abyss-server, cgi-server (ALT#26364) * Tue Jul 05 2011 Dmitry V. Levin 1.12.00-alt11 - Fixed build with new libcurl-devel. * Mon Apr 18 2011 Vitaly Kuznetsov 1.12.00-alt10 - fix build * Fri Oct 29 2010 Eugeny A. Rostovtsev (REAL) 1.12.00-alt9 - Rebuilt for soname set-versions * Thu Nov 20 2008 Andrey Rahmatullin 1.12.00-alt8 - remove update_*/clean_* invocations * Thu Sep 11 2008 Andrey Rahmatullin 1.12.00-alt7 - recognize linux-gnueabi as linux (kas@) * Sun May 11 2008 Andrey Rahmatullin 1.12.00-alt6 - libxmlrpc-devel should also require libxml2-devel because of xmlrpc-c-config * Mon Apr 14 2008 Andrey Rahmatullin 1.12.00-alt5 - fix building with new curl (Gentoo) * Sun Jan 20 2008 Andrey Rahmatullin 1.12.00-alt4 - correctly fix building with new autotools, now including x86_64 (authors seem to have no brain) * Sat Dec 29 2007 Andrey Rahmatullin 1.12.00-alt3 - fix building with new autotools * Sat Oct 27 2007 Andrey Rahmatullin 1.12.00-alt2 - fix x86_64 build (damir@), again - fix broken symlinks in /usr/include * Mon Oct 22 2007 Andrey Rahmatullin 1.12.00-alt1 - 1.12.00 - disable optional server components - disable C++ bindings * Thu Apr 12 2007 Andrey Rahmatullin 1.10.00-alt2 - fix License (#11485) - put docs in one directory * Fri Mar 30 2007 Andrey Rahmatullin 1.10.00-alt1 - 1.10.0 * Wed Jan 03 2007 Andrey Rahmatullin 1.09.00-alt1 - 1.09.00 * Fri Dec 08 2006 Andrey Rahmatullin 1.08.00-alt4 - fix x86_64 build (damir@) * Tue Dec 05 2006 Andrey Rahmatullin 1.08.00-alt3 - package C++ bindings separately * Thu Nov 23 2006 Andrey Rahmatullin 1.08.00-alt2 - fix requires for devel subpackage according to `xmlrpc-c-config client --libs' output * Thu Nov 23 2006 Andrey Rahmatullin 1.08.00-alt1 - 1.08.00 * Wed Aug 23 2006 Andrey Rahmatullin 1.06.02-alt0.3 - Sisyphus build * Sun Aug 13 2006 Damir Shayhutdinov 1.06.02-alt0.2 - Use automake for building. * Mon Aug 07 2006 Andrey Rahmatullin 1.06.02-alt0.1 - initial build