XEmacs 21.4.20 "Double Solitaire".
[chise/xemacs-chise.git.1] / lib-src / add-big-package.sh
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