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
|