From: Jakub Bogusz Date: Sun, 3 Mar 2013 17:11:26 +0000 (+0100) Subject: - updated to 1.32.05 (svn rev 2451; note: new sonames of C++ libs) X-Git-Tag: auto/th/xmlrpc-c-1.32.05-1~1 X-Git-Url: http://git.pld-linux.org/gitweb.cgi?a=commitdiff_plain;h=91f353187f4ecb82c41507a68c2da571aca67f21;p=packages%2Fxmlrpc-c.git - updated to 1.32.05 (svn rev 2451; note: new sonames of C++ libs) - updated patches from Fedora - updated soname patch - added cmake-fix patch (fix for Fedora cmake patch) --- diff --git a/xmlrpc-c-30x-redirect.patch b/xmlrpc-c-30x-redirect.patch index 1d3df7a..a2d4446 100644 --- a/xmlrpc-c-30x-redirect.patch +++ b/xmlrpc-c-30x-redirect.patch @@ -1,27 +1,27 @@ -From 07f7798d0b6c9b187dd6bfa567be74a224baf1fb Mon Sep 17 00:00:00 2001 +From 255ebf4b1204124123971a3bb27741cccbb51692 Mon Sep 17 00:00:00 2001 From: Enrico Scholz Date: Thu, 29 Jul 2010 19:25:32 +0200 -Subject: [PATCH 5/5] allow 30x redirections +Subject: [PATCH 5/8] allow 30x redirections --- lib/curl_transport/curltransaction.c | 4 ++++ - 1 files changed, 4 insertions(+), 0 deletions(-) + 1 file changed, 4 insertions(+) diff --git a/lib/curl_transport/curltransaction.c b/lib/curl_transport/curltransaction.c -index 3c75010..e1cfc64 100644 +index 0f76fc2..6292aee 100644 --- a/lib/curl_transport/curltransaction.c +++ b/lib/curl_transport/curltransaction.c -@@ -495,6 +495,10 @@ setupCurlSession(xmlrpc_env * const envP, +@@ -600,6 +600,10 @@ setupCurlSession(xmlrpc_env * const envP, curl_easy_setopt(curlSessionP, CURLOPT_POST, 1); - curl_easy_setopt(curlSessionP, CURLOPT_URL, curlTransactionP->serverUrl); + curl_easy_setopt(curlSessionP, CURLOPT_URL, transP->serverUrl); + curl_easy_setopt(curlSessionP, CURLOPT_FOLLOWLOCATION, 1); + curl_easy_setopt(curlSessionP, CURLOPT_MAXREDIRS, (long)10); + curl_easy_setopt(curlSessionP, CURLOPT_POSTREDIR, CURL_REDIR_POST_ALL); + - XMLRPC_MEMBLOCK_APPEND(char, envP, callXmlP, "\0", 1); + XMLRPC_MEMBLOCK_APPEND(char, envP, transP->postDataP, "\0", 1); if (!envP->fault_occurred) { curl_easy_setopt(curlSessionP, CURLOPT_POSTFIELDS, -- -1.7.1.1 +1.7.10.4 diff --git a/xmlrpc-c-cmake-fix.patch b/xmlrpc-c-cmake-fix.patch new file mode 100644 index 0000000..4e93ec9 --- /dev/null +++ b/xmlrpc-c-cmake-fix.patch @@ -0,0 +1,11 @@ +--- xmlrpc-c/src/CMakeLists.txt.orig 2013-03-03 17:47:58.712094469 +0100 ++++ xmlrpc-c/src/CMakeLists.txt 2013-03-03 17:50:33.195421319 +0100 +@@ -22,7 +22,7 @@ + if(MUST_BUILD_LIBWWW_CLIENT) + set(client_libwww_CFLAGS "${LIBWWW_CFLAGS}") + set(client_libwww_LIBS "${LIBWWW_LIBS}") +- list(APPEND transport_SOURCES ${libwww_srcdir}/xmlrpc_libwww_transport.c ${libwww_srcdir}/xmlrpc_libwww_transport.h) ++ list(APPEND transport_SOURCES ${libwww_srcdir}/xmlrpc_libwww_transport.c) + endif(MUST_BUILD_LIBWWW_CLIENT) + + if(MUST_BUILD_CURL_CLIENT) diff --git a/xmlrpc-c-cmake.patch b/xmlrpc-c-cmake.patch index 69efb96..6d544fb 100644 --- a/xmlrpc-c-cmake.patch +++ b/xmlrpc-c-cmake.patch @@ -1,22 +1,22 @@ -From 8410940833027653f6b58866e1468f5dc42dae0e Mon Sep 17 00:00:00 2001 +From 26a4d5168bb69474c3cc304f90592d37bf0be8fe Mon Sep 17 00:00:00 2001 From: Enrico Scholz Date: Sat, 5 Apr 2008 10:55:02 +0200 Subject: [PATCH 1/8] make -> cmake transition cmake: updated --- - CMakeLists.txt | 284 +++++++++++++++++++++++++++ + CMakeLists.txt | 290 +++++++++++++++++++++++++++ cmake/try-attr.cc | 3 + cmake/va-list-is-array.c | 9 + - examples/CMakeLists.txt | 62 ++++++ + examples/CMakeLists.txt | 68 +++++++ examples/config.h | 1 + examples/cpp/CMakeLists.txt | 34 ++++ include/CMakeLists.txt | 3 + include/xmlrpc-c/CMakeLists.txt | 74 +++++++ - include/xmlrpc-c/config.h.cmake | 32 +++ + include/xmlrpc-c/config.h.cmake | 34 ++++ lib/CMakeLists.txt | 12 ++ lib/abyss/CMakeLists.txt | 3 + - lib/abyss/src/CMakeLists.txt | 66 ++++++ + lib/abyss/src/CMakeLists.txt | 70 +++++++ lib/abyss/src/xmlrpc_abyss.pc.cmake | 12 ++ lib/curl_transport/CMakeLists.txt | 20 ++ lib/expat/CMakeLists.txt | 9 + @@ -30,7 +30,7 @@ cmake: updated lib/libwww_transport/CMakeLists.txt | 7 + lib/util/CMakeLists.txt | 17 ++ lib/wininet_transport/CMakeLists.txt | 7 + - src/CMakeLists.txt | 122 ++++++++++++ + src/CMakeLists.txt | 121 +++++++++++ src/cpp/CMakeLists.txt | 70 +++++++ src/cpp/test/CMakeLists.txt | 18 ++ src/cpp/xmlrpc++.pc.cmake | 12 ++ @@ -41,18 +41,20 @@ cmake: updated src/cpp/xmlrpc_server_abyss++.pc.cmake | 12 ++ src/cpp/xmlrpc_server_cgi++.pc.cmake | 12 ++ src/cpp/xmlrpc_server_pstream++.pc.cmake | 12 ++ - src/test/CMakeLists.txt | 39 ++++ src/xmlrpc.pc.cmake | 12 ++ src/xmlrpc_client.pc.cmake | 12 ++ src/xmlrpc_server.pc.cmake | 12 ++ src/xmlrpc_server_abyss.pc.cmake | 12 ++ src/xmlrpc_server_cgi.pc.cmake | 12 ++ - tools/CMakeLists.txt | 21 ++ + test/CMakeLists.txt | 41 ++++ + test/cpp/CMakeLists.txt | 34 ++++ + tools/CMakeLists.txt | 22 ++ tools/binmode-rpc-kit/CMakeLists.txt | 1 + tools/lib/CMakeLists.txt | 1 + tools/turbocharger/CMakeLists.txt | 1 + tools/xml-rpc-api2cpp/CMakeLists.txt | 15 ++ tools/xml-rpc-api2txt/CMakeLists.txt | 7 + + tools/xml/CMakeLists.txt | 16 ++ tools/xmlrpc/CMakeLists.txt | 17 ++ tools/xmlrpc/config.h | 1 + tools/xmlrpc_cpp_proxy/CMakeLists.txt | 17 ++ @@ -62,8 +64,8 @@ cmake: updated transport_config.h.cmake | 16 ++ version.h.cmake | 5 + xmlrpc-c-config | 105 ++++++++++ - xmlrpc_config.h.cmake | 147 ++++++++++++++ - 58 files changed, 1530 insertions(+), 0 deletions(-) + xmlrpc_config.h.cmake | 183 +++++++++++++++++ + 60 files changed, 1636 insertions(+) create mode 100644 CMakeLists.txt create mode 100644 cmake/try-attr.cc create mode 100644 cmake/va-list-is-array.c @@ -100,18 +102,20 @@ cmake: updated create mode 100644 src/cpp/xmlrpc_server_abyss++.pc.cmake create mode 100644 src/cpp/xmlrpc_server_cgi++.pc.cmake create mode 100644 src/cpp/xmlrpc_server_pstream++.pc.cmake - create mode 100644 src/test/CMakeLists.txt create mode 100644 src/xmlrpc.pc.cmake create mode 100644 src/xmlrpc_client.pc.cmake create mode 100644 src/xmlrpc_server.pc.cmake create mode 100644 src/xmlrpc_server_abyss.pc.cmake create mode 100644 src/xmlrpc_server_cgi.pc.cmake + create mode 100644 test/CMakeLists.txt + create mode 100644 test/cpp/CMakeLists.txt create mode 100644 tools/CMakeLists.txt create mode 100644 tools/binmode-rpc-kit/CMakeLists.txt create mode 100644 tools/lib/CMakeLists.txt create mode 100644 tools/turbocharger/CMakeLists.txt create mode 100644 tools/xml-rpc-api2cpp/CMakeLists.txt create mode 100644 tools/xml-rpc-api2txt/CMakeLists.txt + create mode 100644 tools/xml/CMakeLists.txt create mode 100644 tools/xmlrpc/CMakeLists.txt create mode 100644 tools/xmlrpc/config.h create mode 100644 tools/xmlrpc_cpp_proxy/CMakeLists.txt @@ -125,10 +129,10 @@ cmake: updated diff --git a/CMakeLists.txt b/CMakeLists.txt new file mode 100644 -index 0000000..3bb9e03 +index 0000000..2876dea --- /dev/null +++ b/CMakeLists.txt -@@ -0,0 +1,284 @@ +@@ -0,0 +1,290 @@ +## -*- cmake -*- +project(xmlrpc-c) +include(FindPkgConfig) @@ -143,8 +147,8 @@ index 0000000..3bb9e03 + + +set(XMLRPC_C_VERSION_MAJOR "1" CACHE STRING "Version (major) of xmlrpc-c") -+set(XMLRPC_C_VERSION_MINOR "26" CACHE STRING "Version (minor) of xmlrpc-c") -+set(XMLRPC_C_VERSION_POINT "2" CACHE STRING "Version (point) of xmlrpc-c") ++set(XMLRPC_C_VERSION_MINOR "32" CACHE STRING "Version (minor) of xmlrpc-c") ++set(XMLRPC_C_VERSION_POINT "5" CACHE STRING "Version (point) of xmlrpc-c") + +set(XMLRPC_C_VERSION + "${XMLRPC_C_VERSION_MAJOR}.${XMLRPC_C_VERSION_MINOR}.${XMLRPC_C_VERSION_POINT}" @@ -153,8 +157,8 @@ index 0000000..3bb9e03 +set(XMLRPC_C_LIBVERSION "3.${XMLRPC_C_VERSION_MINOR}") +set(XMLRPC_C_SOVERSION "3") + -+set(XMLRPC_CXX_LIBVERSION "7.${XMLRPC_C_VERSION_MINOR}") -+set(XMLRPC_CXX_SOVERSION "7") ++set(XMLRPC_CXX_LIBVERSION "8.${XMLRPC_C_VERSION_MINOR}") ++set(XMLRPC_CXX_SOVERSION "8") + +string(REGEX REPLACE "^0+" "" XMLRPC_C_VERSION_MAJOR_NUM "${XMLRPC_C_VERSION_MAJOR}") +string(REGEX REPLACE "^0+" "" XMLRPC_C_VERSION_MINOR_NUM "${XMLRPC_C_VERSION_MINOR}") @@ -207,6 +211,8 @@ index 0000000..3bb9e03 + set(tmp 0) + endif(WININET_CONFIG_EXECUTABLE) + endif(DEFINED MUST_BUILD_WININET_CLIENT) ++ ++ set(MSVCRT yes) +else(WIN32) + set(tmp 0) +endif(WIN32) @@ -279,19 +285,19 @@ index 0000000..3bb9e03 + +########### + -+set(ENABLE_TOOLS 0 CACHE BOOL "Build the tools") +pkg_check_modules(NCURSES ncurses) +find_library(READLINE readline) + -+if (ENABLE_TOOLS) -+ message(STATUS "Building tools") -+ if (MUST_BUILD_LIBWWW_CLIENT OR MUST_BUILD_WININET_CLIENT OR MUST_BUILD_CURL_CLIENT) -+ if (NCURSES_FOUND AND READLINE) -+ set(BUILD_XMLRPC_PSTREAM 1) -+ message(STATUS "Building xmlrpc_pstream tool") -+ endif() -+ set(BUILD_TOOLS 1) ++if (MUST_BUILD_LIBWWW_CLIENT OR MUST_BUILD_WININET_CLIENT OR MUST_BUILD_CURL_CLIENT) ++ if (NCURSES_FOUND AND READLINE) ++ set(BUILD_XMLRPC_PSTREAM 1) ++ message(STATUS "Building xmlrpc_pstream tool") + endif() ++ message(STATUS "Tools will be built") ++ set(BUILD_TOOLS 1) ++else() ++ message(STATUS "Tools will not be built") ++ set(BUILD_TOOLS 0) +endif() + +#### tests @@ -336,8 +342,11 @@ index 0000000..3bb9e03 + +if(WIN32) + set(DIRECTORY_SEPARATOR "\\") ++ set(THREAD_LIBS "") +else(WIN32) + set(DIRECTORY_SEPARATOR "/") ++ set(THREAD_LIBS "pthread") ++ set(THREAD_LIBS_PKGCONFIG "-lpthread") +endif(WIN32) + +check_include_file(sys/filio.h HAVE_SYS_FILIO_H) @@ -405,11 +414,12 @@ index 0000000..3bb9e03 + +enable_testing() + ++add_subdirectory(test) +add_subdirectory(lib) +add_subdirectory(examples) +add_subdirectory(include) +add_subdirectory(src) -+add_subdirectory(test) ++ +if (BUILD_TOOLS) + add_subdirectory(tools) +endif() @@ -439,10 +449,10 @@ index 0000000..1ad0bab +int main() {} diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt new file mode 100644 -index 0000000..30d0db5 +index 0000000..1535adf --- /dev/null +++ b/examples/CMakeLists.txt -@@ -0,0 +1,62 @@ +@@ -0,0 +1,68 @@ +# -*- cmake -*- + +include_directories(${CMAKE_CURRENT_BINARY_DIR}) @@ -469,6 +479,7 @@ index 0000000..30d0db5 +set(base_LIBS xmlrpc) +ensc_add_example(json c base) +ensc_add_example(gen_sample_add_xml c base) ++ensc_add_example(parse_xml c base) + +if(MUST_BUILD_CLIENT) + set(client_LIBS xmlrpc_client) @@ -483,7 +494,9 @@ index 0000000..30d0db5 +if(MUST_BUILD_CURL_CLIENT) + set(client_LIBS xmlrpc_client) + -+ ensc_add_example(interrupted_client c client) ++ if(NOT DEFINED MSVCRT) ++ ensc_add_example(interrupted_client c client) ++ endif(NOT DEFINED MSVCRT) +endif(MUST_BUILD_CURL_CLIENT) + +if(ENABLE_CGI_SERVER) @@ -496,12 +509,15 @@ index 0000000..30d0db5 + set(abyss_server_LIBS xmlrpc_server_abyss) + + ensc_add_example(compound_value_server c abyss_server) -+ ensc_add_example(interrupted_server c abyss_server) + ensc_add_example(xmlrpc_inetd_server c abyss_server) + ensc_add_example(xmlrpc_socket_server c abyss_server) + ensc_add_example(xmlrpc_loop_server c abyss_server) + ensc_add_example(xmlrpc_sample_add_server c abyss_server) + ensc_add_example(xmlrpc_server_validatee c abyss_server) ++ ++ if(NOT DEFINED MSVCRT) ++ ensc_add_example(interrupted_server c abyss_server) ++ endif(NOT DEFINED MSVCRT) +endif(ENABLE_ABYSS_SERVER) + +ensc_set_link_exe_flags(${example_TARGETS}) @@ -643,10 +659,10 @@ index 0000000..b9386b8 +endforeach(ln) diff --git a/include/xmlrpc-c/config.h.cmake b/include/xmlrpc-c/config.h.cmake new file mode 100644 -index 0000000..80892e5 +index 0000000..48f64be --- /dev/null +++ b/include/xmlrpc-c/config.h.cmake -@@ -0,0 +1,32 @@ +@@ -0,0 +1,34 @@ +/* --*- c -*-- */ +#ifndef XMLRPC_C_CONFIG_H_INCLUDED +#define XMLRPC_C_CONFIG_H_INCLUDED @@ -662,7 +678,7 @@ index 0000000..80892e5 + This file was created by a make rule. +*/ +#define XMLRPC_HAVE_WCHAR @HAVE_WCHAR_H@ -+#ifdef WIN32 ++#ifdef _WIN32 + /* SOCKET is a type defined by . Anyone who + uses XMLRPC_SOCKET on a WIN32 system must #include + @@ -671,11 +687,13 @@ index 0000000..80892e5 + #define XMLRPC_HAVE_TIMEVAL 0 + #define XMLRPC_HAVE_TIMESPEC 0 + #define XMLRPC_HAVE_PTHREAD 0 ++ #define XMLRPC_HAVE_WINTHREAD 1 +#else + #define XMLRPC_SOCKET int + #define XMLRPC_HAVE_TIMEVAL 1 + #define XMLRPC_HAVE_TIMESPEC 1 + #define XMLRPC_HAVE_PTHREAD 1 ++ #define XMLRPC_HAVE_WINTHREAD 0 +#endif + +#endif @@ -708,10 +726,10 @@ index 0000000..2358061 +SUBDIRS(src) diff --git a/lib/abyss/src/CMakeLists.txt b/lib/abyss/src/CMakeLists.txt new file mode 100644 -index 0000000..e7f89bf +index 0000000..b1813bb --- /dev/null +++ b/lib/abyss/src/CMakeLists.txt -@@ -0,0 +1,66 @@ +@@ -0,0 +1,70 @@ +## -*- cmake -*- + +set(xmlrpc_abyss_SOURCES @@ -741,8 +759,6 @@ index 0000000..e7f89bf + session.h + socket.c + socket.h -+ socket_unix.c -+ socket_unix.h + thread.h + token.c + token.h @@ -751,19 +767,25 @@ index 0000000..e7f89bf + +add_definitions(-D_UNIX) + -+if(ENABLE_ABYSS_THREADS) -+ list(APPEND xmlrpc_abyss_SOURCES thread_pthread.c) -+else(ENABLE_ABYSS_THREADS) -+ list(APPEND xmlrpc_abyss_SOURCES thread_fork.c) -+endif(ENABLE_ABYSS_THREADS) ++if(WIN32) ++ list(APPEND xmlrpc_abyss_SOURCES thread_windows.c) ++else(WIN32) ++ list(APPEND xmlrpc_abyss_SOURCES socket_unix.c socket_unix.h) ++ ++ if(ENABLE_ABYSS_THREADS) ++ list(APPEND xmlrpc_abyss_SOURCES thread_pthread.c) ++ else(ENABLE_ABYSS_THREADS) ++ list(APPEND xmlrpc_abyss_SOURCES thread_fork.c) ++ endif(ENABLE_ABYSS_THREADS) ++endif(WIN32) + +add_library(xmlrpc_abyss SHARED ${xmlrpc_abyss_SOURCES}) +target_link_libraries(xmlrpc_abyss xmlrpc_util) + +if(ENABLE_ABYSS_THREADS) + set_target_properties(xmlrpc_abyss PROPERTIES DEFINE_SYMBOL _THREAD) -+ target_link_libraries(xmlrpc_abyss pthread) -+ ensc_pkgconfig_lib(xmlrpc_abyss "-lpthread") ++ target_link_libraries(xmlrpc_abyss ${THREAD_LIBS}) ++ ensc_pkgconfig_lib(xmlrpc_abyss "${THREAD_LIBS_PKGCONFIG}") +endif(ENABLE_ABYSS_THREADS) + +install(TARGETS xmlrpc_abyss @@ -780,7 +802,7 @@ index 0000000..e7f89bf +ensc_pkgconfig(xmlrpc_abyss) diff --git a/lib/abyss/src/xmlrpc_abyss.pc.cmake b/lib/abyss/src/xmlrpc_abyss.pc.cmake new file mode 100644 -index 0000000..fae7af3 +index 0000000..b0dbcc9 --- /dev/null +++ b/lib/abyss/src/xmlrpc_abyss.pc.cmake @@ -0,0 +1,12 @@ @@ -789,12 +811,12 @@ index 0000000..fae7af3 +libdir=@libdir@ +includedir=@includedir@ + -+Name: xmlrpc_abyss ++Name: xmlrpc_abyss +Description: XMLRPC Abyss base library +Version: @XMLRPC_C_VERSION@ + +Requires.private: xmlrpc_util -+Libs: -L${libdir} -lxmlrpc_abyss @xmlrpc_abyss_pkgconfig_libs@ ++Libs: -L${libdir} -lxmlrpc_abyss @xmlrpc_abyss_pkgconfig_libs@ +Cflags: diff --git a/lib/curl_transport/CMakeLists.txt b/lib/curl_transport/CMakeLists.txt new file mode 100644 @@ -955,7 +977,7 @@ index 0000000..25ba487 +ensc_pkgconfig(xmlrpc_util) diff --git a/lib/libutil/xmlrpc_util.pc.cmake b/lib/libutil/xmlrpc_util.pc.cmake new file mode 100644 -index 0000000..3d2968e +index 0000000..d4e01bf --- /dev/null +++ b/lib/libutil/xmlrpc_util.pc.cmake @@ -0,0 +1,10 @@ @@ -963,23 +985,24 @@ index 0000000..3d2968e +libdir=@libdir@ +includedir=@includedir@ + -+Name: xmlrpc_util ++Name: xmlrpc_util +Description: XMLRPC utility library +Version: @XMLRPC_C_VERSION@ + -+Libs: -L${libdir} -lxmlrpc_util ++Libs: -L${libdir} -lxmlrpc_util +Cflags: -I${includedir} diff --git a/lib/libwww_transport/CMakeLists.txt b/lib/libwww_transport/CMakeLists.txt new file mode 100644 index 0000000..aa52d9e --- /dev/null +++ b/lib/libwww_transport/CMakeLists.txt -@@ -0,0 +1,6 @@ +@@ -0,0 +1,7 @@ +# -*- cmake -*- + +if(MUST_BUILD_LIBWWW_CLIENT) + list(APPEND transport_SOURCES -+ ${CMAKE_CURRENT_SOURCE_DIR}/xmlrpc_libwww_transport.c) ++ ${CMAKE_CURRENT_SOURCE_DIR}/xmlrpc_libwww_transport.c ++ ${CMAKE_CURRENT_SOURCE_DIR}/xmlrpc_libwww_transport.h) +endif(MUST_BUILD_LIBWWW_CLIENT) diff --git a/lib/util/CMakeLists.txt b/lib/util/CMakeLists.txt new file mode 100644 @@ -1019,10 +1042,10 @@ index 0000000..17535ab +endif(MUST_BUILD_WININET_CLIENT) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt new file mode 100644 -index 0000000..7ac88b0 +index 0000000..f51e15b --- /dev/null +++ b/src/CMakeLists.txt -@@ -0,0 +1,122 @@ +@@ -0,0 +1,121 @@ +# -*- cmake -*- + +if(ENABLE_LIBXML2_BACKEND) @@ -1047,7 +1070,7 @@ index 0000000..7ac88b0 +if(MUST_BUILD_LIBWWW_CLIENT) + set(client_libwww_CFLAGS "${LIBWWW_CFLAGS}") + set(client_libwww_LIBS "${LIBWWW_LIBS}") -+ list(APPEND transport_SOURCES ${libwww_srcdir}/xmlrpc_libwww_transport.c) ++ list(APPEND transport_SOURCES ${libwww_srcdir}/xmlrpc_libwww_transport.c ${libwww_srcdir}/xmlrpc_libwww_transport.h) +endif(MUST_BUILD_LIBWWW_CLIENT) + +if(MUST_BUILD_CURL_CLIENT) @@ -1075,7 +1098,6 @@ index 0000000..7ac88b0 + + + -+ +### libxmlrpc.so +add_library(xmlrpc SHARED + double.c parse_datetime.c parse_value.c resource.c trace.c version.c @@ -1084,7 +1106,7 @@ index 0000000..7ac88b0 + xmlrpc_data.c xmlrpc_datetime.c xmlrpc_string.c + xmlrpc_array.c xmlrpc_struct.c + xmlrpc_build.c xmlrpc_decompose.c xmlrpc_parse.c xmlrpc_serialize.c -+ xmlrpc_base64.c xmlrpc_authcookie.c) ++ xmlrpc_authcookie.c) + +set_target_properties(xmlrpc + PROPERTIES @@ -1116,7 +1138,7 @@ index 0000000..7ac88b0 +### libxmlrpc_server_abyss.so +if(ENABLE_ABYSS_SERVER) + add_library(xmlrpc_server_abyss SHARED -+ xmlrpc_server_abyss.c) ++ xmlrpc_server_abyss.c abyss_handler.c) + target_link_libraries(xmlrpc_server_abyss xmlrpc_abyss xmlrpc_server) + list(APPEND lib_TARGETS xmlrpc_server_abyss) + ensc_pkgconfig(xmlrpc_server_abyss) @@ -1247,7 +1269,7 @@ index 0000000..dffd36c +add_test(runtests src-test) diff --git a/src/cpp/xmlrpc++.pc.cmake b/src/cpp/xmlrpc++.pc.cmake new file mode 100644 -index 0000000..3bfa992 +index 0000000..e99d81e --- /dev/null +++ b/src/cpp/xmlrpc++.pc.cmake @@ -0,0 +1,12 @@ @@ -1256,16 +1278,16 @@ index 0000000..3bfa992 +libdir=@libdir@ +includedir=@includedir@ + -+Name: xmlrpc++ ++Name: xmlrpc++ +Description: XMLRPC C++ Base library +Version: @XMLRPC_C_VERSION@ + +Requires.private: xmlrpc xmlrpc_util -+Libs: -L${libdir} -lxmlrpc++ ++Libs: -L${libdir} -lxmlrpc++ +Cflags: -I${includedir} diff --git a/src/cpp/xmlrpc_client++.pc.cmake b/src/cpp/xmlrpc_client++.pc.cmake new file mode 100644 -index 0000000..bd6766b +index 0000000..fe1f835 --- /dev/null +++ b/src/cpp/xmlrpc_client++.pc.cmake @@ -0,0 +1,12 @@ @@ -1274,16 +1296,16 @@ index 0000000..bd6766b +libdir=@libdir@ +includedir=@includedir@ + -+Name: xmlrpc_client++ ++Name: xmlrpc_client++ +Description: XMLRPC C++ Client library +Version: @XMLRPC_C_VERSION@ + +Requires.private: xmlrpc++ xmlrpc_client xmlrpc_packetsocket xmlrpc xmlrpc_util -+Libs: -L${libdir} -lxmlrpc_client++ ++Libs: -L${libdir} -lxmlrpc_client++ +Cflags: -I${includedir} diff --git a/src/cpp/xmlrpc_cpp.pc.cmake b/src/cpp/xmlrpc_cpp.pc.cmake new file mode 100644 -index 0000000..8acc22f +index 0000000..9f94252 --- /dev/null +++ b/src/cpp/xmlrpc_cpp.pc.cmake @@ -0,0 +1,12 @@ @@ -1292,16 +1314,16 @@ index 0000000..8acc22f +libdir=@libdir@ +includedir=@includedir@ + -+Name: xmlrpc_cpp ++Name: xmlrpc_cpp +Description: XMLRPC CPP library +Version: @XMLRPC_C_VERSION@ + +Requires.private: xmlrpc xmlrpc_server xmlrpc_util -+Libs: -L${libdir} -lxmlrpc_cpp ++Libs: -L${libdir} -lxmlrpc_cpp +Cflags: -I${includedir} diff --git a/src/cpp/xmlrpc_packetsocket.pc.cmake b/src/cpp/xmlrpc_packetsocket.pc.cmake new file mode 100644 -index 0000000..4a8aedc +index 0000000..e168da3 --- /dev/null +++ b/src/cpp/xmlrpc_packetsocket.pc.cmake @@ -0,0 +1,12 @@ @@ -1310,16 +1332,16 @@ index 0000000..4a8aedc +libdir=@libdir@ +includedir=@includedir@ + -+Name: xmlrpc_packetsocket ++Name: xmlrpc_packetsocket +Description: XMLRPC C++ packsetsocket library +Version: @XMLRPC_C_VERSION@ + +Requires.private: xmlrpc++ -+Libs: -L${libdir} -lxmlrpc_packetsocket ++Libs: -L${libdir} -lxmlrpc_packetsocket +Cflags: -I${includedir} diff --git a/src/cpp/xmlrpc_server++.pc.cmake b/src/cpp/xmlrpc_server++.pc.cmake new file mode 100644 -index 0000000..c769d54 +index 0000000..5080b63 --- /dev/null +++ b/src/cpp/xmlrpc_server++.pc.cmake @@ -0,0 +1,12 @@ @@ -1328,16 +1350,16 @@ index 0000000..c769d54 +libdir=@libdir@ +includedir=@includedir@ + -+Name: xmlrpc_server++ ++Name: xmlrpc_server++ +Description: XMLRPC C++ Server library +Version: @XMLRPC_C_VERSION@ + +Requires.private: xmlrpc++ xmlrpc_server xmlrpc xmlrpc_util -+Libs: -L${libdir} -lxmlrpc_server++ ++Libs: -L${libdir} -lxmlrpc_server++ +Cflags: -I${includedir} diff --git a/src/cpp/xmlrpc_server_abyss++.pc.cmake b/src/cpp/xmlrpc_server_abyss++.pc.cmake new file mode 100644 -index 0000000..b325eff +index 0000000..f1d2198 --- /dev/null +++ b/src/cpp/xmlrpc_server_abyss++.pc.cmake @@ -0,0 +1,12 @@ @@ -1346,16 +1368,16 @@ index 0000000..b325eff +libdir=@libdir@ +includedir=@includedir@ + -+Name: xmlrpc_server_abyss++ ++Name: xmlrpc_server_abyss++ +Description: XMLRPC C++ Abyss-Server library +Version: @XMLRPC_C_VERSION@ + +Requires.private: xmlrpc_server++ xmlrpc_server_abyss xmlrpc++ xmlrpc_abyss xmlrpc_util -+Libs: -L${libdir} -lxmlrpc_server_abyss++ ++Libs: -L${libdir} -lxmlrpc_server_abyss++ +Cflags: -I${includedir} diff --git a/src/cpp/xmlrpc_server_cgi++.pc.cmake b/src/cpp/xmlrpc_server_cgi++.pc.cmake new file mode 100644 -index 0000000..72a3726 +index 0000000..9021564 --- /dev/null +++ b/src/cpp/xmlrpc_server_cgi++.pc.cmake @@ -0,0 +1,12 @@ @@ -1364,16 +1386,16 @@ index 0000000..72a3726 +libdir=@libdir@ +includedir=@includedir@ + -+Name: xmlrpc_server_cgi++ ++Name: xmlrpc_server_cgi++ +Description: XMLRPC C++ CGI-Server library +Version: @XMLRPC_C_VERSION@ + +Requires.private: xmlrpc_server++ xmlrpc++ xmlrpc -+Libs: -L${libdir} -lxmlrpc_server_cgi++ ++Libs: -L${libdir} -lxmlrpc_server_cgi++ +Cflags: -I${includedir} diff --git a/src/cpp/xmlrpc_server_pstream++.pc.cmake b/src/cpp/xmlrpc_server_pstream++.pc.cmake new file mode 100644 -index 0000000..da5639d +index 0000000..9b4819f --- /dev/null +++ b/src/cpp/xmlrpc_server_pstream++.pc.cmake @@ -0,0 +1,12 @@ @@ -1382,61 +1404,16 @@ index 0000000..da5639d +libdir=@libdir@ +includedir=@includedir@ + -+Name: xmlrpc_server_pstream++ ++Name: xmlrpc_server_pstream++ +Description: XMLRPC C++ pstream-Server library +Version: @XMLRPC_C_VERSION@ + +Requires.private: xmlrpc_server++ xmlrpc_packetsocket xmlrpc++ -+Libs: -L${libdir} -lxmlrpc_server_pstream++ ++Libs: -L${libdir} -lxmlrpc_server_pstream++ +Cflags: -I${includedir} -diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt -new file mode 100644 -index 0000000..fdc6869 ---- /dev/null -+++ b/test/CMakeLists.txt -@@ -0,0 +1,39 @@ -+# -*- cmake -*- -+ -+set(test_SOURCES -+ abyss.c -+ abyss.h -+ test.c -+ cgi.c -+ method_registry.c -+ parse_xml.c -+ serialize.c -+ serialize_value.c -+ server_abyss.c -+ testtool.c -+ testtool.h -+ value.c -+ value_datetime.c -+ xml_data.c) -+ -+if(MUST_BUILD_CLIENT) -+ list(APPEND test_SOURCES client.c) -+ list(APPEND test_LIBS xmlrpc_client) -+else(MUST_BUILD_CLIENT) -+ list(APPEND test_SOURCES client_dummy.c) -+endif(MUST_BUILD_CLIENT) -+ -+ -+add_executable(src-test ${test_SOURCES}) -+target_link_libraries(src-test xmlrpc_server_abyss util ${test_LIBS}) -+ -+add_executable(src-cgitest1 cgitest1.c testtool.c testtool.h) -+target_link_libraries(src-cgitest1 xmlrpc_server_cgi) -+ -+add_custom_command(TARGET src-test -+ POST_BUILD -+ COMMAND rm -f ${CMAKE_CURRENT_BINARY_DIR}/data -+ COMMAND ln -s ${CMAKE_CURRENT_SOURCE_DIR}/data ${CMAKE_CURRENT_BINARY_DIR}) -+ -+enable_testing() -+add_test(runtests src-test) diff --git a/src/xmlrpc.pc.cmake b/src/xmlrpc.pc.cmake new file mode 100644 -index 0000000..4c92f93 +index 0000000..7c098b8 --- /dev/null +++ b/src/xmlrpc.pc.cmake @@ -0,0 +1,12 @@ @@ -1445,16 +1422,16 @@ index 0000000..4c92f93 +libdir=@libdir@ +includedir=@includedir@ + -+Name: xmlrpc ++Name: xmlrpc +Description: XMLRPC base library +Version: @XMLRPC_C_VERSION@ + +Requires.private: @xmlrpc_pkgconfig_req@ xmlrpc_util -+Libs: -L${libdir} -lxmlrpc @xmlrpc_pkgconfig_libs@ ++Libs: -L${libdir} -lxmlrpc @xmlrpc_pkgconfig_libs@ +Cflags: -I${includedir} diff --git a/src/xmlrpc_client.pc.cmake b/src/xmlrpc_client.pc.cmake new file mode 100644 -index 0000000..7f28a15 +index 0000000..61543d4 --- /dev/null +++ b/src/xmlrpc_client.pc.cmake @@ -0,0 +1,12 @@ @@ -1463,16 +1440,16 @@ index 0000000..7f28a15 +libdir=@libdir@ +includedir=@includedir@ + -+Name: xmlrpc_client ++Name: xmlrpc_client +Description: XMLRPC client library +Version: @XMLRPC_C_VERSION@ + +Requires.private: xmlrpc @xmlrpc_client_pkgconfig_req@ xmlrpc_util -+Libs: -L${libdir} -lxmlrpc_client @client_libwww_LIBS@ @client_wininet_LIBS@ ++Libs: -L${libdir} -lxmlrpc_client @client_libwww_LIBS@ @client_wininet_LIBS@ +Cflags: -I${includedir} diff --git a/src/xmlrpc_server.pc.cmake b/src/xmlrpc_server.pc.cmake new file mode 100644 -index 0000000..d5c334e +index 0000000..cade53d --- /dev/null +++ b/src/xmlrpc_server.pc.cmake @@ -0,0 +1,12 @@ @@ -1481,16 +1458,16 @@ index 0000000..d5c334e +libdir=@libdir@ +includedir=@includedir@ + -+Name: xmlrpc_server ++Name: xmlrpc_server +Description: XMLRPC Server library +Version: @XMLRPC_C_VERSION@ + +Requires.private: xmlrpc xmlrpc_util -+Libs: -L${libdir} -lxmlrpc_server ++Libs: -L${libdir} -lxmlrpc_server +Cflags: -I${includedir} diff --git a/src/xmlrpc_server_abyss.pc.cmake b/src/xmlrpc_server_abyss.pc.cmake new file mode 100644 -index 0000000..48fa0b1 +index 0000000..198c780 --- /dev/null +++ b/src/xmlrpc_server_abyss.pc.cmake @@ -0,0 +1,12 @@ @@ -1499,16 +1476,16 @@ index 0000000..48fa0b1 +libdir=@libdir@ +includedir=@includedir@ + -+Name: xmlrpc_server_abyss ++Name: xmlrpc_server_abyss +Description: XMLRPC Server Abyss library +Version: @XMLRPC_C_VERSION@ + +Requires.private: xmlrpc_server xmlrpc_abyss xmlrpc xmlrpc_util -+Libs: -L${libdir} -lxmlrpc_server_abyss ++Libs: -L${libdir} -lxmlrpc_server_abyss +Cflags: -I${includedir} diff --git a/src/xmlrpc_server_cgi.pc.cmake b/src/xmlrpc_server_cgi.pc.cmake new file mode 100644 -index 0000000..4d174ef +index 0000000..748b550 --- /dev/null +++ b/src/xmlrpc_server_cgi.pc.cmake @@ -0,0 +1,12 @@ @@ -1517,24 +1494,112 @@ index 0000000..4d174ef +libdir=@libdir@ +includedir=@includedir@ + -+Name: xmlrpc_server_cgi ++Name: xmlrpc_server_cgi +Description: XMLRPC CGI-Server library +Version: @XMLRPC_C_VERSION@ + +Requires.private: xmlrpc_server xmlrpc xmlrpc_util -+Libs: -L${libdir} -lxmlrpc_server_cgi ++Libs: -L${libdir} -lxmlrpc_server_cgi +Cflags: -I${includedir} +diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt +new file mode 100644 +index 0000000..e712382 +--- /dev/null ++++ b/test/CMakeLists.txt +@@ -0,0 +1,41 @@ ++# -*- cmake -*- ++ ++set(test_SOURCES ++ abyss.c ++ abyss.h ++ test.c ++ cgi.c ++ method_registry.c ++ parse_xml.c ++ serialize.c ++ serialize_value.c ++ server_abyss.c ++ testtool.c ++ testtool.h ++ value.c ++ value_datetime.c ++ xml_data.c) ++ ++if(MUST_BUILD_CLIENT) ++ list(APPEND test_SOURCES client.c) ++ list(APPEND test_LIBS xmlrpc_client) ++else(MUST_BUILD_CLIENT) ++ list(APPEND test_SOURCES client_dummy.c) ++endif(MUST_BUILD_CLIENT) ++ ++ ++add_executable(src-test ${test_SOURCES}) ++target_link_libraries(src-test xmlrpc_server_abyss util ${test_LIBS}) ++ ++add_executable(src-cgitest1 cgitest1.c testtool.c testtool.h) ++target_link_libraries(src-cgitest1 xmlrpc_server_cgi) ++ ++add_custom_command(TARGET src-test ++ POST_BUILD ++ COMMAND rm -f ${CMAKE_CURRENT_BINARY_DIR}/data ++ COMMAND ln -s ${CMAKE_CURRENT_SOURCE_DIR}/data ${CMAKE_CURRENT_BINARY_DIR}) ++ ++enable_testing() ++add_test(runtests src-test) ++ ++add_subdirectory(cpp) +diff --git a/test/cpp/CMakeLists.txt b/test/cpp/CMakeLists.txt +new file mode 100644 +index 0000000..15a7c3a +--- /dev/null ++++ b/test/cpp/CMakeLists.txt +@@ -0,0 +1,34 @@ ++# -*- cmake -*- ++ ++set(testcpp_SOURCES ++ test.cpp ++ base64.cpp ++ registry.cpp ++ server_abyss.cpp ++ server_pstream.cpp ++ tools.cpp ++ value.cpp ++ xml.cpp) ++ ++if(MUST_BUILD_CLIENT) ++ list(APPEND testcpp_SOURCES testclient.cpp) ++ list(APPEND testcpp_LIBS xmlrpc_client++) ++else(MUST_BUILD_CLIENT) ++ list(APPEND testcpp_SOURCES testclient_dummy.c) ++endif(MUST_BUILD_CLIENT) ++ ++if(DEFINED MSVCRT) ++ list(APPEND testcpp_SOURCES ${CMAKE_SOURCE_DIR}/Windows/socketpair.cpp) ++endif(DEFINED MSVCRT) ++ ++add_executable(src-testcpp ${testcpp_SOURCES}) ++target_link_libraries(src-testcpp ++ xmlrpc++ ++ xmlrpc_server++ ++ xmlrpc_server_abyss++ ++ xmlrpc_server_pstream++ ++ xmlrpc_cpp ++ util ${testcpp_LIBS}) ++ ++enable_testing() ++add_test(runtests src-testcpp) diff --git a/tools/CMakeLists.txt b/tools/CMakeLists.txt new file mode 100644 -index 0000000..0bc45a9 +index 0000000..cd2a6d7 --- /dev/null +++ b/tools/CMakeLists.txt -@@ -0,0 +1,21 @@ +@@ -0,0 +1,22 @@ +# -*- cmake -*- + +add_subdirectory(lib) +add_subdirectory(binmode-rpc-kit) +add_subdirectory(turbocharger) ++add_subdirectory(xml) + +if (MUST_BUILD_CLIENT) + add_subdirectory(xmlrpc) @@ -1606,6 +1671,28 @@ index 0000000..5b01824 + +install(FILES xml-rpc-api2txt.1 + DESTINATION ${mandir}/man1) +diff --git a/tools/xml/CMakeLists.txt b/tools/xml/CMakeLists.txt +new file mode 100644 +index 0000000..0bab80c +--- /dev/null ++++ b/tools/xml/CMakeLists.txt +@@ -0,0 +1,16 @@ ++# -*- cmake -*- ++ ++add_executable(xmlrpc_parsecall ++ xmlrpc_parsecall.c ++ ../lib/dumpvalue.c) ++ ++target_link_libraries(xmlrpc_parsecall ++ xmlrpc ++ util) ++ ++install(TARGETS xmlrpc_parsecall ++ DESTINATION ${_bin}) ++ ++include_directories(../lib/include) ++ ++ensc_set_link_exe_flags(xmlrpc_parsecall) diff --git a/tools/xmlrpc/CMakeLists.txt b/tools/xmlrpc/CMakeLists.txt new file mode 100644 index 0000000..da01ec3 @@ -1849,10 +1936,10 @@ index 0000000..50577fd +exec pkg-config "$@" $comp diff --git a/xmlrpc_config.h.cmake b/xmlrpc_config.h.cmake new file mode 100644 -index 0000000..2859749 +index 0000000..9eff724 --- /dev/null +++ b/xmlrpc_config.h.cmake -@@ -0,0 +1,147 @@ +@@ -0,0 +1,183 @@ +/* -*- c -*- */ + +#ifndef H_XMLRPC_C_CONFIG_H @@ -1907,9 +1994,15 @@ index 0000000..2859749 + +/* MSVCRT means we're using the Microsoft Visual C++ runtime library */ + -+#ifdef _MSC_VER -+/* The compiler is Microsoft Visual C++. */ ++#if defined(_MSC_VER) ++ /* The compiler is Microsoft Visual C++ */ + #define MSVCRT _MSC_VER ++#elif defined(__MINGW32__) ++ /* The compiler is Mingw, which is the Windows version of the GNU ++ compiler. Programs built with this normally use the Microsoft Visual ++ C++ runtime library. ++ */ ++ #define MSVCRT 1 +#else + #define MSVCRT 0 +#endif @@ -1937,6 +2030,9 @@ index 0000000..2859749 + +#define HAVE_PTHREAD 1 + ++/* Note that the return value of XMLRPC_VSNPRINTF is int on Windows, ++ ssize_t on POSIX. ++*/ +#if MSVCRT + #define XMLRPC_VSNPRINTF _vsnprintf +#else @@ -1957,7 +2053,7 @@ index 0000000..2859749 + #define XMLRPC_CLOSESOCKET close +#endif + -+#if defined(_MSC_VER) ++#if defined(_MSC_VER) && (_MSC_VER >= 1400) +/* Starting with MSVC 8, the runtime library defines various POSIX functions + such as strdup() whose names violate the ISO C standard (the standard + says the strXXX names are reserved for the standard), but warns you of @@ -1995,11 +2091,38 @@ index 0000000..2859749 + #define XMLRPC_STRTOULL _strtoui64 /* Windows MSVC */ +#endif + ++#if MSVCRT ++ #define snprintf _snprintf ++ #define popen _popen ++#endif ++ +#define XMLRPC_INT64 int64_t +#define XMLRPC_PRId64 PRId64 + ++/* S_IRUSR is POSIX, defined in Some old BSD systems and Windows ++ systems have S_IREAD instead. Most Unix today (2011) has both. In 2011, ++ Android has S_IRUSR and not S_IREAD. ++ ++ Some Windows has _S_IREAD. ++ ++ We're ignoring S_IREAD now to see if anyone misses it. If there are still ++ users that need it, we can handle it here. ++*/ ++#if MSVCRT ++ #define XMLRPC_S_IWUSR _S_IWRITE ++ #define XMLRPC_S_IRUSR _S_IREAD ++#else ++ #define XMLRPC_S_IWUSR S_IWUSR ++ #define XMLRPC_S_IRUSR S_IRUSR ++#endif ++ ++#if MSVCRT ++ #define XMLRPC_CHDIR _chdir ++#else ++ #define XMLRPC_CHDIR chdir ++#endif + +#endif -- -1.7.4 +1.7.10.4 diff --git a/xmlrpc-c-printf-size_t.patch b/xmlrpc-c-printf-size_t.patch index 831c590..420b213 100644 --- a/xmlrpc-c-printf-size_t.patch +++ b/xmlrpc-c-printf-size_t.patch @@ -1,11 +1,11 @@ -From c06a722a77198ae42fb79b67d185556ac6c1e246 Mon Sep 17 00:00:00 2001 +From 25a777bb0ee2e2ee17d87006f76b3cea5d15a9f7 Mon Sep 17 00:00:00 2001 From: Enrico Scholz Date: Mon, 25 Feb 2008 17:48:25 +0100 -Subject: [PATCH 2/7] fixed broken format string modifiers +Subject: [PATCH 2/9] fixed broken format string modifiers --- - examples/json.c | 4 ++-- - tools/xmlrpc_pstream/xmlrpc_pstream.cpp | 2 +- + examples/json.c | 4 ++-- + examples/parse_xml.c | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/examples/json.c b/examples/json.c @@ -30,19 +30,19 @@ index 89fe82b..91ea50d 100644 XMLRPC_MEMBLOCK_CONTENTS(char, &out)); XMLRPC_MEMBLOCK_CLEAN(char, &out); -diff --git a/tools/xmlrpc_pstream/xmlrpc_pstream.cpp b/tools/xmlrpc_pstream/xmlrpc_pstream.cpp -index 1417708..0d6ec11 100644 ---- a/tools/xmlrpc_pstream/xmlrpc_pstream.cpp -+++ b/tools/xmlrpc_pstream/xmlrpc_pstream.cpp -@@ -103,7 +103,7 @@ bytestringValFromParm(string const& valueString) { +diff --git a/examples/parse_xml.c b/examples/parse_xml.c +index 2e6c508..4f6c308 100644 +--- a/examples/parse_xml.c ++++ b/examples/parse_xml.c +@@ -58,7 +58,7 @@ describeXmlElement(const xml_element * const elemP, + printf("%sXML element type: '%s'\n", + prefix, xml_element_name(elemP)); - if (valueString.length() / 2 * 2 != valueString.length()) - throwf("Hexadecimal text is not an even " -- "number of characters (it is %u characters)", -+ "number of characters (it is %zu characters)", - valueString.length()); - else { - vector byteString(valueString.length() / 2); +- printf("%sNumber of child elements: %u\n", ++ printf("%sNumber of child elements: %zu\n", + prefix, xml_element_children_size(elemP)); + + for (i = 0; i < xml_element_children_size(elemP); ++i) { -- -1.7.2.3 +1.7.6 diff --git a/xmlrpc-c-soname.patch b/xmlrpc-c-soname.patch index 761699b..c984025 100644 --- a/xmlrpc-c-soname.patch +++ b/xmlrpc-c-soname.patch @@ -1,5 +1,5 @@ ---- xmlrpc-c-1.20.3/src/Makefile~ 2009-10-03 03:58:24.000000000 +0000 -+++ xmlrpc-c-1.20.3/src/Makefile 2009-12-05 21:20:45.038553497 +0000 +--- xmlrpc-c/src/Makefile.orig 2013-03-03 16:31:13.000000000 +0100 ++++ xmlrpc-c/src/Makefile 2013-03-03 17:08:21.062194251 +0100 @@ -15,7 +15,7 @@ SUBDIRS += cpp endif @@ -9,7 +9,7 @@ # We cannot build libxmlrpc_server_abyss if we can't also build Abyss, # because we need libxmlrpc_abyss in order to build the proper runtime -@@ -148,7 +148,7 @@ +@@ -155,7 +155,7 @@ # shlibfn generates e.g. libxmlrpc.so.3.1 # shliblefn generates e.g. libxmlrpc.so @@ -18,7 +18,7 @@ $(LIBXMLRPC): $(LIBXMLRPC_MODS:%=%.osh) \ $(LIBXMLRPC_UTIL) \ -@@ -163,10 +163,10 @@ +@@ -170,10 +170,10 @@ $(LIBXMLRPC_SERVER): \ $(LIBXMLRPC_SERVER_MODS:%=%.osh) \ $(LIBXMLRPC_UTIL) \ @@ -31,7 +31,7 @@ LIBXMLRPC_SERVER_ABYSS = $(call shlibfn, libxmlrpc_server_abyss) -@@ -175,12 +175,12 @@ +@@ -182,12 +182,12 @@ $(LIBXMLRPC_UTIL) \ $(LIBXMLRPC_ABYSS) \ $(call shliblefn, libxmlrpc_server) \ @@ -43,10 +43,10 @@ -L$(LIBXMLRPC_ABYSS_DIR) -lxmlrpc_abyss \ - -L. -lxmlrpc $(XML_PARSER_LIBDEP) -L$(LIBXMLRPC_UTIL_DIR) -lxmlrpc_util + -L. -lxmlrpc-c $(XML_PARSER_LIBDEP) -L$(LIBXMLRPC_UTIL_DIR) -lxmlrpc_util - - LIBXMLRPC_SERVER_CGI = $(call shlibfn, libxmlrpc_server_cgi) - -@@ -188,11 +188,11 @@ + ifeq ($(MSVCRT),yes) + $(LIBXMLRPC_SERVER_ABYSS): LIBDEP += -lws2_32 -lwsock32 + endif +@@ -198,11 +198,11 @@ $(LIBXMLRPC_SERVER_CGI_MODS:%=%.osh) \ $(LIBXMRPC_UTIL) \ $(call shliblefn, libxmlrpc_server) \ @@ -60,7 +60,7 @@ LIBXMLRPC_CLIENT = $(call shlibfn, libxmlrpc_client) -@@ -200,16 +200,16 @@ +@@ -210,7 +210,7 @@ $(LIBXMLRPC_CLIENT_MODS:%=%.osh) \ $(TRANSPORT_MODS:%=%.osh) \ $(LIBXMLRPC_UTIL) \ @@ -69,10 +69,18 @@ $(LIBXMLRPC_CLIENT): LIBOBJECTS = \ $(LIBXMLRPC_CLIENT_MODS:%=%.osh) \ $(TRANSPORT_MODS:%=%.osh) - $(LIBXMLRPC_CLIENT): LIBDEP = \ +@@ -226,7 +226,7 @@ + + LIBXMLRPC_CLIENT_LIBDEP = \ + -Lblddir/src -Lblddir/lib/libutil \ +- -lxmlrpc -lxmlrpc_util \ ++ -lxmlrpc-c -lxmlrpc_util \ + $(XML_PARSER_LIBDEP) \ $(TRANSPORT_LIBDEP) \ -- -L. -lxmlrpc $(XML_PARSER_LIBDEP) -L$(LIBXMLRPC_UTIL_DIR) -lxmlrpc_util -+ -L. -lxmlrpc-c $(XML_PARSER_LIBDEP) -L$(LIBXMLRPC_UTIL_DIR) -lxmlrpc_util + +@@ -235,8 +235,8 @@ + $(LIBXMLRPC_CLIENT): LIBDEP += -lws2_32 -lwsock32 -lpthread + endif -libxmlrpc.a: $(LIBXMLRPC_MODS:%=%.o) -libxmlrpc.a: LIBOBJECTS = $(LIBXMLRPC_MODS:%=%.o) @@ -81,17 +89,6 @@ libxmlrpc_server.a: $(LIBXMLRPC_SERVER_MODS:%=%.o) libxmlrpc_server.a: LIBOBJECTS = $(LIBXMLRPC_SERVER_MODS:%=%.o) ---- xmlrpc-c-1.14.2/tools/common.mk 2008-03-27 19:17:42.000000000 +0100 -+++ xmlrpc-c-1.14.2/tools/common.mk 2008-05-14 18:01:21.855674904 +0200 -@@ -11,7 +11,7 @@ - - CLIENT_LDLIBS = -L$(BLDDIR)/src -L$(BLDDIR)/lib/libutil - --CLIENT_LDLIBS += -lxmlrpc_client -lxmlrpc -lxmlrpc_util -+CLIENT_LDLIBS += -lxmlrpc_client -lxmlrpc-c -lxmlrpc_util - - ifeq ($(MUST_BUILD_LIBWWW_CLIENT),yes) - CLIENT_LDLIBS += $(shell libwww-config --libs) --- xmlrpc-c-1.14.2/common.mk 2008-05-14 17:43:31.882708000 +0200 +++ xmlrpc-c-1.14.2/common.mk 2008-05-14 17:59:12.072278970 +0200 @@ -142,7 +142,7 @@ @@ -112,20 +109,20 @@ LIBXMLRPC_CLIENT_A = $(BLDDIR)/src/libxmlrpc_client.a LIBXMLRPC_SERVER_A = $(BLDDIR)/src/libxmlrpc_server.a LIBXMLRPC_SERVER_ABYSS_A = $(BLDDIR)/src/libxmlrpc_server_abyss.a ---- xmlrpc-c-1.14.2/xmlrpc-c-config.main.orig 2008-04-18 18:22:02.000000000 +0200 -+++ xmlrpc-c-1.14.2/xmlrpc-c-config.main 2008-05-14 18:02:04.022081182 +0200 +--- xmlrpc-c/xmlrpc-c-config.main.orig 2013-03-03 17:06:35.282198688 +0100 ++++ xmlrpc-c/xmlrpc-c-config.main 2013-03-03 17:44:58.868768683 +0100 @@ -45,7 +45,7 @@ the_libdirs="-L$LIBINST_DIR $the_libdirs" --the_libs="-lxmlrpc -lxmlrpc_util ${LIBXML}" -+the_libs="-lxmlrpc-c -lxmlrpc_util ${LIBXML}" +-the_libs="-lxmlrpc ${LIBXML} -lxmlrpc_util" ++the_libs="-lxmlrpc-c ${LIBXML} -lxmlrpc_util" the_rpath="-R$LIBINST_DIR $the_rpath" the_wl_rpath="-Wl,-rpath,$LIBINST_DIR $the_wl_rpath" ---- xmlrpc-c-1.20.3/src/cpp/Makefile~ 2009-07-01 17:39:59.000000000 +0000 -+++ xmlrpc-c-1.20.3/src/cpp/Makefile 2009-12-05 21:25:08.455609267 +0000 -@@ -127,7 +127,7 @@ +--- xmlrpc-c/src/cpp/Makefile.orig 2013-03-03 16:31:11.000000000 +0100 ++++ xmlrpc-c/src/cpp/Makefile 2013-03-03 17:46:03.132099319 +0100 +@@ -119,7 +119,7 @@ $(LIBXMLRPC_UTIL) $(LIBXMLRPC_CPP_SH): LIBOBJECTS = XmlRpcCpp.osh $(LIBXMLRPC_CPP_SH): LIBDEP = \ @@ -134,7 +131,7 @@ $(XML_PARSER_LIBDEP) \ -L$(LIBXMLRPC_UTIL_DIR) -lxmlrpc_util -@@ -138,7 +138,7 @@ +@@ -130,7 +130,7 @@ $(LIBXMLRPC_UTIL) $(LIBXMLRPCPP_SH): LIBOBJECTS = $(LIBXMLRPCPP_MODS:%=%.osh) $(LIBXMLRPCPP_SH): LIBDEP = \ @@ -142,8 +139,8 @@ + -Lblddir/src -lxmlrpc-c \ $(XML_PARSER_LIBDEP) \ -L$(LIBXMLRPC_UTIL_DIR) -lxmlrpc_util - -@@ -153,7 +153,7 @@ + ifeq ($(MSVCRT),yes) +@@ -147,7 +147,7 @@ $(LIBXMLRPC_SERVERPP_SH): LIBOBJECTS = $(LIBXMLRPC_SERVERPP_MODS:%=%.osh) $(LIBXMLRPC_SERVERPP_SH): LIBDEP = \ -L. -l$(LIBXMLRPCPP_NAME) \ @@ -151,8 +148,8 @@ + -Lblddir/src -lxmlrpc_server -lxmlrpc-c \ $(XML_PARSER_LIBDEP) \ -L$(LIBXMLRPC_UTIL_DIR) -lxmlrpc_util - -@@ -169,7 +169,7 @@ + ifeq ($(MSVCRT),yes) +@@ -166,7 +166,7 @@ $(LIBXMLRPC_SERVER_ABYSSPP_SH): LIBOBJECTS = $(LIBXMLRPC_SERVER_ABYSSPP_MODS:%=%.osh) $(LIBXMLRPC_SERVER_ABYSSPP_SH): LIBDEP = \ -L. -lxmlrpc_server++ -l$(LIBXMLRPCPP_NAME) \ @@ -161,7 +158,7 @@ $(XML_PARSER_LIBDEP) \ -L$(LIBXMLRPC_ABYSS_DIR) -lxmlrpc_abyss \ -L$(LIBXMLRPC_UTIL_DIR) -lxmlrpc_util \ -@@ -183,7 +183,7 @@ +@@ -184,7 +184,7 @@ $(LIBXMLRPC_SERVER_CGIPP_SH): LIBOBJECTS = $(LIBXMLRPC_SERVER_CGIPP_MODS:%=%.osh) $(LIBXMLRPC_SERVER_CGIPP_SH): LIBDEP = \ -L. -lxmlrpc_server++ -l$(LIBXMLRPCPP_NAME) \ @@ -169,8 +166,8 @@ + -Lblddir/src -lxmlrpc_server -lxmlrpc-c \ $(XML_PARSER_LIBDEP) \ -L$(LIBXMLRPC_UTIL_DIR) -lxmlrpc_util - -@@ -197,7 +197,7 @@ + ifeq ($(MSVCRT),yes) +@@ -201,7 +201,7 @@ $(LIBXMLRPC_SERVER_PSTREAMPP_SH): LIBOBJECTS = $(LIBXMLRPC_SERVER_PSTREAMPP_MODS:%=%.osh) $(LIBXMLRPC_SERVER_PSTREAMPP_SH): LIBDEP = \ -L. -lxmlrpc_server++ -l$(LIBXMLRPCPP_NAME) -lxmlrpc_packetsocket \ @@ -179,16 +176,16 @@ $(XML_PARSER_LIBDEP) \ -L$(LIBXMLRPC_UTIL_DIR) -lxmlrpc_util \ -@@ -212,7 +212,7 @@ - $(LIBXMLRPC_CLIENTPP_SH): LIBOBJECTS = $(LIBXMLRPC_CLIENTPP_MODS:%=%.osh) +@@ -222,7 +222,7 @@ $(LIBXMLRPC_CLIENTPP_SH): LIBDEP = \ -L. -l$(LIBXMLRPCPP_NAME) -lxmlrpc_packetsocket \ + $(shell cat blddir/src/libxmlrpc_client.ldflags) \ - -Lblddir/src -lxmlrpc_client -lxmlrpc \ + -Lblddir/src -lxmlrpc_client -lxmlrpc-c \ $(XML_PARSER_LIBDEP) \ -L$(LIBXMLRPC_UTIL_DIR) -lxmlrpc_util - -@@ -223,7 +223,7 @@ + ifeq ($(MSVCRT),yes) +@@ -236,7 +236,7 @@ $(LIBXMLRPC_PACKETSOCKET_SH): LIBOBJECTS = $(LIBXMLRPC_PACKETSOCKET_MODS:%=%.osh) $(LIBXMLRPC_PACKETSOCKET_SH): LIBDEP = \ -L. -l$(LIBXMLRPCPP_NAME) \ @@ -196,15 +193,15 @@ + -Lblddir/src -lxmlrpc-c \ $(XML_PARSER_LIBDEP) \ -L$(LIBXMLRPC_UTIL_DIR) -lxmlrpc_util - ---- xmlrpc-c-1.20.3/src/xmlrpc.pc.cmake~ 2009-12-05 22:00:03.000000000 +0000 -+++ xmlrpc-c-1.20.3/src/xmlrpc.pc.cmake 2009-12-05 22:00:41.931645906 +0000 + ifeq ($(MSVCRT),yes) +--- xmlrpc-c/src/xmlrpc.pc.cmake.orig 2013-03-03 17:06:35.285532023 +0100 ++++ xmlrpc-c/src/xmlrpc.pc.cmake 2013-03-03 17:46:37.542097875 +0100 @@ -8,5 +8,5 @@ Version: @XMLRPC_C_VERSION@ Requires.private: @xmlrpc_pkgconfig_req@ xmlrpc_util --Libs: -L${libdir} -lxmlrpc @xmlrpc_pkgconfig_libs@ -+Libs: -L${libdir} -lxmlrpc-c @xmlrpc_pkgconfig_libs@ +-Libs: -L${libdir} -lxmlrpc @xmlrpc_pkgconfig_libs@ ++Libs: -L${libdir} -lxmlrpc-c @xmlrpc_pkgconfig_libs@ Cflags: -I${includedir} --- xmlrpc-c-1.20.3/src/CMakeLists.txt 2009-12-05 22:06:26.335153315 +0000 +++ xmlrpc-c-1.20.3/src/CMakeLists.txt 2009-12-05 22:09:49.944925301 +0000 @@ -281,3 +278,14 @@ ensc_add_example(json c base) ensc_add_example(gen_sample_add_xml c base) +--- xmlrpc-c/tools/xml/CMakeLists.txt.orig 2013-03-03 17:51:15.572086205 +0100 ++++ xmlrpc-c/tools/xml/CMakeLists.txt 2013-03-03 17:56:38.495405989 +0100 +@@ -5,7 +5,7 @@ + ../lib/dumpvalue.c) + + target_link_libraries(xmlrpc_parsecall +- xmlrpc ++ xmlrpc-c + util) + + install(TARGETS xmlrpc_parsecall diff --git a/xmlrpc-c.spec b/xmlrpc-c.spec index 91c24a1..4a6f0f0 100644 --- a/xmlrpc-c.spec +++ b/xmlrpc-c.spec @@ -1,19 +1,20 @@ Summary: XML-RPC C library - an implementation of the xmlrpc protocol Summary(pl.UTF-8): Biblioteka XML-RPC C - implementacja protokołu xmlrpc Name: xmlrpc-c -Version: 1.28.10 -Release: 2 +Version: 1.32.05 +Release: 1 License: XML-RPC for C License (BSD-like) Group: Libraries # svn co http://xmlrpc-c.svn.sourceforge.net/svnroot/xmlrpc-c/advanced xmlrpc-c # Unfortunately, upstream does not tag versions so we must fetch from the branch # and check which version was used for it -# 1.28.10 is svn r2181 +# 1.32.05 is svn r2451 Source0: %{name}-%{version}.tar.xz -# Source0-md5: b1d7d851bbd50169be668ef16817bc6b +# Source0-md5: c80cfb54a6e26247369de042474e08e0 Patch0: %{name}-fastdep.patch Patch1: %{name}-soname.patch Patch2: %{name}-cflags.patch +Patch3: %{name}-cmake-fix.patch # patches 10+ come from Fedora Patch10: %{name}-cmake.patch Patch11: %{name}-printf-size_t.patch @@ -281,6 +282,7 @@ XML-RPC. %patch15 -p1 %patch16 -p1 %patch1 -p1 +%patch3 -p1 %build mkdir -p build @@ -400,11 +402,11 @@ rm -rf $RPM_BUILD_ROOT %files c++ %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/libxmlrpc++.so.*.* -%attr(755,root,root) %ghost %{_libdir}/libxmlrpc++.so.7 +%attr(755,root,root) %ghost %{_libdir}/libxmlrpc++.so.8 %attr(755,root,root) %{_libdir}/libxmlrpc_cpp.so.*.* -%attr(755,root,root) %ghost %{_libdir}/libxmlrpc_cpp.so.7 +%attr(755,root,root) %ghost %{_libdir}/libxmlrpc_cpp.so.8 %attr(755,root,root) %{_libdir}/libxmlrpc_packetsocket.so.*.* -%attr(755,root,root) %ghost %{_libdir}/libxmlrpc_packetsocket.so.7 +%attr(755,root,root) %ghost %{_libdir}/libxmlrpc_packetsocket.so.8 %files c++-devel %defattr(644,root,root,755) @@ -427,7 +429,7 @@ rm -rf $RPM_BUILD_ROOT %files client++ %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/libxmlrpc_client++.so.*.* -%attr(755,root,root) %ghost %{_libdir}/libxmlrpc_client++.so.7 +%attr(755,root,root) %ghost %{_libdir}/libxmlrpc_client++.so.8 %files client++-devel %defattr(644,root,root,755) @@ -438,13 +440,13 @@ rm -rf $RPM_BUILD_ROOT %files server++ %defattr(644,root,root,755) %attr(755,root,root) %{_libdir}/libxmlrpc_server++.so.*.* -%attr(755,root,root) %ghost %{_libdir}/libxmlrpc_server++.so.7 +%attr(755,root,root) %ghost %{_libdir}/libxmlrpc_server++.so.8 %attr(755,root,root) %{_libdir}/libxmlrpc_server_abyss++.so.*.* -%attr(755,root,root) %ghost %{_libdir}/libxmlrpc_server_abyss++.so.7 +%attr(755,root,root) %ghost %{_libdir}/libxmlrpc_server_abyss++.so.8 %attr(755,root,root) %{_libdir}/libxmlrpc_server_cgi++.so.*.* -%attr(755,root,root) %ghost %{_libdir}/libxmlrpc_server_cgi++.so.7 +%attr(755,root,root) %ghost %{_libdir}/libxmlrpc_server_cgi++.so.8 %attr(755,root,root) %{_libdir}/libxmlrpc_server_pstream++.so.*.* -%attr(755,root,root) %ghost %{_libdir}/libxmlrpc_server_pstream++.so.7 +%attr(755,root,root) %ghost %{_libdir}/libxmlrpc_server_pstream++.so.8 %files server++-devel %defattr(644,root,root,755) @@ -463,6 +465,7 @@ rm -rf $RPM_BUILD_ROOT %defattr(644,root,root,755) %doc tools/xmlrpc/xmlrpc.html tools/xmlrpc_transport/xmlrpc_transport.html %attr(755,root,root) %{_bindir}/xmlrpc +%attr(755,root,root) %{_bindir}/xmlrpc_parsecall %attr(755,root,root) %{_bindir}/xmlrpc_transport %attr(755,root,root) %{_bindir}/xml-rpc-api2cpp %attr(755,root,root) %{_bindir}/xml-rpc-api2txt