blob: e418c7e281fc982d508bd17545d84653fb0ea86b (
plain)
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
|
#!/bin/sh
# invoke as /usr/lib/dh-elpa/helper/install flavor elpa_package elpa_version elpa_load_path
set -e
# safe values for important variables
unset HOME
PATH=/usr/sbin:/usr/bin:/sbin:/bin
# grab parameters
FLAVOR=$1
ELPA_PACKAGE=$2
ELPA_VERSION=$3
ELPA_LOAD_PATH=$4
ELPA_DIR=${ELPA_PACKAGE}-${ELPA_VERSION}
case $FLAVOR in
emacs2[01234]*)
echo install/${ELPA_DIR}: Skipping obsolete emacs ${FLAVOR}
exit 0
;;
xemacs*)
echo install/${ELPA_DIR}: Skipping unsupported emacs ${FLAVOR}
exit 0
;;
*)
echo install/${ELPA_DIR}: Handling install of emacsen flavor ${FLAVOR}
esac
src_dir=/usr/share/emacs/site-lisp/elpa-src
el_dir=$src_dir/${ELPA_DIR}/
elc_dir=/usr/share/${FLAVOR}/site-lisp/elpa/${ELPA_DIR}/
export EMACSLOADPATH
EMACSLOADPATH=${ELPA_LOAD_PATH}
echo install/${ELPA_DIR}: byte-compiling for ${FLAVOR}
[ -d ${elc_dir} ] || mkdir -p ${elc_dir}
# Create symlinks to the .el files (see section 6E in debian-emacs
# policy). This makes complation easy, and also allows find-function
# and find-library to work properly. Also link all other top level
# files and directories into the flavor directory
(cd ${elc_dir} && ln -sf ${el_dir}/* .)
# Byte compile them
(cd ${elc_dir}
set +e
${FLAVOR} --quick --batch -l package \
--eval "(setq package-user-dir \"/usr/lib/dh-elpa/nonexistent\")" \
--eval "(add-to-list 'package-directory-list \"$src_dir\")" \
-f package-initialize -f batch-byte-compile *.el > Install.log 2>&1
if test $? -ne 0
then
cat Install.log
exit 1
fi
set -e
gzip -9f Install.log)
exit 0;
|