The little Christmas candy bar: allow utf-8 chars in Tochars \o/
[apps/madmutt.git] / Makefile.am
1 ## Process this file with automake to produce Makefile.in
2 ## Use aclocal -I m4; automake --foreign
3
4 AUTOMAKE_OPTIONS = foreign
5 EXTRA_PROGRAMS = madmutt_dotlock pgpringng pgpewrapng makedoc
6
7 if BUILD_NNTP
8 NNTP_SUBDIR = nntp
9 endif
10
11 SUBDIRS = intl m4 po $(XXXXXXXXXXXX_doc) apidoc contrib tools \
12           lib-mime lib-lib lib-mx lib-crypt lib-hash lib-sys lib-ui \
13           pop imap $(NNTP_SUBDIR)
14
15 BUILT_SOURCES = keymap_defs.h version.h charset.gperf rctokens.gperf rcparser.c rcparser.h
16 DISTCLEANFILES = $(BUILT_SOURCES)
17
18 rcparser.c rcparser.h: rcparser.y
19         $(MAKE) -C tools lemon
20         $(top_builddir)/tools/lemon -s $<
21         touch rcparser.c rcparser.h
22
23 bin_PROGRAMS = madmutt madmutt_dotlock pgpringng pgpewrapng smime_keysng
24 madmutt_SOURCES = $(BUILT_SOURCES) \
25         alias.c attach.c base64.c browser.c buffy.c charset.c commands.c \
26         compose.c copy.c editmsg.c init.c keymap.c lib.c \
27         flags.c from.c handler.c headers.c help.c hook.c \
28         main.c muttlib.c mutt_idna.c pager.c pattern.c postpone.c recvattach.c recvcmd.c \
29         score.c send.c sendlib.c sort.c state.c thread.c account.c remailer.c
30
31 madmutt_LDADD = @MUTT_LIB_OBJECTS@ @LIBOBJS@ \
32                -Llib-mime -lmime -Llib-crypt -lcrypt -Llib-mx -lmx \
33                -Limap -limap -Lpop -lpop $(LIBNNTP) \
34                -Llib-hash -lhash -Llib-sys -lsys -Llib-ui -lui -Llib-lib -llib \
35                $(MUTTLIBS) $(INTLLIBS) $(LIBICONV)
36
37 madmutt_DEPENDENCIES = @MUTT_LIB_OBJECTS@ @LIBOBJS@ \
38                        $(top_builddir)/lib-lib/liblib.a \
39                        $(top_builddir)/lib-mime/libmime.a \
40                        $(top_builddir)/lib-crypt/libcrypt.a \
41                        $(top_builddir)/lib-hash/libhash.a \
42                        $(top_builddir)/lib-ui/libui.a \
43                        $(top_builddir)/lib-mx/libmx.a \
44                        \
45                        $(top_builddir)/pop/libpop.a   \
46                        $(top_builddir)/imap/libimap.a \
47                        $(LIBNNTPDEPS) $(INTLDEPS)
48
49 makedoc_SOURCES = makedoc.c
50 makedoc_LDADD = -Llib-lib -llib
51 makedoc_DEPENDENCIES = $(top_builddir)/lib-lib/liblib.a
52
53 CPP=@CPP@
54
55 DEFS=-DPKGDATADIR=\"$(pkgdatadir)\" -DSYSCONFDIR=\"$(sysconfdir)\" \
56         -DBINDIR=\"$(bindir)\" -DMUTTLOCALEDIR=\"$(datadir)/locale\" \
57         -DHAVE_CONFIG_H=1 -DPKGDOCDIR=\"$(docdir)\"
58
59 INCLUDES=-I$(top_srcdir) $(GPGME_CFLAGS) -Iintl
60
61 CPPFLAGS=@CPPFLAGS@ -I$(includedir)
62
63 EXTRA_madmutt_SOURCES = \
64         account.c mutt_sasl.c dotlock.c remailer.c \
65         alias.h browser.h remailer.h state.h \
66         mutt_idna.h mutt_libesmtp.c state.h
67
68 EXTRA_DIST = config.rpath  COPYRIGHT GPL OPS TODO \
69         configure account.h alias.h attach.h recvattach.h handler.h thread.h \
70         buffy.h charset.h copy.h dotlock.h functions.def gen_defs \
71         recvattach.h handler.h thread.h globals.h init.h keymap.h \
72         mime.h mutt.h mutt_sasl.h pager.h protos.h \
73         sort.h mime.types autogen.sh remailer.c remailer.h browser.h state.h \
74         lib.h extlib.c pgpewrap.c smime_keys.pl Madmuttrc.head Madmuttrc \
75         makedoc.c stamp-doc-rc README.SSL depcomp mutt_idna.h mutt_libesmtp.h
76
77 madmutt_dotlock_SOURCES = dotlock.c
78 madmutt_dotlock_LDADD = -Llib-lib -llib @LIBOBJS@
79 madmutt_dotlock_DEPENDENCIES = @LIBOBJS@ $(top_builddir)/lib-lib/liblib.a
80
81 pgpringng_SOURCES = pgppubring.c lib.c extlib.c
82 pgpringng_LDADD = @LIBOBJS@ $(INTLLIBS) \
83                   -Llib-lib -llib -Llib-hash -lhash -Llib-crypt -lcrypt
84 pgpringng_DEPENDENCIES = @LIBOBJS@ $(INTLDEPS) \
85                          $(top_builddir)/lib-lib/liblib.a \
86                          $(top_builddir)/lib-hash/libhash.a
87
88 pgpewrapng_SOURCES = pgpewrap.c
89 pgpewrapng_LDADD = 
90 pgpewrapng_DEPENDENCIES = 
91
92 CLEANFILES = stamp-doc-rc makedoc keymap_defs.h version.h Madmuttrc
93
94 ACLOCAL_AMFLAGS = -I m4
95
96 LDADD = @LIBOBJS@ @LIBINTL@
97
98 charset.gperf: charset.def
99         sh $< > $@
100
101 rctokens.gperf: rctokens.sh
102         sh $< > $@
103
104 smime_keysng: $(srcdir)/smime_keys.pl
105         cp $(srcdir)/smime_keys.pl smime_keysng
106         chmod +x smime_keysng
107
108 keymap_defs.h: OPS
109         $(srcdir)/gen_defs $^ > keymap_defs.h
110
111 version.h:
112         echo "#define MUTT_REVISION \"git\"" > version.h
113
114 install-exec-hook:
115         if test -f $(DESTDIR)$(bindir)/mutt.dotlock && test -f $(DESTDIR)$(bindir)/madmutt_dotlock ; then       \
116                 rm -f $(DESTDIR)$(bindir)/mutt.dotlock ;                \
117                 ln -sf $(DESTDIR)$(bindir)/madmutt_dotlock $(DESTDIR)$(bindir)/mutt.dotlock ; \
118         fi
119         if test -f $(DESTDIR)$(bindir)/madmutt_dotlock && test x@DOTLOCK_GROUP@ != x ; then \
120                 chgrp @DOTLOCK_GROUP@ $(DESTDIR)$(bindir)/madmutt_dotlock && \
121                 chmod @DOTLOCK_PERMISSION@ $(DESTDIR)$(bindir)/madmutt_dotlock || \
122                 { echo "Can't fix madmutt_dotlock's permissions!" >&2 ; } \
123         fi
124
125 install-data-local: Madmuttrc
126         $(srcdir)/mkinstalldirs $(DESTDIR)$(sysconfdir)
127         -if [ -f $(DESTDIR)$(pkgdatadir)/Madmuttrc ] ; then \
128                 mv $(DESTDIR)$(pkgdatadir)/Madmuttrc* $(DESTDIR)$(sysconfdir) ; \
129         elif [ -f $(DESTDIR)$(pkgdatadir)/../Madmuttrc ] ; then \
130                 mv $(DESTDIR)$(pkgdatadir)/../Madmuttrc* $(DESTDIR)$(sysconfdir) ; \
131         elif [ ! -f $(DESTDIR)$(sysconfdir)/Madmuttrc ] ; then \
132                 $(INSTALL) -m 644 Madmuttrc $(DESTDIR)$(sysconfdir) ; \
133         fi
134         -if [ ! -f $(DESTDIR)$(sysconfdir)/madmutt-mime.types ]; then \
135                 $(INSTALL) -m 644 $(srcdir)/mime.types $(DESTDIR)$(sysconfdir)/madmutt-mime.types; \
136         fi
137
138
139 update-doc: stamp-doc-rc
140         (cd doc && $(MAKE) update-doc)
141
142 Madmuttrc: stamp-doc-rc
143
144 stamp-doc-rc: $(srcdir)/init.h makedoc Madmuttrc.head
145         -rm -f Madmuttrc stamp-doc-rc
146         $(CPP) $(INCLUDES) $(DEFS) $(CPPFLAGS) -D_MAKEDOC -C \
147                 $(srcdir)/init.h | ./makedoc -c | cat Madmuttrc.head - > Madmuttrc
148         touch $@
149
150
151 -include cflags.mk
152
153 wc:
154         @sloccount $(wildcard *.h *.c) $(wildcard lib-*/) lib imap nntp pop | grep 'ansic[=:]'