source: Makefile @ 8076ec0

Last change on this file since 8076ec0 was 2c2df7d, checked in by ulim <a.sporto+bee@…>, at 2007-11-28T21:07:30Z

Initial import of jabber file receive and DCC send support. This introduces
only a few changes to bitlbees code, mainly the addition of the "transfers"
command.

This is known to work with Kopete, Psi, and Pidgin (formerly known as gaim).
At least with Pidgin also over a proxy. DCC has only been tested with irssi.
IPV6 is untested but should work.

Currently, only receiving via SOCKS5BYTESREAMS is implemented. I'm not sure if
the alternative(in-band bytestreams IBB) is worth implementing since I didn't
see a client yet that can do it. Additionally, it is probably very slow and
needs support by the server as well.

  • Property mode set to 100644
File size: 3.6 KB
Line 
1###########################
2## Makefile for BitlBee  ##
3##                       ##
4## Copyright 2002 Lintux ##
5###########################
6
7### DEFINITIONS
8
9-include Makefile.settings
10
11# Program variables
12objects = 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 dcc.o
13headers = 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 dcc.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 protocols/ft.h
14subdirs = lib protocols
15
16# Expansion of variables
17subdirobjs = $(foreach dir,$(subdirs),$(dir)/$(dir).o)
18CFLAGS += -Wall
19
20all: $(OUTFILE)
21        $(MAKE) -C doc
22
23uninstall: uninstall-bin uninstall-doc
24        @echo -e '\nmake uninstall does not remove files in '$(DESTDIR)$(ETCDIR)', you can use make uninstall-etc to do that.\n'
25
26install: install-bin install-doc
27        @if ! [ -d $(DESTDIR)$(CONFIG) ]; then echo -e '\nThe configuration directory $(DESTDIR)$(CONFIG) does not exist yet, don'\''t forget to create it!'; fi
28        @if ! [ -e $(DESTDIR)$(ETCDIR)/bitlbee.conf ]; then echo -e '\nNo files are installed in '$(DESTDIR)$(ETCDIR)' by make install. Run make install-etc to do that.'; fi
29        @echo
30
31.PHONY:   install   install-bin   install-etc   install-doc \
32        uninstall uninstall-bin uninstall-etc uninstall-doc \
33        all clean distclean tar $(subdirs)
34
35Makefile.settings:
36        @echo
37        @echo Run ./configure to create Makefile.settings, then rerun make
38        @echo
39
40clean: $(subdirs)
41        rm -f *.o $(OUTFILE) core utils/bitlbeed encode decode
42        $(MAKE) -C tests clean
43
44distclean: clean $(subdirs)
45        rm -f Makefile.settings config.h bitlbee.pc
46        find . -name 'DEADJOE' -o -name '*.orig' -o -name '*.rej' -o -name '*~' -exec rm -f {} \;
47        $(MAKE) -C tests distclean
48
49check: all
50        $(MAKE) -C tests
51
52lcov:
53gcov: check
54        gcov *.c
55
56lcov: check
57        lcov --directory . --capture --output-file bitlbee.info
58        genhtml -o coverage bitlbee.info
59
60install-doc:
61        $(MAKE) -C doc install
62
63uninstall-doc:
64        $(MAKE) -C doc uninstall
65
66install-bin:
67        mkdir -p $(DESTDIR)$(BINDIR)
68        install -m 0755 $(OUTFILE) $(DESTDIR)$(BINDIR)/$(OUTFILE)
69
70uninstall-bin:
71        rm -f $(DESTDIR)$(BINDIR)/$(OUTFILE)
72
73install-dev:
74        mkdir -p $(DESTDIR)$(INCLUDEDIR)
75        install -m 0644 $(headers) $(DESTDIR)$(INCLUDEDIR)
76        mkdir -p $(DESTDIR)$(PCDIR)
77        install -m 0644 bitlbee.pc $(DESTDIR)$(PCDIR)
78
79uninstall-dev:
80        rm -f $(foreach hdr,$(headers),$(DESTDIR)$(INCLUDEDIR)/$(hdr))
81        -rmdir $(DESTDIR)$(INCLUDEDIR)
82        rm -f $(DESTDIR)$(PCDIR)/bitlbee.pc
83
84install-etc:
85        mkdir -p $(DESTDIR)$(ETCDIR)
86        install -m 0644 motd.txt $(DESTDIR)$(ETCDIR)/motd.txt
87        install -m 0644 bitlbee.conf $(DESTDIR)$(ETCDIR)/bitlbee.conf
88
89uninstall-etc:
90        rm -f $(DESTDIR)$(ETCDIR)/motd.txt
91        rm -f $(DESTDIR)$(ETCDIR)/bitlbee.conf
92        -rmdir $(DESTDIR)$(ETCDIR)
93
94tar:
95        fakeroot debian/rules clean || make distclean
96        x=$$(basename $$(pwd)); \
97        cd ..; \
98        tar czf $$x.tar.gz --exclude=debian --exclude=.bzr $$x
99
100$(subdirs):
101        @$(MAKE) -C $@ $(MAKECMDGOALS)
102
103$(objects): %.o: %.c
104        @echo '*' Compiling $<
105        @$(CC) -c $(CFLAGS) $< -o $@
106
107$(objects): Makefile Makefile.settings config.h
108
109$(OUTFILE): $(objects) $(subdirs)
110        @echo '*' Linking $(OUTFILE)
111        @$(CC) $(objects) $(subdirobjs) -o $(OUTFILE) $(LFLAGS) $(EFLAGS)
112ifndef DEBUG
113        @echo '*' Stripping $(OUTFILE)
114        @-$(STRIP) $(OUTFILE)
115endif
116
117encode: crypting.c
118        $(CC) crypting.c protocols/md5.c $(CFLAGS) -o encode -DCRYPTING_MAIN $(CFLAGS) $(EFLAGS) $(LFLAGS)
119
120decode: encode
121        cp encode decode
122
123ctags: 
124        ctags `find . -name "*.c"` `find . -name "*.h"`
Note: See TracBrowser for help on using the repository browser.