Mercurial > mxe-octave
changeset 1169:9ca7f1fa7c9b
improvements for package gsoap
Don't insist on gnutls in native build.
Do insist on gnutls in MinGW build.
Switch to winsock2, since gnu tls requires it.
Add missing -lgpg-error.
author | Mark Brand <mabrand@mabrand.nl> |
---|---|
date | Mon, 20 Sep 2010 12:00:00 +0200 |
parents | 8ca3933f27ca |
children | 25345fdf9752 |
files | src/gsoap-3-winsock2.patch src/gsoap-4-gpg-error.patch src/gsoap.mk |
diffstat | 3 files changed, 267 insertions(+), 4 deletions(-) [+] |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/gsoap-3-winsock2.patch Mon Sep 20 12:00:00 2010 +0200 @@ -0,0 +1,243 @@ +This file is part of mingw-cross-env. +See doc/index.html for further information. + +This patch has been taken from: +http://sourceforge.net/tracker/?func=detail&aid=3071779&group_id=52781&atid=468023 + +diff -urN a/gsoap/doc/soapdoc2.html b/gsoap/doc/soapdoc2.html +--- a/gsoap/doc/soapdoc2.html 2010-09-19 01:19:28.000000000 +0200 ++++ b/gsoap/doc/soapdoc2.html 2010-09-20 11:19:02.306175307 +0200 +@@ -2599,10 +2599,10 @@ + <div class="p"><!----></div> + + <ul> +-<li> Win32 builds need winsock.dll (MS Visual C++ "wsock32.lib") ++<li> Win32 builds need winsock.dll (MS Visual C++ "ws2_32.lib") + To do this in Visual C++ 6.0, go to "Project", "settings", select the "Link" + tab (the project file needs to be selected in the file view) and add +-"<i>wsock32.lib</i>" to the "<i>Object/library modules</i>" entry.<br /><br /></li> ++"<i>ws2_32.lib</i>" to the "<i>Object/library modules</i>" entry.<br /><br /></li> + + <li> Use files with extension .cpp only (don't mix .c with .cpp).<br /><br /></li> + +diff -urN a/gsoap/mod_gsoap/gsoap_win/isapi/samples/calc/winstuff.cpp b/gsoap/mod_gsoap/gsoap_win/isapi/samples/calc/winstuff.cpp +--- a/gsoap/mod_gsoap/gsoap_win/isapi/samples/calc/winstuff.cpp 2010-09-19 01:19:36.000000000 +0200 ++++ b/gsoap/mod_gsoap/gsoap_win/isapi/samples/calc/winstuff.cpp 2010-09-20 11:18:57.285678758 +0200 +@@ -6,7 +6,7 @@ + #include <winsock2.h> + + #if _MSC_VER > 1000 +-#pragma comment(lib, "wsock32") ++#pragma comment(lib, "ws2_32") + #endif + + static struct WSAInit { \ +diff -urN a/gsoap/mod_gsoap/gsoap_win/isapi/samples/dime/winstuff.cpp b/gsoap/mod_gsoap/gsoap_win/isapi/samples/dime/winstuff.cpp +--- a/gsoap/mod_gsoap/gsoap_win/isapi/samples/dime/winstuff.cpp 2010-09-19 01:19:36.000000000 +0200 ++++ b/gsoap/mod_gsoap/gsoap_win/isapi/samples/dime/winstuff.cpp 2010-09-20 11:18:57.281678556 +0200 +@@ -8,7 +8,7 @@ + + + #if _MSC_VER > 1000 +-#pragma comment(lib, "wsock32") ++#pragma comment(lib, "ws2_32") + #endif + + static struct WSAInit { \ +diff -urN a/gsoap/samples/calc_vs2005/calc_vs2005/stdsoap2.cpp b/gsoap/samples/calc_vs2005/calc_vs2005/stdsoap2.cpp +--- a/gsoap/samples/calc_vs2005/calc_vs2005/stdsoap2.cpp 2010-09-19 01:19:57.000000000 +0200 ++++ b/gsoap/samples/calc_vs2005/calc_vs2005/stdsoap2.cpp 2010-09-20 11:18:57.769678579 +0200 +@@ -52,10 +52,10 @@ + + Installation note: + +-Win32 build needs winsock.dll (Visual C++ "wsock32.lib") ++Win32 build needs winsock.dll (Visual C++ "ws2_32.lib") + To do this in Visual C++ 6.0, go to "Project", "settings", select the "Link" + tab (the project file needs to be selected in the file view) and add +-"wsock32.lib" to the "Object/library modules" entry ++"ws2_32.lib" to the "Object/library modules" entry + + On Mac OS X with gcc (GCC) 3.1 20020420 (prerelease) you MUST compile with + -fstack_check when using -O2 because gcc 3.1 has a bug that smashes the stack +@@ -76,7 +76,7 @@ + # ifdef UNDER_CE + # pragma comment(lib, "winsock.lib") + # else +-# pragma comment(lib, "wsock32.lib") ++# pragma comment(lib, "ws2_32.lib") + # endif + # pragma warning(disable : 4996) /* disable deprecation warnings */ + # endif +diff -urN a/gsoap/samples/calc_vs2005/calc_vs2005/stdsoap2.h b/gsoap/samples/calc_vs2005/calc_vs2005/stdsoap2.h +--- a/gsoap/samples/calc_vs2005/calc_vs2005/stdsoap2.h 2010-09-19 01:19:57.000000000 +0200 ++++ b/gsoap/samples/calc_vs2005/calc_vs2005/stdsoap2.h 2010-09-20 11:18:57.790175332 +0200 +@@ -665,7 +665,7 @@ + # define SOAP_GAI_STRERROR gai_strerrorA + # else + # ifndef __BORLANDC__ +-# include <winsock.h> /* Visual Studio 2005 users: you must install the Platform SDK (R2) */ ++# include <winsock2.h> /* Visual Studio 2005 users: you must install the Platform SDK (R2) */ + /* # include <winsock2.h> */ /* Alternative: use winsock2 (not available with eVC), enable this line and comment out the line above */ + # else + # include <winsock2.h> /* Borland C */ +diff -urN a/gsoap/samples/wsse/stdsoap2.c b/gsoap/samples/wsse/stdsoap2.c +--- a/gsoap/samples/wsse/stdsoap2.c 2010-09-19 01:20:10.000000000 +0200 ++++ b/gsoap/samples/wsse/stdsoap2.c 2010-09-20 11:18:57.846175378 +0200 +@@ -52,10 +52,10 @@ + + Installation note: + +-Win32 build needs winsock.dll (Visual C++ "wsock32.lib") ++Win32 build needs winsock.dll (Visual C++ "ws2_32.lib") + To do this in Visual C++ 6.0, go to "Project", "settings", select the "Link" + tab (the project file needs to be selected in the file view) and add +-"wsock32.lib" to the "Object/library modules" entry ++"ws2_32.lib" to the "Object/library modules" entry + + On Mac OS X with gcc (GCC) 3.1 20020420 (prerelease) you MUST compile with + -fstack_check when using -O2 because gcc 3.1 has a bug that smashes the stack +@@ -76,7 +76,7 @@ + # ifdef UNDER_CE + # pragma comment(lib, "winsock.lib") + # else +-# pragma comment(lib, "wsock32.lib") ++# pragma comment(lib, "ws2_32.lib") + # endif + # pragma warning(disable : 4996) /* disable deprecation warnings */ + # endif +diff -urN a/gsoap/samples/wsse/stdsoap2.h b/gsoap/samples/wsse/stdsoap2.h +--- a/gsoap/samples/wsse/stdsoap2.h 2010-09-19 01:20:10.000000000 +0200 ++++ b/gsoap/samples/wsse/stdsoap2.h 2010-09-20 11:18:57.874175123 +0200 +@@ -665,7 +665,7 @@ + # define SOAP_GAI_STRERROR gai_strerrorA + # else + # ifndef __BORLANDC__ +-# include <winsock.h> /* Visual Studio 2005 users: you must install the Platform SDK (R2) */ ++# include <winsock2.h> /* Visual Studio 2005 users: you must install the Platform SDK (R2) */ + /* # include <winsock2.h> */ /* Alternative: use winsock2 (not available with eVC), enable this line and comment out the line above */ + # else + # include <winsock2.h> /* Borland C */ +diff -urN a/gsoap/stdsoap2.c b/gsoap/stdsoap2.c +--- a/gsoap/stdsoap2.c 2010-09-19 01:20:12.000000000 +0200 ++++ b/gsoap/stdsoap2.c 2010-09-20 11:18:57.117678339 +0200 +@@ -52,10 +52,10 @@ + + Installation note: + +-Win32 build needs winsock.dll (Visual C++ "wsock32.lib") ++Win32 build needs winsock.dll (Visual C++ "ws2_32.lib") + To do this in Visual C++ 6.0, go to "Project", "settings", select the "Link" + tab (the project file needs to be selected in the file view) and add +-"wsock32.lib" to the "Object/library modules" entry ++"ws2_32.lib" to the "Object/library modules" entry + + On Mac OS X with gcc (GCC) 3.1 20020420 (prerelease) you MUST compile with + -fstack_check when using -O2 because gcc 3.1 has a bug that smashes the stack +@@ -76,7 +76,7 @@ + # ifdef UNDER_CE + # pragma comment(lib, "winsock.lib") + # else +-# pragma comment(lib, "wsock32.lib") ++# pragma comment(lib, "ws2_32.lib") + # endif + # pragma warning(disable : 4996) /* disable deprecation warnings */ + # endif +diff -urN a/gsoap/stdsoap2.cpp b/gsoap/stdsoap2.cpp +--- a/gsoap/stdsoap2.cpp 2010-09-19 01:20:12.000000000 +0200 ++++ b/gsoap/stdsoap2.cpp 2010-09-20 11:18:57.005678597 +0200 +@@ -52,10 +52,10 @@ + + Installation note: + +-Win32 build needs winsock.dll (Visual C++ "wsock32.lib") ++Win32 build needs winsock.dll (Visual C++ "ws2_32.lib") + To do this in Visual C++ 6.0, go to "Project", "settings", select the "Link" + tab (the project file needs to be selected in the file view) and add +-"wsock32.lib" to the "Object/library modules" entry ++"ws2_32.lib" to the "Object/library modules" entry + + On Mac OS X with gcc (GCC) 3.1 20020420 (prerelease) you MUST compile with + -fstack_check when using -O2 because gcc 3.1 has a bug that smashes the stack +@@ -76,7 +76,7 @@ + # ifdef UNDER_CE + # pragma comment(lib, "winsock.lib") + # else +-# pragma comment(lib, "wsock32.lib") ++# pragma comment(lib, "ws2_32.lib") + # endif + # pragma warning(disable : 4996) /* disable deprecation warnings */ + # endif +diff -urN a/gsoap/stdsoap2.h b/gsoap/stdsoap2.h +--- a/gsoap/stdsoap2.h 2010-09-19 01:20:12.000000000 +0200 ++++ b/gsoap/stdsoap2.h 2010-09-20 11:19:00.978175369 +0200 +@@ -665,7 +665,7 @@ + # define SOAP_GAI_STRERROR gai_strerrorA + # else + # ifndef __BORLANDC__ +-# include <winsock.h> /* Visual Studio 2005 users: you must install the Platform SDK (R2) */ ++# include <winsock2.h> /* Visual Studio 2005 users: you must install the Platform SDK (R2) */ + /* # include <winsock2.h> */ /* Alternative: use winsock2 (not available with eVC), enable this line and comment out the line above */ + # else + # include <winsock2.h> /* Borland C */ +diff -urN a/gsoap/VisualStudio2005/README.txt b/gsoap/VisualStudio2005/README.txt +--- a/gsoap/VisualStudio2005/README.txt 2010-09-19 01:20:13.000000000 +0200 ++++ b/gsoap/VisualStudio2005/README.txt 2010-09-20 11:18:57.302175378 +0200 +@@ -1,7 +1,7 @@ + + Visual Studio 2005 Solution files for soapcpp2 and wsdl2h. + +-If not already installed, install the Platform SDK (R2) for winsock.h ++If not already installed, install the Platform SDK (R2) for winsock2.h + + To build soapcpp2, first install Bison and Flex (in the default dirs): + http://gnuwin32.sourceforge.net/packages/bison.htm +diff -urN a/gsoap/VisualStudio2005/wsdl2h/wsdl2h/stdsoap2.cpp b/gsoap/VisualStudio2005/wsdl2h/wsdl2h/stdsoap2.cpp +--- a/gsoap/VisualStudio2005/wsdl2h/wsdl2h/stdsoap2.cpp 2010-09-19 01:20:14.000000000 +0200 ++++ b/gsoap/VisualStudio2005/wsdl2h/wsdl2h/stdsoap2.cpp 2010-09-20 11:18:57.389678446 +0200 +@@ -52,10 +52,10 @@ + + Installation note: + +-Win32 build needs winsock.dll (Visual C++ "wsock32.lib") ++Win32 build needs winsock.dll (Visual C++ "ws2_32.lib") + To do this in Visual C++ 6.0, go to "Project", "settings", select the "Link" + tab (the project file needs to be selected in the file view) and add +-"wsock32.lib" to the "Object/library modules" entry ++"ws2_32.lib" to the "Object/library modules" entry + + On Mac OS X with gcc (GCC) 3.1 20020420 (prerelease) you MUST compile with + -fstack_check when using -O2 because gcc 3.1 has a bug that smashes the stack +@@ -76,7 +76,7 @@ + # ifdef UNDER_CE + # pragma comment(lib, "winsock.lib") + # else +-# pragma comment(lib, "wsock32.lib") ++# pragma comment(lib, "ws2_32.lib") + # endif + # pragma warning(disable : 4996) /* disable deprecation warnings */ + # endif +diff -urN a/gsoap/VisualStudio2005/wsdl2h/wsdl2h/stdsoap2.h b/gsoap/VisualStudio2005/wsdl2h/wsdl2h/stdsoap2.h +--- a/gsoap/VisualStudio2005/wsdl2h/wsdl2h/stdsoap2.h 2010-09-19 01:20:14.000000000 +0200 ++++ b/gsoap/VisualStudio2005/wsdl2h/wsdl2h/stdsoap2.h 2010-09-20 11:18:57.537678408 +0200 +@@ -665,7 +665,7 @@ + # define SOAP_GAI_STRERROR gai_strerrorA + # else + # ifndef __BORLANDC__ +-# include <winsock.h> /* Visual Studio 2005 users: you must install the Platform SDK (R2) */ ++# include <winsock2.h> /* Visual Studio 2005 users: you must install the Platform SDK (R2) */ + /* # include <winsock2.h> */ /* Alternative: use winsock2 (not available with eVC), enable this line and comment out the line above */ + # else + # include <winsock2.h> /* Borland C */ +diff -urN a/README.txt b/README.txt +--- a/README.txt 2010-09-19 01:20:17.000000000 +0200 ++++ b/README.txt 2010-09-20 11:18:56.574175394 +0200 +@@ -238,7 +238,7 @@ + + Win32 builds of clients and services requires winsock.dll. To do this in + Visual C++ 6.0, go to "Project", "settings", select the "Link" tab (the +-project file needs to be selected in the file view) and add "wsock32.lib" to ++project file needs to be selected in the file view) and add "ws2_32.lib" to + the "Object/library modules" entry. The distribution contains a Visual Studio + 2005 project example in the 'samples/calc_vs2005' folder with the necessary + project settings to link libraries and automatically invoke to soapcpp2
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/gsoap-4-gpg-error.patch Mon Sep 20 12:00:00 2010 +0200 @@ -0,0 +1,20 @@ +This file is part of mingw-cross-env. +See doc/index.html for further information. + +This patch has been taken from: +http://sourceforge.net/tracker/?func=detail&aid=3071775&group_id=52781&atid=468023 + +diff -urN a/configure.in b/configure.in +--- a/configure.in 2010-09-19 01:19:25.000000000 +0200 ++++ b/configure.in 2010-09-20 11:41:01.573680715 +0200 +@@ -167,8 +167,8 @@ + if test "x$with_gnutls" = "xyes"; then + AC_MSG_RESULT(yes) + WSDL2H_EXTRA_FLAGS="-DWITH_GNUTLS -DWITH_GZIP" +- WSDL2H_EXTRA_LIBS="-lgnutls -lgcrypt -lz" +- SAMPLE_SSL_LIBS="-lgnutls -lgcrypt -lz" ++ WSDL2H_EXTRA_LIBS="-lgnutls -lgcrypt -lgpg-error -lz" ++ SAMPLE_SSL_LIBS="-lgnutls -lgcrypt -lgpg-error -lz" + WSDL2H_SOAP_CPP_LIB="libgsoapssl++.a" + else + AC_MSG_RESULT(no)
--- a/src/gsoap.mk Mon Sep 20 02:11:23 2010 +0200 +++ b/src/gsoap.mk Mon Sep 20 12:00:00 2010 +0200 @@ -10,7 +10,7 @@ $(PKG)_FILE := gsoap_$($(PKG)_VERSION).zip $(PKG)_WEBSITE := http://gsoap2.sourceforge.net/ $(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/gsoap2/gSOAP/$($(PKG)_FILE) -$(PKG)_DEPS := gcc openssl +$(PKG)_DEPS := gcc openssl gnutls define $(PKG)_UPDATE $(call SOURCEFORGE_FILES,http://sourceforge.net/projects/gsoap2/files/) | \ @@ -33,8 +33,7 @@ cd '$(1)' && autoheader # Native build to get tools wsdl2h and soapcpp2 - cd '$(1)' && ./configure \ - --enable-gnutls + cd '$(1)' && ./configure # Parallel bulds can fail $(MAKE) -C '$(1)'/gsoap -j 1 @@ -50,7 +49,8 @@ # http://groups.google.com/group/ikarus-users/browse_thread/thread/fd1d101eac32633f cd '$(1)' && ac_cv_func_malloc_0_nonnull=yes ./configure \ --prefix='$(PREFIX)/$(TARGET)' \ - --host='$(TARGET)' + --host='$(TARGET)' \ + --enable-gnutls # Building for mingw requires native soapcpp2 ln -s '$(PREFIX)/bin/$(TARGET)-soapcpp2' '$(1)'/gsoap/src/soapcpp2