File: rules

package info (click to toggle)
emacspeak 15-3
  • links: PTS
  • area: main
  • in suites: woody
  • size: 5,596 kB
  • ctags: 3,499
  • sloc: lisp: 33,875; makefile: 592; sh: 495; tcl: 492; perl: 351; cpp: 239
file content (150 lines) | stat: -rwxr-xr-x 5,447 bytes parent folder | download
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
#!/usr/bin/make -f
#						-*- makefile -*-
# Sample debian.rules file - for GNU Hello (1.3).
# Copyright 1994,1995 by Ian Jackson.
# I hereby give you perpetual unlimited permission to copy,
# modify and relicense this file, provided that you do not remove
# my name from the file itself.  (I assert my moral right of
# paternity under the Copyright, Designs and Patents Act 1988.)
# This file may have to be extensively modified
#
# Modified to be a prototype for debmake by Christoph Lameter <clameter@debian.org>

SHELL = /bin/bash

package=emacspeak
debbase         := $(shell pwd)/debian
debtmp          := $(debbase)/tmp
eldir		:= /usr/share/emacs/site-lisp/$(package)
deblsp          := $(debtmp)/$(eldir)
debema          := $(debtmp)/usr/lib/emacsen-common/packages

# EXTRAS=DOC NEWS servers/dtk-exp servers/dtk-mv servers/speech-server	\
#  emacspeak-load-path.def emacspeak-setup.def tts-lib.tcl		\
#  debian/*.blurb

build:
	$(checkdir)
#  Emacspeak is started with a script.
#  Ensure that script sources the Debian configuration file.  (already does)
# 	  awk '								\
# 		  /^source/{found=1}					\
# 		  /^emacs/{if(!found) print "source /etc/emacspeak.conf"}\
# 		  {print}						\
# 	  ' etc/emacspeak.sh.def >tmp$$; mv tmp$$ etc/emacspeak.sh.def;
	make prefix=/usr config
#  Record the order in which the elisp files are byte-compiled.
	(cd lisp; make -n |awk '/batch-byte/{sub(/\r/,"");print $$NF}' >../debian/elfilenames)
# T.V.Raman 12/9/01: "emacspeak-rpm.el and regexp-opt.el should be compiled."
	grep -q emacspeak-rpm.el debian/elfilenames ||		\
		(echo emacspeak-rpm.el >>debian/elfilenames ;	\
		echo regexp-opt.el >>debian/elfilenames)
	cat debian/emacsen-install.in | awk '				     \
	/%FILES%/{while ((getline < "debian/elfilenames")==1){print}; next;} \
	{print}								     \
	' >debian/emacsen-install

#  Byte compiling is now done at installation time
#	make PREFIX=/usr emacspeak
	(cd info; 						\
	make;							\
	texi2html -monolithic emacspeak.texi;			\
	lynx -dump -nolist emacspeak.html >emacspeak.txt;	\
	)
	touch build

clean:
	$(checkdir)
	-rm -f build
	-make clean; 
	-rm -f etc/emacspeak.sh
	-rm -rf debian/tmp debian/files* core `find . -name "*~"`	\
            info/*.html info/*.txt info/*.info* debian/emacsen-install	\
	    debian/elfilenames
	chmod 664 README
	grep -v '^Compiled on.*vanzandt$$' README >foo && mv foo README

binary-indep:	checkroot build
	$(checkdir)
	-rm -rf debian/tmp debian/*.debhelper
	install -d debian/tmp
	cd debian/tmp && install -d `cat ../dirs`
# The stock Makefile would reconfigure the files to run in the install
# directory (so they would not later run in /usr/bin).  Makefile has
# been patched to allow the following.
	for x in etc lisp sounds servers realaudio xsl; do	\
	  cp -r $$x $(deblsp); 					\
	  find $(deblsp)/$$x -type f | xargs chmod 644;		\
	  find $(deblsp)/$$x -type f | xargs chown root.root;	\
	done
	sed "s@<emacspeak-dir>@$(eldir)/lisp@g"				\
		etc/emacspeak.sh.def > $(debtmp)/usr/bin/emacspeak
	chmod 755 $(deblsp)/servers/remote-tcl		\
		$(deblsp)/servers/dtk-exp		\
		$(deblsp)/servers/dtk-mv		\
		$(deblsp)/servers/speech-server		\
		$(deblsp)/servers/tts-lib.tcl		\
		$(deblsp)/servers/outloud		\
		$(deblsp)/etc/emacspeak.sh		\
		$(debtmp)/usr/bin/emacspeak
	chmod -R ugo+rX $(deblsp)
	touch $(deblsp)/.nosearch
	rm -rf $(deblsp)/etc/emacspeak.sh.def	\
		$(deblsp)/etc/Makefile
	mv $(deblsp)/servers/.servers $(deblsp)/servers/.servers-emacspeak
#	(cd $(deblsp)/sounds; sox -t ul -r 8000 -U ring.au r.au; mv r.au ring.au)
	-rm -rf debian/tmp/usr/info/dir
	install debian/emacspeakconfig debian/tmp/usr/sbin
	install -m 644 debian/*.blurb $(deblsp)/blurbs
	install -m 644 debian/emacspeak.conf debian/tmp/etc
	install -m 644 debian/emacspeak.1 debian/tmp/usr/share/man/man1
	install -m 644 debian/emacspeakconfig.8 debian/tmp/usr/share/man/man8
	install -m 644 etc/tables/tables.html debian/tmp/usr/share/doc/emacspeak/examples/tables.html
	install -p -m 0644 info/*.info* $(debtmp)/usr/info
# the sources included one byte-compiled file by mistake
	rm -f $(deblsp)/sounds/default-8k/define-theme.elc
# this file isn't needed either
	rm -f $(deblsp)/realaudio/.cvsignore
# These moves the files, but since we are not using dh_installdeb, we
# must add the lines to postinst and postrm manually
	dh_installemacsen 
	dh_installdocs
	if [ -d debian/tmp/usr/doc ]; then 				\
		if [ ! -d debian/tmp/usr/share ]; then			\
			mkdir debian/tmp/usr/share;			\
		fi;							\
		mv debian/tmp/usr/doc debian/tmp/usr/share/doc; 	\
	fi
	if [ -d debian/tmp/usr/man ]; then 				\
		mv debian/tmp/usr/man debian/tmp/usr/share/man; 	\
	fi
# Must have debmake installed for this to work. Otherwise please copy
# /usr/bin/debstd into the debian directory and change debstd to debian/debstd
	debstd README* etc/NEWS info/emacspeak.html info/emacspeak.txt 
	dpkg-gencontrol -isp
	chown -R root.root debian/tmp
	chmod -R go=rX debian/tmp
	dpkg --build debian/tmp ..

binary-arch:	checkroot build
	$(checkdir)
# There are no architecture-dependent files to be uploaded
# generated by this package.  If there were any they would be
# made here.

define checkdir
	test -f debian/rules
endef

# Below here is fairly generic really

binary:		binary-indep binary-arch

source diff:
	@echo >&2 'source and diff are obsolete - use dpkg-source -b'; false

checkroot:
	$(checkdir)
	test root = "`whoami`"

.PHONY: binary binary-arch binary-indep clean checkroot