e04208cf3cde654e26706491982f7bc36b976dbf
[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 = muttng_dotlock pgpringng pgpewrapng makedoc
6
7 if BUILD_IMAP
8 IMAP_SUBDIR = imap
9 IMAP_INCLUDES = -I$(top_srcdir)/imap
10 endif
11
12 if BUILD_POP
13 POP_SUBDIR = pop
14 POP_INCLUDES = -I$(top_srcdir)/pop
15 endif
16
17 SUBDIRS = m4 po intl doc contrib $(IMAP_SUBDIR) $(POP_SUBDIR)
18
19 bin_SCRIPTS = muttngbug fleang
20
21 BUILT_SOURCES = keymap_defs.h patchlist.c
22
23 bin_PROGRAMS = muttng @DOTLOCK_TARGET@ @PGPAUX_TARGET@ @SMIMEAUX_TARGET@
24 muttng_SOURCES = $(BUILT_SOURCES) \
25         addrbook.c alias.c attach.c base64.c browser.c buffy.c color.c \
26         compress.c crypt.c cryptglue.c \
27         commands.c complete.c compose.c copy.c curs_lib.c curs_main.c date.c \
28         edit.c enter.c flags.c init.c filter.c from.c getdomain.c \
29         handler.c hash.c hdrline.c headers.c help.c hook.c keymap.c \
30         main.c mbox.c menu.c mh.c mx.c pager.c parse.c pattern.c \
31         postpone.c query.c recvattach.c recvcmd.c \
32         rfc822.c rfc1524.c rfc2047.c rfc2231.c \
33         score.c send.c sendlib.c signal.c sort.c \
34         status.c system.c thread.c charset.c history.c lib.c \
35         muttlib.c editmsg.c utf8.c mbyte.c wcwidth.c md5c.c \
36         url.c ascii.c mutt_idna.c sidebar.c hcache.c crypt-mod.c crypt-mod.h
37
38 muttng_LDADD = @MUTT_LIB_OBJECTS@ @LIBOBJS@ $(LIBIMAP) $(LIBPOP) $(MUTTLIBS) \
39         $(INTLLIBS) $(LIBICONV)
40
41 muttng_DEPENDENCIES = @MUTT_LIB_OBJECTS@ @LIBOBJS@ $(LIBIMAPDEPS) $(LIBPOPDEPS) \
42         $(INTLDEPS)
43
44 makedoc_SOURCES = makedoc.c
45 makedoc_LDADD =
46 makedoc_DEPENDENCIES = 
47
48 # $(makedoc_OBJECTS): $(makedoc_SOURCES)
49 #       $(HOST_CC) $(DEFS) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CFLAGS) -c $<
50
51 # makedoc: $(makedoc_OBJECTS) $(makedoc_DEPENDENCIES)
52 #       @rm -rf makedoc
53 #       $(HOST_CC) $(AM_CFLAGS) $(LDFLAGS) $(makedoc_LDFLAGS) $(makedoc_OBJECTS) $(makedoc_LDADD) -o makedoc
54
55 CPP=@CPP@
56
57 DEFS=-DPKGDATADIR=\"$(pkgdatadir)\" -DSYSCONFDIR=\"$(sysconfdir)\" \
58         -DBINDIR=\"$(bindir)\" -DMUTTLOCALEDIR=\"$(datadir)/locale\" \
59         -DHAVE_CONFIG_H=1
60
61 INCLUDES=-I. -I$(top_srcdir) $(IMAP_INCLUDES) $(POP_INCLUDES) $(LIBGPGME_CFLAGS) -Iintl
62
63 CPPFLAGS=@CPPFLAGS@ -I$(includedir)
64
65
66 EXTRA_muttng_SOURCES = account.c md5c.c mutt_sasl.c mutt_socket.c mutt_ssl.c \
67         mutt_tunnel.c smime.c pgp.c pgpinvoke.c pgpkey.c \
68         pgplib.c sha1.c pgpmicalg.c gnupgparse.c resize.c dotlock.c remailer.c \
69         browser.h mbyte.h remailer.h url.h mutt_ssl_nss.c \
70         pgppacket.c mutt_idna.h nntp.c newsrc.c mutt_libesmtp.c \
71         sidebar.h crypt-mod-pgp-classic.c crypt-mod-smime-classic.c
72
73 EXTRA_DIST = COPYRIGHT GPL OPS OPS.PGP OPS.CRYPT OPS.SMIME TODO \
74         configure acconfig.h account.h \
75         compress.h \
76         attach.h buffy.h charset.h copy.h crypthash.h dotlock.h functions.h gen_defs \
77         globals.h hash.h history.h init.h keymap.h mutt_crypt.h \
78         mailbox.h mapping.h md5.h mime.h mutt.h mutt_curses.h mutt_menu.h \
79         mutt_regex.h mutt_sasl.h mutt_socket.h mutt_ssl.h mutt_tunnel.h \
80         mx.h pager.h pgp.h protos.h reldate.h rfc1524.h rfc2047.h \
81         rfc2231.h rfc822.h sha1.h sort.h mime.types VERSION prepare \
82         nntp.h ChangeLog.nntp \
83         _regex.h OPS.MIX README.SECURITY remailer.c remailer.h browser.h \
84         mbyte.h lib.h extlib.c pgpewrap.c smime_keys.pl pgplib.h Muttngrc.head Muttngrc \
85         makedoc.c stamp-doc-rc README.SSL smime.h\
86         muttngbug pgppacket.h depcomp ascii.h BEWARE PATCHES patchlist.sh       \
87         ChangeLog.old mkchangelog.sh cvslog2changelog.pl mutt_idna.h \
88         snprintf.c regex.c mutt_libesmtp.h crypt-gpgme.h
89
90 muttng_dotlock_SOURCES = mutt_dotlock.c
91 muttng_dotlock_LDADD = @LIBOBJS@
92 muttng_dotlock_DEPENDENCIES = @LIBOBJS@
93
94 pgpringng_SOURCES = pgppubring.c pgplib.c lib.c extlib.c sha1.c md5c.c pgppacket.c ascii.c
95 pgpringng_LDADD = @LIBOBJS@ $(INTLLIBS) 
96 pgpringng_DEPENDENCIES = @LIBOBJS@ $(INTLDEPS)
97
98 pgpewrapng_SOURCES = pgpewrap.c
99 pgpewrapng_LDADD = 
100 pgpewrapng_DEPENDENCIES = 
101
102 mutt_dotlock.c: dotlock.c
103         cp $(srcdir)/dotlock.c mutt_dotlock.c
104
105 CLEANFILES = mutt_dotlock.c stamp-doc-rc makedoc \
106         keymap_alldefs.h keymap_defs.h patchlist.c
107
108 ACLOCAL_AMFLAGS = -I m4
109
110 LDADD = @LIBOBJS@ @INTLLIBS@
111
112 OPS=@OPS@
113
114 fleang: muttbug.sh
115         cp muttbug.sh fleang
116         chmod +x fleang
117
118 smime_keysng: $(srcdir)/smime_keys.pl
119         cp $(srcdir)/smime_keys.pl smime_keysng
120         chmod +x smime_keysng
121
122 Makefile: $(BUILT_SOURCES)
123
124 keymap_defs.h: $(OPS) $(srcdir)/gen_defs
125         $(srcdir)/gen_defs $(OPS) > keymap_defs.h
126
127 keymap_alldefs.h: $(srcdir)/OPS $(srcdir)/OPS.PGP $(srcdir)/OPS.MIX $(srcdir)/OPS.CRYPT $(srcdir)/OPS.SMIME $(srcdir)/gen_defs
128         $(srcdir)/gen_defs $(srcdir)/OPS $(srcdir)/OPS.PGP \
129                 $(srcdir)/OPS.MIX $(srcdir)/OPS.CRYPT $(srcdir)/OPS.SMIME \
130                         > keymap_alldefs.h
131
132 reldate:
133         echo 'const char *ReleaseDate = "'`date +%Y-%m-%d`'";' > $(srcdir)/reldate.h
134
135 patchlist.c: $(srcdir)/PATCHES $(srcdir)/patchlist.sh
136         $(srcdir)/patchlist.sh < $(srcdir)/PATCHES > patchlist.c
137
138 install-exec-local:
139         if test -f $(DESTDIR)$(bindir)/mutt.dotlock && test -f $(DESTDIR)$(bindir)/muttng_dotlock ; then        \
140                 rm -f $(DESTDIR)$(bindir)/mutt.dotlock ;                \
141                 ln -sf $(DESTDIR)$(bindir)/muttng_dotlock $(DESTDIR)$(bindir)/mutt.dotlock ; \
142         fi
143         if test -f $(DESTDIR)$(bindir)/muttng_dotlock && test x@DOTLOCK_GROUP@ != x ; then \
144                 chgrp @DOTLOCK_GROUP@ $(DESTDIR)$(bindir)/muttng_dotlock && \
145                 chmod @DOTLOCK_PERMISSION@ $(DESTDIR)$(bindir)/muttng_dotlock || \
146                 { echo "Can't fix muttng_dotlock's permissions!" >&2 ; exit 1 ; } \
147         fi
148
149 install-data-local: Muttngrc
150         $(srcdir)/mkinstalldirs $(DESTDIR)$(sysconfdir)
151         -if [ -f $(DESTDIR)$(pkgdatadir)/Muttngrc ] ; then \
152                 mv $(DESTDIR)$(pkgdatadir)/Muttngrc* $(DESTDIR)$(sysconfdir) ; \
153         elif [ -f $(DESTDIR)$(pkgdatadir)/../Muttngrc ] ; then \
154                 mv $(DESTDIR)$(pkgdatadir)/../Muttngrc* $(DESTDIR)$(sysconfdir) ; \
155         elif [ ! -f $(DESTDIR)$(sysconfdir)/Muttngrc ] ; then \
156                 $(INSTALL) -m 644 $(srcdir)/Muttngrc $(DESTDIR)$(sysconfdir) ; \
157         fi
158         -if [ ! -f $(DESTDIR)$(sysconfdir)/muttng-mime.types ]; then \
159                 $(INSTALL) -m 644 $(srcdir)/mime.types $(DESTDIR)$(sysconfdir)/muttng-mime.types; \
160         fi
161
162
163 # Don't make this one ChangeLog - it's intended to be
164 # used manually.
165
166 pclean:
167         cat /dev/null > $(top_srcdir)/PATCHES
168
169 check-security:
170         (cd $(top_srcdir) && ./check_sec.sh)
171
172 commit-real:
173         (cd $(top_srcdir) && cvs commit)
174
175 commit-changelog:
176         (cd $(top_srcdir) && cvs commit -m "# changelog commit" ChangeLog)
177
178 commit: pclean check-security commit-real changelog commit-changelog
179
180 changelog:
181         (cd $(top_srcdir); \
182         cvs update ChangeLog; \
183         sh ./mkchangelog.sh | fmt -c | cat  - ChangeLog > ChangeLog.$$$$ && mv ChangeLog.$$$$ ChangeLog; \
184         $${VISUAL:-vi} ChangeLog)
185
186 ChangeLog: changelog
187
188 # kluge around automake problems.
189
190 dist-hook:
191         -for file in $(BUILT_SOURCES) ; do rm -f $(distdir)/$$file ; done
192
193 mutt-dist:
194         (cd $(srcdir) && ./build-release )
195
196 update-doc: stamp-doc-rc
197         (cd doc && $(MAKE) update-doc)
198
199 Muttngrc: stamp-doc-rc
200
201 stamp-doc-rc: $(srcdir)/init.h makedoc Muttngrc.head
202         -rm -f Muttngrc stamp-doc-rc
203         $(CPP) $(INCLUDES) $(DEFS) $(CPPFLAGS) -D_MAKEDOC -C \
204                 $(srcdir)/init.h | ./makedoc -c | cat Muttngrc.head - > Muttngrc
205         touch stamp-doc-rc
206
207
208 .PHONY: commit pclean check-security commit-real commit-changelog
209 .PHONY: changelog ChangeLog