File: Makefile

package info (click to toggle)
xemacs21-packages 2009.02.17.dfsg.1-1
  • links: PTS
  • area: main
  • in suites: squeeze
  • size: 116,928 kB
  • ctags: 88,975
  • sloc: lisp: 1,232,060; ansic: 16,570; java: 13,514; xml: 6,477; sh: 4,611; makefile: 4,036; asm: 3,007; perl: 839; cpp: 500; ruby: 257; csh: 96; haskell: 93; awk: 49; python: 47
file content (178 lines) | stat: -rw-r--r-- 6,472 bytes parent folder | download | duplicates (9)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
# Makefile for the Insidious Big Brother Database.
# Original Author: Jamie Zawinski (jwz@jwz.org)
#
# Makefile,v 1.7 1998/03/10 07:33:12 simmonmt Exp
#
# Makefile,v
# Revision 1.7  1998/03/10 07:33:12  simmonmt
# Finally fixed that damn 19.34 :link problem - needed to put OTHERDIR
# stuff first in the load-path before loading bbdb.el.
#
# Revision 1.6  1998/02/23 07:23:23  simmonmt
# Support for OTHERDIR, rearranged flags to Emacs so we can use
# bbdb-split-string (19.34 doesn't have split-string)
#
# Revision 1.5  1998/01/06 06:48:50  simmonmt
# Fixed bug
#
# Revision 1.4  1998/01/06 06:45:39  simmonmt
# Added deploy target.  Added migrate.el
#
# Revision 1.3  1997/11/02 06:32:38  simmonmt
# Support for bbdb-sc.el
#
# Revision 1.2  1997/10/12 00:24:41  simmonmt
# Changed VM, GNUS, and MHE definitions.  If the corresponding DIR
# variables are set, the (the DIR vars) are added to load-path.  The
# relevant el files are then loaded using the load-path.  This allows
# VMDIR, et al to be unset if the packages live in load-path by
# default.  Added bbdb-snarf and bbdb-w3.  Made the bbdb-srv and
# bbdb-reportmail skip messages more informative for the poor souls (FSF
# Emacs users) who can't use them.  Added a check for itimer, since
# apparently some FSF Emacs users have installed gnuserv - without
# itimer, bbdb-srv still won't compile.
#
# Revision 1.1  1997/10/06 01:16:00  simmonmt
# Initial revision
#
#

# this is lovely, isn't it?  Surprisingly enough, it seems to work...
VM	= -eval '(progn (if (not (string-match "$(VMDIR)" ""))            \
			    (setq load-path (cons "$(VMDIR)" load-path))) \
			(if (load "vm-version" t)                         \
			    (cond ((> (string-to-number vm-version) 5.31) \
                                   (load "vm"))                           \
                                  (t (load "vm-vars") (load "vm")))))'

GNUS	= -eval '(if (not (string-match "$(GNUSDIR)" ""))             \
		     (setq load-path (cons "$(GNUSDIR)" load-path)))' 

MHE	= -eval '(progn (if (not (string-match "$(MHEDIR)" ""))            \
			    (setq load-path (cons "$(MHEDIR)" load-path))) \
			(load "mh-e"))'

# This is hideous and sick, but FSF 19.34 doesn't ship with split, and we
# can't load bbdb.el to get bbdb-split because we have to put OTHERDIR
# at the front of the load-path before loading bbdb.el.  This makes my
# head hurt.
PUSHPATH= -eval "`\
           dir=\". $(OTHERDIR)\"; \
	   echo \(setq load-path \(append \(list ; \
           for i in $$dir ; do \
              echo \\"$$i\\"\ ; \
	   done ;\
	   echo \) load-path\)\) ; \
           `"

#foo:
#	@echo $(PUSHPATH)
#	echo
#	$(EMACS) -batch -q $(PUSHPATH) -eval '(message (prin1-to-string load-path))'

#-eval '(setq load-path                                        \
#                     (append (bbdb-split (if (/= 0 (length "$(OTHERDIR)")) \
#                                              (concat ". " "$(OTHERDIR)")   \
#                                              ".") " ")                     \
#					       load-path))'

        EMACS = xemacs
     MAKEINFO = makeinfo

.SUFFIXES: .elc .el .tar .Z .gz .uu

DEPSRCS=	bbdb-com.el  bbdb-hooks.el  bbdb-gnus.el  bbdb-mhe.el \
		bbdb-rmail.el bbdb-vm.el bbdb-ftp.el bbdb-whois.el \
		bbdb-xemacs.el bbdb-print.el bbdb-srv.el bbdb-reportmail.el \
		bbdb-migrate.el

DEPBINS=	${DEPSRCS:.el=.elc}
SRCS=		bbdb.el  $(DEPSRCS)
BINS=		bbdb.elc $(DEPBINS)

syntax:
	@echo "" ;\
	echo "*** Make should be run from the `cd ..;pwd` directory" ;\
	echo "" ;\

all:	rmail gnus vm mhe bbdb info

auto-autoloads.elc: auto-autoloads.el
	$(EMACS) -batch -q -f batch-byte-compile ./auto-autoloads.el

bbdb.elc:            bbdb.el
bbdb-com.elc:        bbdb.elc bbdb-com.el
bbdb-ftp.elc:        bbdb.elc bbdb-ftp.el
bbdb-migrate.elc:    bbdb.elc bbdb-migrate.el
bbdb-print.elc:      bbdb.elc bbdb-print.el
bbdb-snarf.elc:      bbdb.elc bbdb-snarf.el
bbdb-whois.elc:      bbdb.elc bbdb-whois.el
bbdb-w3.elc:         bbdb.elc bbdb-w3.el
bbdb-xemacs.elc:     bbdb.elc bbdb-xemacs.el

.el.elc:
	$(EMACS) -batch -q $(PUSHPATH) -l ./bbdb.elc -f batch-byte-compile $<

bbdb.elc:	bbdb.el
	$(EMACS) -batch -q -f batch-byte-compile ./bbdb.el

bbdb-gnus.elc:	bbdb.elc bbdb-gnus.el
	$(EMACS) -batch -q $(PUSHPATH) -l ./bbdb.elc $(GNUS)   \
		-f batch-byte-compile $(@:.elc=.el)
bbdb-mhe.elc:	bbdb.elc bbdb-mhe.el
	$(EMACS) -batch -q $(PUSHPATH) -l ./bbdb.elc $(MHE)    \
		-f batch-byte-compile $(@:.elc=.el)
bbdb-rmail.elc:	bbdb.elc bbdb-rmail.el
	$(EMACS) -batch -q $(PUSHPATH) -l ./bbdb.elc $(RMAIL)  \
		-f batch-byte-compile $(@:.elc=.el)
bbdb-vm.elc:	bbdb.elc bbdb-vm.el
	$(EMACS) -batch -q $(PUSHPATH) -l ./bbdb.elc $(VM)     \
		-f batch-byte-compile $(@:.elc=.el)

bbdb-srv.elc:   bbdb.elc bbdb-srv.el
	$(EMACS) -batch -q $(PUSHPATH) -l ./bbdb.elc -eval '(if (and (locate-library "gnuserv") (locate-library "itimer")) (byte-compile-file "bbdb-srv.el") (message "Optional package bbdb-srv skipped - gnuserv not found"))'

bbdb-reportmail.elc: bbdb.elc bbdb-reportmail.el
	$(EMACS) -batch -q $(PUSHPATH) -l ./bbdb.elc -eval '(if (locate-library "reportmail") (byte-compile-file "bbdb-reportmail.el") (message "Optional package bbdb-reportmail skipped - reportmail not found"))'

bbdb-sc.elc: bbdb.elc bbdb-sc.el
	$(EMACS) -batch -q $(PUSHPATH) -l ./bbdb.elc -eval '(if (locate-library "supercite") (byte-compile-file "bbdb-sc.el") (message "Optional package bbdb-sc skipped - supercite not found"))'

# bbdb-hooks uses VM macros if it can find VM.  If you don't have VM,
# then the $(VM) makefile variable should be undefined or empty.
bbdb-hooks.elc:  bbdb.elc bbdb-hooks.el
	$(EMACS) -batch -q $(PUSHPATH) -l ./bbdb.elc $(VM) \
	-f batch-byte-compile $(@:.elc=.el)

autoloads: auto-autoloads.elc

extras: bbdb-print.elc bbdb-ftp.elc bbdb-whois.elc bbdb-xemacs.elc  \
	bbdb-srv.elc bbdb-reportmail.elc bbdb-snarf.elc bbdb-w3.elc \
	bbdb-sc.elc bbdb-migrate.elc
bbdb:	bbdb.elc bbdb-com.elc bbdb-hooks.elc extras
rmail:	bbdb bbdb-rmail.elc
vm:	bbdb bbdb-vm.elc
mhe:	bbdb bbdb-mhe.elc
gnus:	bbdb bbdb-gnus.elc
# aliases
mh:	mhe
mh-e:	mhe

deploy:
	@for fname in `cd RCS; ls |sed 's/,v$$//g'` ; do \
	  if [ -w "$$fname" ] ; then \
	    echo "File $$fname needs to be checked in" ; \
	    exit 1 ; \
	  fi ; \
	done ; \
	if [ -z "$(REVTAG)" ] ; then \
	  echo "REVTAG needs to be set" ; \
	  exit 1 ; \
	fi ; \
	rcs "-n$(REVTAG)": RCS/* ; \
	co -kv RCS/*


clean:
	$(RM) bbdb.elc bbdb-*.elc bbdb.info auto-autoloads.elc