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