Scan media entities as well, not just url entities. This should expand more
[bitlbee.git] / configure
blob697a33bd59188e6df168a0ad9be4a98e3408dcaa
1 #!/bin/sh
3 ##############################
4 ## Configurer for BitlBee ##
5 ## ##
6 ## Copyright 2004 Lintux ##
7 ## Copyright 2002 Lucumo ##
8 ##############################
10 prefix='/usr/local/'
11 bindir='$prefix/bin/'
12 sbindir='$prefix/sbin/'
13 etcdir='$prefix/etc/bitlbee/'
14 mandir='$prefix/share/man/'
15 datadir='$prefix/share/bitlbee/'
16 config='/var/lib/bitlbee/'
17 plugindir='$prefix/lib/bitlbee/'
18 includedir='$prefix/include/bitlbee/'
19 systemdsystemunitdir=''
20 libevent='/usr/'
21 pidfile='/var/run/bitlbee.pid'
22 ipcsocket=''
23 pcdir='$prefix/lib/pkgconfig'
24 systemlibdirs="/lib64 /usr/lib64 /usr/local/lib64 /lib /usr/lib /usr/local/lib"
26 msn=1
27 jabber=1
28 oscar=1
29 yahoo=1
30 twitter=1
31 purple=0
33 debug=0
34 strip=1
35 gcov=0
36 plugins=1
37 otr=0
38 skype=0
40 events=glib
41 ldap=0
42 ssl=auto
44 arch=`uname -s`
45 cpu=`uname -m`
47 GLIB_MIN_VERSION=2.14
49 echo BitlBee configure
51 while [ -n "$1" ]; do
52 e="`expr "X$1" : 'X--\(.*=.*\)'`"
53 if [ -z "$e" ]; then
54 cat<<EOF
56 Usage: $0 [OPTIONS]
58 Option Description Default
60 --prefix=... Directories to put files in $prefix
61 --bindir=... $bindir
62 --sbindir=... $sbindir
63 --etcdir=... $etcdir
64 --mandir=... $mandir
65 --datadir=... $datadir
66 --plugindir=... $plugindir
67 --systemdsystemunitdir=... $systemdsystemunitdir
68 --pidfile=... $pidfile
69 --config=... $config
71 --msn=0/1 Disable/enable MSN part $msn
72 --jabber=0/1 Disable/enable Jabber part $jabber
73 --oscar=0/1 Disable/enable Oscar part (ICQ, AIM) $oscar
74 --yahoo=0/1 Disable/enable Yahoo part $yahoo
75 --twitter=0/1 Disable/enable Twitter part $twitter
77 --purple=0/1 Disable/enable libpurple support $purple
78 (automatically disables other protocol modules)
80 --debug=0/1 Disable/enable debugging $debug
81 --strip=0/1 Disable/enable binary stripping $strip
82 --gcov=0/1 Disable/enable test coverage reporting $gcov
83 --plugins=0/1 Disable/enable plugins support $plugins
84 --otr=0/1/auto/plugin
85 Disable/enable OTR encryption support $otr
86 --skype=0/1/plugin
87 Disable/enable Skype support $skype
89 --events=... Event handler (glib, libevent) $events
90 --ssl=... SSL library to use (gnutls, nss, openssl, bogus, auto)
91 $ssl
93 --target=... Cross compilation target same as host
94 EOF
95 exit;
97 eval "$e"
98 shift;
99 done
101 # Expand $prefix and get rid of double slashes
102 bindir=`eval echo "$bindir/" | sed 's/\/\{1,\}/\//g'`
103 sbindir=`eval echo "$sbindir/" | sed 's/\/\{1,\}/\//g'`
104 etcdir=`eval echo "$etcdir/" | sed 's/\/\{1,\}/\//g'`
105 mandir=`eval echo "$mandir/" | sed 's/\/\{1,\}/\//g'`
106 datadir=`eval echo "$datadir/" | sed 's/\/\{1,\}/\//g'`
107 config=`eval echo "$config/" | sed 's/\/\{1,\}/\//g'`
108 plugindir=`eval echo "$plugindir/" | sed 's/\/\{1,\}/\//g'`
109 includedir=`eval echo "$includedir"/ | sed 's/\/\{1,\}/\//g'`
110 libevent=`eval echo "$libevent"/ | sed 's/\/\{1,\}/\//g'`
112 pidfile=`eval echo "$pidfile" | sed 's/\/\{1,\}/\//g'`
113 ipcsocket=`eval echo "$ipcsocket" | sed 's/\/\{1,\}/\//g'`
114 pcdir=`eval echo "$pcdir" | sed 's/\/\{1,\}/\//g'`
116 protocols_mods=""
118 cat<<EOF>Makefile.settings
119 ## BitlBee settings, generated by configure
120 PREFIX=$prefix
121 BINDIR=$bindir
122 SBINDIR=$sbindir
123 ETCDIR=$etcdir
124 MANDIR=$mandir
125 DATADIR=$datadir
126 PLUGINDIR=$plugindir
127 CONFIG=$config
128 INCLUDEDIR=$includedir
129 PCDIR=$pcdir
131 TARGET=$target
132 ARCH=$arch
133 CPU=$cpu
135 INSTALL=install -p
137 DESTDIR=
138 LFLAGS=
139 EFLAGS=
142 srcdir=$(cd $(dirname $0);pwd)
143 currdir=$(pwd)
144 if [ "$srcdir" != "$currdir" ]; then
145 echo
146 echo "configure script run from a different directory. Will create some symlinks..."
147 if [ ! -e Makefile -o -L Makefile ]; then
148 COPYDIRS="doc lib protocols tests utils"
149 mkdir -p $(cd "$srcdir"; find $COPYDIRS -type d)
150 find . -name Makefile -type l -print0 | xargs -0 rm 2> /dev/null
151 dst="$PWD"
152 cd "$srcdir"
153 for i in $(find . -name Makefile -type f); do
154 ln -s "$PWD${i#.}" "$dst/$i";
155 done
156 cd "$dst"
157 rm -rf .bzr
160 echo "_SRCDIR_=$srcdir/" >> Makefile.settings
161 CFLAGS="$CFLAGS -I${dst}"
162 else
163 srcdir=$PWD
166 cat<<EOF>config.h
167 /* BitlBee settings, generated by configure
169 Do *NOT* use any of these defines in your code without thinking twice, most
170 of them can/will be overridden at run-time */
172 #define CONFIG "$config"
173 #define ETCDIR "$etcdir"
174 #define VARDIR "$datadir"
175 #define PLUGINDIR "$plugindir"
176 #define PIDFILE "$pidfile"
177 #define IPCSOCKET "$ipcsocket"
178 #define ARCH "$arch"
179 #define CPU "$cpu"
184 if [ -n "$target" ]; then
185 PKG_CONFIG_LIBDIR=/usr/$target/lib/pkgconfig
186 export PKG_CONFIG_LIBDIR
187 PATH=/usr/$target/bin:$PATH
188 CC=$target-cc
189 LD=$target-ld
190 systemlibdirs="/usr/$target/lib"
194 if [ "$debug" = "1" ]; then
195 [ -z "$CFLAGS" ] && CFLAGS=-g
196 echo 'DEBUG=1' >> Makefile.settings
197 CFLAGS="$CFLAGS -DDEBUG"
198 else
199 [ -z "$CFLAGS" ] && CFLAGS="-O2 -fno-strict-aliasing"
202 echo CFLAGS=$CFLAGS $CPPFLAGS >> Makefile.settings
203 echo CFLAGS+=-I${srcdir} -I${srcdir}/lib -I${srcdir}/protocols -I. >> Makefile.settings
205 echo CFLAGS+=-DHAVE_CONFIG_H >> Makefile.settings
207 if [ -n "$CC" ]; then
208 CC=$CC
209 elif type gcc > /dev/null 2> /dev/null; then
210 CC=gcc
211 elif type cc > /dev/null 2> /dev/null; then
212 CC=cc
213 else
214 echo 'Cannot find a C compiler, aborting.'
215 exit 1;
218 echo "CC=$CC" >> Makefile.settings;
219 if echo $CC | grep -qw gcc; then
220 # Apparently -Wall is gcc-specific?
221 echo CFLAGS+=-Wall >> Makefile.settings
224 if [ -z "$LD" ]; then
225 if type ld > /dev/null 2> /dev/null; then
226 LD=ld
227 else
228 echo 'Cannot find ld, aborting.'
229 exit 1;
233 echo "LD=$LD" >> Makefile.settings
235 if [ -z "$PKG_CONFIG" ]; then
236 PKG_CONFIG=pkg-config
239 if $PKG_CONFIG --version > /dev/null 2>/dev/null && $PKG_CONFIG glib-2.0; then
240 if $PKG_CONFIG glib-2.0 --atleast-version=$GLIB_MIN_VERSION; then
241 cat<<EOF>>Makefile.settings
242 EFLAGS+=`$PKG_CONFIG --libs glib-2.0 gmodule-2.0`
243 CFLAGS+=`$PKG_CONFIG --cflags glib-2.0 gmodule-2.0`
245 else
246 echo
247 echo 'Found glib2 '`$PKG_CONFIG glib-2.0 --modversion`', but version '$GLIB_MIN_VERSION' or newer is required.'
248 exit 1
250 else
251 echo
252 echo 'Cannot find glib2 development libraries, aborting. (Install libglib2-dev?)'
253 exit 1
256 if [ "$events" = "libevent" ]; then
257 if ! [ -f "${libevent}include/event.h" ]; then
258 echo
259 echo 'Warning: Could not find event.h, you might have to install it and/or specify'
260 echo 'its location using the --libevent= argument. (Example: If event.h is in'
261 echo '/usr/local/include and binaries are in /usr/local/lib: --libevent=/usr/local)'
264 echo '#define EVENTS_LIBEVENT' >> config.h
265 cat <<EOF>>Makefile.settings
266 EFLAGS+=-levent -L${libevent}lib
267 CFLAGS+=-I${libevent}include
269 elif [ "$events" = "glib" ]; then
270 ## We already use glib anyway, so this is all we need (and in fact not even this, but just to be sure...):
271 echo '#define EVENTS_GLIB' >> config.h
272 else
273 echo
274 echo 'ERROR: Unknown event handler specified.'
275 exit 1
277 echo 'EVENT_HANDLER=events_'$events'.o' >> Makefile.settings
279 detect_gnutls()
281 if $PKG_CONFIG --exists gnutls; then
282 cat <<EOF>>Makefile.settings
283 EFLAGS+=`$PKG_CONFIG --libs gnutls` `libgcrypt-config --libs`
284 CFLAGS+=`$PKG_CONFIG --cflags gnutls` `libgcrypt-config --cflags`
286 ssl=gnutls
287 if ! pkg-config gnutls --atleast-version=2.8; then
288 echo
289 echo 'Warning: With GnuTLS versions <2.8, certificate expire dates are not verified.'
291 ret=1
292 elif libgnutls-config --version > /dev/null 2> /dev/null; then
293 cat <<EOF>>Makefile.settings
294 EFLAGS+=`libgnutls-config --libs` `libgcrypt-config --libs`
295 CFLAGS+=`libgnutls-config --cflags` `libgcrypt-config --cflags`
298 ssl=gnutls
299 ret=1;
300 else
301 ret=0;
305 detect_nss()
307 if $PKG_CONFIG --version > /dev/null 2>/dev/null && $PKG_CONFIG nss; then
308 cat<<EOF>>Makefile.settings
309 EFLAGS+=`$PKG_CONFIG --libs nss`
310 CFLAGS+=`$PKG_CONFIG --cflags nss`
313 ssl=nss
314 ret=1;
315 else
316 ret=0;
320 detect_ldap()
322 TMPFILE=$(mktemp /tmp/bitlbee-configure.XXXXXX)
323 if $CC -o $TMPFILE -shared -lldap 2>/dev/null >/dev/null; then
324 cat<<EOF>>Makefile.settings
325 EFLAGS+=-lldap
326 CFLAGS+=
328 ldap=1
329 rm -f $TMPFILE
330 ret=1
331 else
332 ldap=0
333 ret=0
337 RESOLV_TESTCODE='
338 #include <sys/types.h>
339 #include <netinet/in.h>
340 #include <arpa/nameser.h>
341 #include <resolv.h>
343 int main()
345 ns_initparse( NULL, 0, NULL );
346 ns_parserr( NULL, ns_s_an, 0, NULL );
350 detect_resolv_dynamic()
352 case "$arch" in
353 FreeBSD )
354 # In FreeBSD res_* routines are present in libc.so
355 LIBRESOLV=;;
357 LIBRESOLV=-lresolv;;
358 esac
359 TMPFILE=$(mktemp /tmp/bitlbee-configure.XXXXXX)
360 ret=1
361 echo "$RESOLV_TESTCODE" | $CC -o $TMPFILE -x c - $LIBRESOLV >/dev/null 2>/dev/null
362 if [ "$?" = "0" ]; then
363 echo "EFLAGS+=$LIBRESOLV" >> Makefile.settings
364 ret=0
367 rm -f $TMPFILE
368 return $ret
371 detect_resolv_static()
373 TMPFILE=$(mktemp /tmp/bitlbee-configure.XXXXXX)
374 ret=1
375 for i in $systemlibdirs; do
376 if [ -f $i/libresolv.a ]; then
377 echo "$RESOLV_TESTCODE" | $CC -o $TMPFILE -x c - -Wl,$i/libresolv.a >/dev/null 2>/dev/null
378 if [ "$?" = "0" ]; then
379 echo 'EFLAGS+='$i'/libresolv.a' >> Makefile.settings
380 ret=0
383 done
385 rm -f $TMPFILE
386 return $ret
389 if [ "$ssl" = "auto" ]; then
390 detect_gnutls
391 if [ "$ret" = "0" ]; then
392 # Disable NSS for now as it's known to not work very well ATM.
393 #detect_nss
396 elif [ "$ssl" = "gnutls" ]; then
397 detect_gnutls
398 elif [ "$ssl" = "nss" ]; then
399 detect_nss
400 elif [ "$ssl" = "sspi" ]; then
401 echo
402 elif [ "$ssl" = "openssl" ]; then
403 echo
404 echo 'No detection code exists for OpenSSL. Make sure that you have a complete'
405 echo 'install of OpenSSL (including devel/header files) before reporting'
406 echo 'compilation problems.'
407 echo
408 echo 'Also, keep in mind that the OpenSSL is, according to some people, not'
409 echo 'completely GPL-compatible. Using GnuTLS or NSS is recommended and better'
410 echo 'supported by us. However, on many BSD machines, OpenSSL can be considered'
411 echo 'part of the operating system, which makes it GPL-compatible.'
412 echo
413 echo 'For more info, see: http://www.openssl.org/support/faq.html#LEGAL2'
414 echo ' http://www.gnome.org/~markmc/openssl-and-the-gpl.html'
415 echo
416 echo 'Please note that distributing a BitlBee binary which links to OpenSSL is'
417 echo 'probably illegal. If you want to create and distribute a binary BitlBee'
418 echo 'package, you really should use GnuTLS or NSS instead.'
419 echo
420 echo 'Also, the OpenSSL license requires us to say this:'
421 echo ' * "This product includes software developed by the OpenSSL Project'
422 echo ' * for use in the OpenSSL Toolkit. (http://www.openssl.org/)"'
424 echo 'EFLAGS+=-lssl -lcrypto' >> Makefile.settings
426 ret=1
427 elif [ "$ssl" = "bogus" ]; then
428 echo
429 echo 'Using bogus SSL code. This means some features will not work properly.'
431 ## Yes, you, at the console! How can you authenticate if you don't have any SSL!?
432 if [ "$msn" = "1" -o "$yahoo" = "1" ]; then
433 echo
434 echo 'WARNING: The MSN and Yahoo! modules will not work without SSL. Disabling.'
435 msn=0
436 yahoo=0
439 ret=1
440 else
441 echo
442 echo 'ERROR: Unknown SSL library specified.'
443 exit 1
446 if [ "$ret" = "0" ]; then
447 echo
448 echo 'ERROR: Could not find a suitable SSL library (GnuTLS, libnss or OpenSSL).'
449 echo ' Please note that this script doesn'\''t have detection code for OpenSSL,'
450 echo ' so if you want to use that, you have to select it by hand. If you don'\''t'
451 echo ' need SSL support, you can select the "bogus" SSL library. (--ssl=bogus)'
453 exit 1
456 if [ "$msn" = "1" -a "$ssl" != "openssl" -a "$ssl" != "gnutls" ]; then
457 # Needed for MSN only. OpenSSL exports nice cipher functions already,
458 # in case of GnuTLS we should be able to use gcrypt. Otherwise, use
459 # built-in stuff. (Since right now those are the only two supported
460 # SSL modules anyway, this is mostly unnecessary.)
461 echo 'DES=des.o' >> Makefile.settings
464 echo 'SSL_CLIENT=ssl_'$ssl'.o' >> Makefile.settings
466 if detect_resolv_dynamic || detect_resolv_static; then
467 echo '#define HAVE_RESOLV_A' >> config.h
470 STORAGES="xml"
472 if [ "$ldap" = "auto" ]; then
473 detect_ldap
476 if [ "$ldap" = 0 ]; then
477 echo "#undef WITH_LDAP" >> config.h
478 elif [ "$ldap" = 1 ]; then
479 echo
480 echo 'LDAP support is a work in progress and does NOT work AT ALL right now.'
481 echo
482 exit 1
484 echo "#define WITH_LDAP 1" >> config.h
485 STORAGES="$STORAGES ldap"
488 for i in $STORAGES; do
489 STORAGE_OBJS="$STORAGE_OBJS storage_$i.o"
490 done
491 echo "STORAGE_OBJS="$STORAGE_OBJS >> Makefile.settings
493 if [ "$strip" = 0 ]; then
494 echo "STRIP=\# skip strip" >> Makefile.settings;
495 else
496 if [ "$debug" = 1 ]; then
497 echo
498 echo 'Stripping binaries does not make sense when debugging. Stripping disabled.'
499 echo 'STRIP=\# skip strip' >> Makefile.settings
500 strip=0;
501 elif [ -n "$STRIP" ]; then
502 echo "STRIP=$STRIP" >> Makefile.settings;
503 elif type strip > /dev/null 2> /dev/null; then
504 echo "STRIP=strip" >> Makefile.settings;
505 else
506 echo
507 echo 'No strip utility found, cannot remove unnecessary parts from executable.'
508 echo 'STRIP=\# skip strip' >> Makefile.settings
509 strip=0;
513 if [ -z "$systemdsystemunitdir" ]; then
514 if $PKG_CONFIG --exists systemd; then
515 systemdsystemunitdir=`$PKG_CONFIG --variable=systemdsystemunitdir systemd`
518 if [ -n "$systemdsystemunitdir" ]; then
519 if [ "$systemdsystemunitdir" != "no" ]; then
520 echo "SYSTEMDSYSTEMUNITDIR=$systemdsystemunitdir" >> Makefile.settings
524 if [ "$gcov" = "1" ]; then
525 echo "CFLAGS+=--coverage" >> Makefile.settings
526 echo "EFLAGS+=--coverage" >> Makefile.settings
529 if [ "$plugins" = 0 ]; then
530 echo '#undef WITH_PLUGINS' >> config.h
531 else
532 echo '#define WITH_PLUGINS' >> config.h
535 otrprefix=""
536 for i in / /usr /usr/local; do
537 if [ -f ${i}/lib/libotr.a ]; then
538 otrprefix=${i}
539 break
541 done
542 if [ "$otr" = "auto" ]; then
543 if [ -n "$otrprefix" ]; then
544 otr=1
545 else
546 otr=0
549 if [ "$otr" = 1 ]; then
550 # BI == built-in
551 echo '#define OTR_BI' >> config.h
552 echo "EFLAGS+=-L${otrprefix}/lib -lotr" >> Makefile.settings
553 echo "CFLAGS+=-I${otrprefix}/include" >> Makefile.settings
554 echo 'OTR_BI=otr.o' >> Makefile.settings
555 elif [ "$otr" = "plugin" ]; then
556 echo '#define OTR_PI' >> config.h
557 echo "OTRFLAGS=-L${otrprefix}/lib -lotr" >> Makefile.settings
558 echo "CFLAGS+=-I${otrprefix}/include" >> Makefile.settings
559 echo 'OTR_PI=otr.so' >> Makefile.settings
562 if [ "$skype" = "1" -o "$skype" = "plugin" ]; then
563 echo 'SKYPE_PI=skype.so' >> Makefile.settings
564 protocols_mods="$protocol_mods skype(plugin)"
567 if [ ! -e doc/user-guide/help.txt ] && ! type xmlto > /dev/null 2> /dev/null; then
568 echo
569 echo 'WARNING: Building from an unreleased source tree without prebuilt helpfile.'
570 echo 'Install xmlto if you want online help to work.'
573 echo
574 if [ -z "$BITLBEE_VERSION" -a -d .bzr ] && type bzr > /dev/null 2> /dev/null; then
575 nick=`bzr nick`
576 if [ -n "$nick" -a "$nick" != "bitlbee" ]; then
577 nick="-$nick"
578 else
579 nick=""
581 rev=`bzr revno`
582 echo 'Using bzr revision #'$rev' as version number'
583 BITLBEE_VERSION=\"bzr$nick-$rev\"
586 if [ -n "$BITLBEE_VERSION" ]; then
587 echo 'Spoofing version number: '$BITLBEE_VERSION
588 echo '#undef BITLBEE_VERSION' >> config.h
589 echo '#define BITLBEE_VERSION '$BITLBEE_VERSION >> config.h
590 echo
593 if ! make helloworld > /dev/null 2>&1; then
594 echo "WARNING: Your version of make (BSD make?) does not support BitlBee's makefiles."
595 echo "BitlBee needs GNU make to build properly. On most systems GNU make is available"
596 echo "under the name 'gmake'."
597 echo
598 if gmake helloworld > /dev/null 2>&1; then
599 echo "gmake seems to be available on your machine, great."
600 echo
601 else
602 echo "gmake is not installed (or not working). Please try to install it."
603 echo
607 cat <<EOF>bitlbee.pc
608 prefix=$prefix
609 includedir=$includedir
611 Name: bitlbee
612 Description: IRC to IM gateway
613 Requires: glib-2.0
614 Version: $BITLBEE_VERSION
615 Libs:
616 Cflags: -I\${includedir}
620 protocols=''
621 protoobjs=''
623 if [ "$purple" = 0 ]; then
624 echo '#undef WITH_PURPLE' >> config.h
625 else
626 if ! $PKG_CONFIG purple; then
627 echo
628 echo 'Cannot find libpurple development libraries, aborting. (Install libpurple-dev?)'
629 exit 1
631 echo '#define WITH_PURPLE' >> config.h
632 cat<<EOF>>Makefile.settings
633 EFLAGS += $($PKG_CONFIG purple --libs)
634 PURPLE_CFLAGS += $($PKG_CONFIG purple --cflags)
636 protocols=$protocols'purple '
637 protoobjs=$protoobjs'purple_mod.o '
639 # Having both libpurple and native IM modules in one binary may
640 # do strange things. Let's not do that.
641 msn=0
642 jabber=0
643 oscar=0
644 yahoo=0
646 echo '#undef PACKAGE' >> config.h
647 echo '#define PACKAGE "BitlBee-LIBPURPLE"' >> config.h
649 if [ "$events" = "libevent" ]; then
650 echo 'Warning: Some libpurple modules (including msn-pecan) do their event handling'
651 echo 'outside libpurple, talking to GLib directly. At least for now the combination'
652 echo 'libpurple + libevent is *not* recommended!'
653 echo
657 case "$CC" in
658 *gcc* )
659 echo CFLAGS+=-MMD -MF .depend/\$@.d >> Makefile.settings
660 for i in . lib protocols protocols/*/; do
661 mkdir -p $i/.depend
662 done
663 esac
665 if [ "$msn" = 0 ]; then
666 echo '#undef WITH_MSN' >> config.h
667 else
668 echo '#define WITH_MSN' >> config.h
669 protocols=$protocols'msn '
670 protoobjs=$protoobjs'msn_mod.o '
673 if [ "$jabber" = 0 ]; then
674 echo '#undef WITH_JABBER' >> config.h
675 else
676 echo '#define WITH_JABBER' >> config.h
677 protocols=$protocols'jabber '
678 protoobjs=$protoobjs'jabber_mod.o '
681 if [ "$oscar" = 0 ]; then
682 echo '#undef WITH_OSCAR' >> config.h
683 else
684 echo '#define WITH_OSCAR' >> config.h
685 protocols=$protocols'oscar '
686 protoobjs=$protoobjs'oscar_mod.o '
689 if [ "$yahoo" = 0 ]; then
690 echo '#undef WITH_YAHOO' >> config.h
691 else
692 echo '#define WITH_YAHOO' >> config.h
693 protocols=$protocols'yahoo '
694 protoobjs=$protoobjs'yahoo_mod.o '
697 if [ "$twitter" = 0 ]; then
698 echo '#undef WITH_TWITTER' >> config.h
699 else
700 echo '#define WITH_TWITTER' >> config.h
701 protocols=$protocols'twitter '
702 protoobjs=$protoobjs'twitter_mod.o '
705 if [ "$protocols" = "PROTOCOLS = " ]; then
706 echo "Warning: You haven't selected any communication protocol to compile!"
707 echo " BitlBee will run, but you will be unable to connect to IM servers!"
710 echo "PROTOCOLS = $protocols" >> Makefile.settings
711 echo "PROTOOBJS = $protoobjs" >> Makefile.settings
713 echo Architecture: $arch
714 case "$arch" in
715 Linux )
717 GNU/* )
719 *BSD )
721 Darwin )
722 echo 'STRIP=\# skip strip' >> Makefile.settings
724 IRIX )
726 SunOS )
727 echo 'EFLAGS+=-lresolv -lnsl -lsocket' >> Makefile.settings
728 echo 'STRIP=\# skip strip' >> Makefile.settings
729 echo '#define NO_FD_PASSING' >> config.h
731 AIX )
732 echo 'EFLAGS+=-Wl,-brtl' >> Makefile.settings
734 CYGWIN* )
735 echo 'Cygwin is not officially supported.'
737 Windows )
740 echo 'We haven'\''t tested BitlBee on many platforms yet, yours is untested. YMMV.'
741 echo 'Please report any problems at http://bugs.bitlbee.org/.'
743 esac
745 if [ -n "$target" ]; then
746 echo "Cross-compiling for: $target"
749 echo
750 echo 'Configuration done:'
752 if [ "$debug" = "1" ]; then
753 echo ' Debugging enabled.'
754 else
755 echo ' Debugging disabled.'
758 if [ "$strip" = "1" ]; then
759 echo ' Binary stripping enabled.'
760 else
761 echo ' Binary stripping disabled.'
764 if [ "$otr" = "1" ]; then
765 echo ' Off-the-Record (OTR) Messaging enabled.'
766 elif [ "$otr" = "plugin" ]; then
767 echo ' Off-the-Record (OTR) Messaging enabled (as a plugin).'
768 else
769 echo ' Off-the-Record (OTR) Messaging disabled.'
772 if [ -n "$systemdsystemunitdir" ]; then
773 echo ' systemd enabled.'
774 else
775 echo ' systemd disabled.'
778 echo ' Using event handler: '$events
779 echo ' Using SSL library: '$ssl
780 #echo ' Building with these storage backends: '$STORAGES
782 if [ -n "$protocols" ]; then
783 echo ' Building with these protocols:' $protocols$protocols_mods
784 case "$protocols" in
785 *purple*)
786 echo " Note that BitlBee-libpurple is supported on a best-effort basis. It's"
787 echo " not *fully* compatible with normal BitlBee. Don't use it unless you"
788 echo " absolutely need it (i.e. support for a certain protocol or feature)."
789 esac
790 else
791 echo ' Building without IM-protocol support. We wish you a lot of fun...'