Changeset 2e0f24d


Ignore:
Timestamp:
2008-06-10T21:09:08Z (16 years ago)
Author:
Jelmer Vernooij <jelmer@…>
Branches:
master
Children:
178e2f8
Parents:
b6cd9e9 (diff), 6a72a57 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the (diff) links above to see all the changes relative to each parent.
Message:

Merge support for cross-compiling for Windows using the mingw32 compiler.

Files:
3 added
14 edited

Legend:

Unmodified
Added
Removed
  • .bzrignore

    rb6cd9e9 r2e0f24d  
    1919coverage
    2020bitlbee.info
     21bitlbee.exe
  • Makefile

    rb6cd9e9 r2e0f24d  
    1010
    1111# Program variables
    12 objects = account.o bitlbee.o conf.o crypting.o help.o ipc.o irc.o irc_commands.o log.o nick.o query.o root_commands.o set.o storage.o $(STORAGE_OBJS) unix.o user.o
     12objects = account.o bitlbee.o crypting.o help.o ipc.o irc.o irc_commands.o nick.o query.o root_commands.o set.o storage.o $(STORAGE_OBJS) user.o
    1313headers = account.h bitlbee.h commands.h conf.h config.h crypting.h help.h ipc.h irc.h log.h nick.h query.h set.h sock.h storage.h user.h lib/events.h lib/http_client.h lib/ini.h lib/md5.h lib/misc.h lib/proxy.h lib/sha1.h lib/ssl_client.h lib/url.h protocols/nogaim.h
    1414subdirs = lib protocols
     15
     16ifeq ($(TARGET),i586-mingw32msvc)
     17objects += win32.o
     18LFLAGS+=-lws2_32
     19EFLAGS+=-lsecur32
     20OUTFILE=bitlbee.exe
     21else
     22objects += unix.o conf.o log.o
     23OUTFILE=bitlbee
     24endif
    1525
    1626# Expansion of variables
  • bitlbee.c

    rb6cd9e9 r2e0f24d  
    123123                ipc_master_listen_socket();
    124124       
     125#ifndef _WIN32
    125126        if( ( fp = fopen( global.conf->pidfile, "w" ) ) )
    126127        {
     
    132133                log_message( LOGLVL_WARNING, "Warning: Couldn't write PID to `%s'", global.conf->pidfile );
    133134        }
     135#endif
    134136       
    135137        return( 0 );
     
    140142        if( !irc_new( 0 ) )
    141143                return( 1 );
    142        
    143         log_link( LOGLVL_ERROR, LOGOUTPUT_IRC );
    144         log_link( LOGLVL_WARNING, LOGOUTPUT_IRC );
    145144       
    146145        return( 0 );
     
    254253        struct sockaddr_in conn_info;
    255254        int new_socket = accept( global.listen_socket, (struct sockaddr *) &conn_info, &size );
    256         pid_t client_pid = 0;
    257255       
    258256        if( new_socket == -1 )
     
    262260        }
    263261       
     262#ifndef _WIN32
    264263        if( global.conf->runmode == RUNMODE_FORKDAEMON )
    265264        {
     265                pid_t client_pid = 0;
    266266                int fds[2];
    267267               
     
    320320        }
    321321        else
     322#endif
    322323        {
    323324                log_message( LOGLVL_INFO, "Creating new connection with fd %d.", new_socket );
  • bitlbee.h

    rb6cd9e9 r2e0f24d  
    2929#define _GNU_SOURCE /* Stupid GNU :-P */
    3030
     31/* Depend on Windows 2000 for now since we need getaddrinfo() */
     32#define _WIN32_WINNT 0x0501
     33
    3134#define PACKAGE "BitlBee"
    3235#define BITLBEE_VERSION "1.2"
     
    4851#include <stdio.h>
    4952#include <ctype.h>
     53#include <errno.h>
     54
    5055#ifndef _WIN32
    5156#include <syslog.h>
    52 #include <errno.h>
    5357#endif
    5458
  • configure

    rb6cd9e9 r2e0f24d  
    2020ipcsocket='/var/run/bitlbee.sock'
    2121pcdir='$prefix/lib/pkgconfig'
     22systemlibdirs="/lib /usr/lib /usr/local/lib"
    2223
    2324msn=1
     
    109110PCDIR=$pcdir
    110111
     112TARGET=$target
    111113ARCH=$arch
    112114CPU=$cpu
    113 OUTFILE=bitlbee
    114115
    115116DESTDIR=
     
    134135EOF
    135136
     137
     138
    136139if [ -n "$target" ]; then
    137         PKG_CONFIG_PATH=/usr/$target/lib/pkgconfig
     140        PKG_CONFIG_LIBDIR=/usr/$target/lib/pkgconfig
     141        export PKG_CONFIG_LIBDIR
    138142        PATH=/usr/$target/bin:$PATH
    139143        CC=$target-cc
    140144        LD=$target-ld
    141 fi
     145        systemlibdirs="/usr/$target/lib"
     146fi
     147
    142148
    143149if [ "$debug" = "1" ]; then
     
    285291elif [ "$ssl" = "nss" ]; then
    286292        detect_nss
     293elif [ "$ssl" = "sspi" ]; then
     294        echo
    287295elif [ "$ssl" = "openssl" ]; then
    288296        echo
     
    341349echo 'SSL_CLIENT=ssl_'$ssl'.o' >> Makefile.settings
    342350
    343 for i in /lib /usr/lib /usr/local/lib; do
     351for i in $systemlibdirs; do
    344352        if [ -f $i/libresolv.a ]; then
    345353                echo '#define HAVE_RESOLV_A' >> config.h
     
    501509        echo 'Cygwin is not officially supported.'
    502510;;
     511Windows )
     512;;
    503513* )
    504514        echo 'We haven'\''t tested BitlBee on many platforms yet, yours is untested. YMMV.'
  • ipc.c

    rb6cd9e9 r2e0f24d  
    439439}
    440440
     441#ifndef _WIN32
    441442char *ipc_master_save_state()
    442443{
     
    504505}
    505506
    506 #ifndef _WIN32
    507507int ipc_master_listen_socket()
    508508{
     
    541541}
    542542#else
     543int ipc_master_listen_socket()
     544{
    543545        /* FIXME: Open named pipe \\.\BITLBEE */
     546        return 0;
     547}
    544548#endif
    545549
  • irc.c

    rb6cd9e9 r2e0f24d  
    2626#define BITLBEE_CORE
    2727#include "bitlbee.h"
     28#include "sock.h"
    2829#include "crypting.h"
    2930#include "ipc.h"
  • lib/misc.c

    rb6cd9e9 r2e0f24d  
    398398void random_bytes( unsigned char *buf, int count )
    399399{
     400#ifndef _WIN32
    400401        static int use_dev = -1;
    401402       
     
    447448       
    448449        if( !use_dev )
     450#endif
    449451        {
    450452                int i;
  • lib/ssl_bogus.c

    rb6cd9e9 r2e0f24d  
    6161        return GAIM_INPUT_READ;
    6262}
     63
     64int ssl_pending( void *conn )
     65{
     66        return 0;
     67}
  • protocols/yahoo/libyahoo2.c

    rb6cd9e9 r2e0f24d  
    6969#ifdef __MINGW32__
    7070# include <winsock2.h>
    71 # define write(a,b,c) send(a,b,c,0)
    72 # define read(a,b,c)  recv(a,b,c,0)
    7371#endif
    7472
  • protocols/yahoo/yahoo_httplib.c

    rb6cd9e9 r2e0f24d  
    5151#ifdef __MINGW32__
    5252# include <winsock2.h>
    53 # define write(a,b,c) send(a,b,c,0)
    54 # define read(a,b,c)  recv(a,b,c,0)
    5553# define snprintf _snprintf
    5654#endif
  • sock.h

    rb6cd9e9 r2e0f24d  
    1616#else
    1717# include <winsock2.h>
    18 # ifndef _MSC_VER
    19 #  include <ws2tcpip.h>
    20 # endif
     18# include <ws2tcpip.h>
    2119# if !defined(BITLBEE_CORE) && defined(_MSC_VER)
    2220#   pragma comment(lib,"bitlbee.lib")
    2321# endif
    2422# include <io.h>
    25 # define read(a,b,c) recv(a,b,c,0)
    26 # define write(a,b,c) send(a,b,c,0)
    27 # define umask _umask
    28 # define mode_t int
    2923# define sock_make_nonblocking(fd) { int non_block = 1; ioctlsocket(fd, FIONBIO, &non_block); }
    3024# define sock_make_blocking(fd) { int non_block = 0; ioctlsocket(fd, FIONBIO, &non_block); }
  • storage_text.c

    rb6cd9e9 r2e0f24d  
    2727#include "bitlbee.h"
    2828#include "crypting.h"
     29#ifdef _WIN32
     30# define umask _umask
     31# define mode_t int
     32#endif
     33
     34#ifndef F_OK
     35#define F_OK 0
     36#endif
    2937
    3038static void text_init (void)
  • unix.c

    rb6cd9e9 r2e0f24d  
    6060        if( global.conf->runmode == RUNMODE_INETD )
    6161        {
     62                log_link( LOGLVL_ERROR, LOGOUTPUT_IRC );
     63                log_link( LOGLVL_WARNING, LOGOUTPUT_IRC );
     64       
    6265                i = bitlbee_inetd_init();
    6366                log_message( LOGLVL_INFO, "Bitlbee %s starting in inetd mode.", BITLBEE_VERSION );
     
    6669        else if( global.conf->runmode == RUNMODE_DAEMON )
    6770        {
     71                log_link( LOGLVL_ERROR, LOGOUTPUT_SYSLOG );
     72                log_link( LOGLVL_WARNING, LOGOUTPUT_SYSLOG );
     73
    6874                i = bitlbee_daemon_init();
    6975                log_message( LOGLVL_INFO, "Bitlbee %s starting in daemon mode.", BITLBEE_VERSION );
     
    219225        return( (double) time->tv_sec + (double) time->tv_usec / 1000000 );
    220226}
     227
     228
Note: See TracChangeset for help on using the changeset viewer.