428
|
1 #! /bin/sh
|
|
2 # add-big-package.sh --- Add multiple file package to Package Lisp Hierarchy
|
|
3 # Copyright (C) 1997 Free Software Foundation, Inc.
|
|
4
|
|
5 # Author: SL Baur <steve@xemacs.org>
|
|
6 # Maintainer: SL Baur <steve@xemacs.org>
|
|
7 # Keywords: packages internal
|
|
8
|
|
9 # This file is part of XEmacs.
|
|
10
|
|
11 # XEmacs is free software; you can redistribute it and/or modify it
|
|
12 # under the terms of the GNU General Public License as published by
|
|
13 # the Free Software Foundation; either version 2, or (at your option)
|
|
14 # any later version.
|
|
15
|
|
16 # XEmacs is distributed in the hope that it will be useful, but
|
|
17 # WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
18 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
|
19 # General Public License for more details.
|
|
20
|
|
21 # You should have received a copy of the GNU General Public License
|
|
22 # along with XEmacs; see the file COPYING. If not, write to
|
|
23 # the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
|
|
24 # Boston, MA 02111-1307, USA.
|
|
25
|
|
26 ### Commentary:
|
|
27
|
|
28 ## This file copies a single lisp file into an XEmacs package hierarchy and
|
|
29 ## performs the necessary magic so that it will be autoloaded at the next
|
|
30 ## dump.
|
|
31
|
|
32 ## Parameters:
|
|
33 ## $1 -- Full path to an XEmacsen later than 20.3
|
|
34 ## $2 -- Full path to a lisp package tarball to install
|
|
35 ## $3 -- Full path to a lisp directory in an XEmacs package hierarchy
|
|
36 ## This directory will be created if it does not exist.
|
|
37 ## NOTE: the directory name should *not* end in a trailing slash
|
|
38
|
|
39
|
|
40 ### Code:
|
|
41
|
|
42 XEMACS="$1" # Not used at present
|
|
43 LISP_FILE="$2" # Should be a binary package tarball
|
|
44 DEST_DIR="$3" # Should be a top level package directory
|
|
45
|
|
46 # Test for valid XEmacs executable and valid input file
|
|
47 if [ ! -f "${LISP_FILE}" -o ! -x "${XEMACS}" ]; then
|
|
48 exit 1
|
|
49 fi
|
|
50
|
|
51 # Test for destination directory, creating if necessary
|
|
52 test -d "${DEST_DIR}" || mkdir "${DEST_DIR}"
|
|
53 test -d "${DEST_DIR}" || exit 1;
|
|
54
|
|
55 # Very simple minded extraction for the first cut
|
|
56 # We'll get more sophisticated later
|
|
57 cd "${DEST_DIR}"
|
|
58 gunzip -c "${LISP_FILE}" | tar xvf -
|
|
59
|
|
60 # Need to refresh the info/dir file, I don't know how to do that.
|
|
61
|
|
62 exit 0
|
|
63
|
|
64 ### add-big-package.sh ends here
|