Mercurial > hg > mxe-octave-anirudha
changeset 1896:d0eec01db1b5
new package libircclient
author | Lothar May <lothar.imap@googlemail.com> |
---|---|
date | Thu, 23 Jun 2011 16:52:03 +1000 |
parents | affb36333758 |
children | 5d24b95b4480 |
files | src/libircclient-1-makefile.patch src/libircclient-2-disable-ipv6.patch src/libircclient-3-win32def.patch src/libircclient-test.cpp src/libircclient.mk tools/patch-tool-mingw |
diffstat | 6 files changed, 189 insertions(+), 1 deletions(-) [+] |
line wrap: on
line diff
new file mode 100644 --- /dev/null +++ b/src/libircclient-1-makefile.patch @@ -0,0 +1,15 @@ +The wrong source files are specified in the makefile. +There is one wrapper source file which includes all and +implements additional functions. + +--- a/src/Makefile.in 2011-03-11 01:21:16.000000000 +0100 ++++ b/src/Makefile.in 2011-03-11 01:22:04.000000000 +0100 +@@ -20,7 +20,7 @@ + cp ../include/libirc_events.h @prefix@/include/libirc_events.h + cp libirc.a @prefix@/include/lib/libirc.a + +-$(OBJS): utils.c dcc.c errors.c portable.c sockets.c colors.c ++$(OBJS): libircclient.c + + libircclient.a: $(OBJS) + $(AR) libircclient.a $(OBJS)
new file mode 100644 --- /dev/null +++ b/src/libircclient-2-disable-ipv6.patch @@ -0,0 +1,14 @@ +IPv6 support is broken and is forced to be disabled. +This place is sufficient - IPv6 initialisation will now cause an error. + +--- a/src/libircclient.c 2011-05-26 21:23:06.000000000 +0200 ++++ b/src/libircclient.c 2011-05-26 21:23:33.000000000 +0200 +@@ -194,7 +194,7 @@ + const char * username, + const char * realname) + { +-#if defined (ENABLE_IPV6) ++#if 0 + struct sockaddr_in6 saddr; + struct addrinfo ainfo, *res = NULL; + char portStr[32];
new file mode 100644 --- /dev/null +++ b/src/libircclient-3-win32def.patch @@ -0,0 +1,105 @@ +Use the proper WIN32 define. + +--- a/src/sockets.c 2011-05-26 21:29:33.000000000 +0200 ++++ b/src/sockets.c 2011-05-26 21:30:25.000000000 +0200 +@@ -15,7 +15,7 @@ + /* + * The sockets interface was moved out to simplify going OpenSSL integration. + */ +-#if !defined (WIN32) ++#if !defined (_WIN32) + #include <sys/socket.h> + #include <netdb.h> + #include <arpa/inet.h> +@@ -47,7 +47,7 @@ + + static int socket_error() + { +-#if !defined (WIN32) ++#if !defined (_WIN32) + return errno; + #else + return WSAGetLastError(); +@@ -64,7 +64,7 @@ + + static int socket_make_nonblocking (socket_t * sock) + { +-#if !defined (WIN32) ++#if !defined (_WIN32) + return fcntl (*sock, F_SETFL, fcntl (*sock, F_GETFL,0 ) | O_NONBLOCK) != 0; + #else + unsigned long mode = 0; +@@ -75,7 +75,7 @@ + + static int socket_close (socket_t * sock) + { +-#if !defined (WIN32) ++#if !defined (_WIN32) + close (*sock); + #else + closesocket (*sock); +--- a/src/portable.c 2011-05-26 21:29:27.000000000 +0200 ++++ b/src/portable.c 2011-05-26 21:30:03.000000000 +0200 +@@ -13,7 +13,7 @@ + */ + + +-#if !defined (WIN32) ++#if !defined (_WIN32) + #include "config.h" + #include <stdio.h> + #include <stdarg.h> +@@ -65,7 +65,7 @@ + + static inline int libirc_mutex_init (port_mutex_t * mutex) + { +-#if defined (WIN32) ++#if defined (_WIN32) + InitializeCriticalSection (mutex); + return 0; + #elif defined (PTHREAD_MUTEX_RECURSIVE) +@@ -78,13 +78,13 @@ + + return pthread_mutex_init (mutex, 0); + +-#endif /* defined (WIN32) */ ++#endif /* defined (_WIN32) */ + } + + + static inline void libirc_mutex_destroy (port_mutex_t * mutex) + { +-#if defined (WIN32) ++#if defined (_WIN32) + DeleteCriticalSection (mutex); + #else + pthread_mutex_destroy (mutex); +@@ -94,7 +94,7 @@ + + static inline void libirc_mutex_lock (port_mutex_t * mutex) + { +-#if defined (WIN32) ++#if defined (_WIN32) + EnterCriticalSection (mutex); + #else + pthread_mutex_lock (mutex); +@@ -104,7 +104,7 @@ + + static inline void libirc_mutex_unlock (port_mutex_t * mutex) + { +-#if defined (WIN32) ++#if defined (_WIN32) + LeaveCriticalSection (mutex); + #else + pthread_mutex_unlock (mutex); +--- a/include/libircclient.h 2011-05-26 21:35:53.000000000 +0200 ++++ b/include/libircclient.h 2011-05-26 21:36:04.000000000 +0200 +@@ -43,7 +43,7 @@ + #ifndef INCLUDE_LIBIRC_H + #define INCLUDE_LIBIRC_H + +-#if !defined (WIN32) ++#if !defined (_WIN32) + #include <sys/select.h> /* fd_set */ + #else + #include <winsock2.h>
new file mode 100644 --- /dev/null +++ b/src/libircclient-test.cpp @@ -0,0 +1,11 @@ +#include <libircclient/libircclient.h> + +int +main() +{ + irc_callbacks_t callbacks; + memset(&callbacks, 0, sizeof(callbacks)); + + irc_create_session(&callbacks); + return 0; +}
new file mode 100644 --- /dev/null +++ b/src/libircclient.mk @@ -0,0 +1,43 @@ +# This file is part of mingw-cross-env. +# See doc/index.html for further information. + +# libircclient +# Note that IPv6 support is partly broken and therefore disabled. +PKG := libircclient +$(PKG)_IGNORE := +$(PKG)_VERSION := 1.3 +$(PKG)_CHECKSUM := 19b01d0227e717b58630037131798ee34fb0b414 +$(PKG)_SUBDIR := $(PKG)-$($(PKG)_VERSION) +$(PKG)_FILE := $(PKG)-$($(PKG)_VERSION).tar.gz +$(PKG)_WEBSITE := http://sourceforge.net/projects/$(PKG)/ +$(PKG)_URL := http://$(SOURCEFORGE_MIRROR)/project/$(PKG)/$(PKG)/$($(PKG)_VERSION)/$($(PKG)_FILE) +$(PKG)_DEPS := gcc + +define $(PKG)_UPDATE + wget -q -O- 'http://sourceforge.net/projects/libircclient/files/libircclient/' | \ + $(SED) -n 's,.*/\([0-9][^"]*\)/".*,\1,p' | \ + head -1 +endef + +define $(PKG)_BUILD + cd '$(1)' && ./configure \ + --prefix='$(PREFIX)/$(TARGET)' \ + --host='$(TARGET)' \ + --disable-debug \ + --enable-threads \ + --disable-ipv6 + $(MAKE) -C '$(1)'/src -j '$(JOBS)' + $(INSTALL) -d '$(PREFIX)/$(TARGET)/lib' + $(INSTALL) -m644 '$(1)/src/libircclient.a' '$(PREFIX)/$(TARGET)/lib/' + $(INSTALL) -d '$(PREFIX)/$(TARGET)/include/libircclient' + $(INSTALL) -m644 '$(1)/include/libircclient.h' '$(PREFIX)/$(TARGET)/include/libircclient' + $(INSTALL) -m644 '$(1)/include/libirc_errors.h' '$(PREFIX)/$(TARGET)/include/libircclient' + $(INSTALL) -m644 '$(1)/include/libirc_events.h' '$(PREFIX)/$(TARGET)/include/libircclient' + $(INSTALL) -m644 '$(1)/include/libirc_rfcnumeric.h' '$(PREFIX)/$(TARGET)/include/libircclient' + $(INSTALL) -m644 '$(1)/include/libirc_options.h' '$(PREFIX)/$(TARGET)/include/libircclient' + + '$(TARGET)-g++' \ + -W -Wall -Werror -ansi -pedantic \ + '$(2).cpp' -o '$(PREFIX)/$(TARGET)/bin/test-libircclient.exe' \ + -lircclient -lws2_32 +endef