Hello, In attachment I sent bash script which automate upgrading/installing JDEE process.
What it does? 1. Dowload all necessary libs: - jde - elib - eieio - semantic - speedbar - bsh 2. Unpacks all compressend packages 3. Copies files from each library to proper emacs/site-lisp directory. jde -> emacs/site-lisp/jde/ elib -> emacs/site-lisp/elib/ ... and so on. 4. Compiles all *.el files for each installed package Since emacs auto-searches all libraries in emacs/site-lisp directory it is not necessary to modify your .emacs file to use JDE (It works for me) apart from adding: (require 'jde) statement. What it needs? (This script) bash, tar, gzip, sed, wget, mkdir, rm, tail, cp command in current path. It means you need something unix like environment. It works for me very well under Win2k+CygWin It should also work under all linuxes and unixes. I will try it on my Linux box and send corrections if necessary. Configuration: Look in the beginning of script and set variables for proper values to your local configuration. regards Artur Hefczyc -- Artur Hefczyc NuTech Solutions: [EMAIL PROTECTED] Open Software Developer: [EMAIL PROTECTED]
#!/bin/bash # Basic system constant SITE_LISP_DIR=/emacs-21.1/site-lisp EMACS=emacs # Location of last version all necessary libraries JDE_LOC=http://jdee.sunsite.dk/jde-beta.tar.gz ELIB_LOC=http://jdee.sunsite.dk/elib-1.0.tar.gz EIEIO_LOC=http://prdownloads.sourceforge.net/cedet/eieio-0.17beta4.tar.gz SEMANTIC_LOC=http://prdownloads.sourceforge.net/cedet/semantic-1.4beta14.tar.gz SPEEDBAR_LOC=http://prdownloads.sourceforge.net/cedet/speedbar-0.14beta3.tar.gz BSH_LOC=http://www.beanshell.org/bsh-1.2b4.jar # Set to proper values for your system # Do you use 'wget' or another 'ncftpget' for example tool # to download files. DOWNLOAD_CMD="wget -c -t0 -T 15" # If you prefer 'zip' format change variables below to proper values FILE_SUFFIX="tar.gz" UNPACK_CMD="tar -xzvf" # Local variables. JDE_FILE=jde ELIB_FILE=elib EIEIO_FILE=eieio SEMANTIC_FILE=semantic SPEEDBAR_FILE=speedbar BSH_FILE=bsh.jar DIRTMP=jde-tmp mkdir -p $DIRTMP rm -rf $DIRTMP/* # Download last JDE $DOWNLOAD_CMD -O $DIRTMP/$JDE_FILE.$FILE_SUFFIX $JDE_LOC if [ ! $? ] ; then echo "Couldn't download $JDE_FILE file, instalation aborted" exit 1 fi # Download last ELIB $DOWNLOAD_CMD -O $DIRTMP/$ELIB_FILE.$FILE_SUFFIX $ELIB_LOC if [ ! $? ] ; then echo "Couldn't download $ELIB_FILE file, instalation aborted" exit 1 fi # Download last EIEIO $DOWNLOAD_CMD -O $DIRTMP/$EIEIO_FILE.$FILE_SUFFIX $EIEIO_LOC if [ ! $? ] ; then echo "Couldn't download $EIEIO_FILE file, instalation aborted" exit 1 fi # Download last SEMANTIC $DOWNLOAD_CMD -O $DIRTMP/$SEMANTIC_FILE.$FILE_SUFFIX $SEMANTIC_LOC if [ ! $? ] ; then echo "Couldn't download $SEMANTIC_FILE file, instalation aborted" exit 1 fi # Download last SPEEDBAR $DOWNLOAD_CMD -O $DIRTMP/$SPEEDBAR_FILE.$FILE_SUFFIX $SPEEDBAR_LOC if [ ! $? ] ; then echo "Couldn't download $SPEEDBAR_FILE file, instalation aborted" exit 1 fi # Download last BSH $DOWNLOAD_CMD -O $DIRTMP/$BSH_FILE $BSH_LOC if [ ! $? ] ; then echo "Couldn't download $BSH_FILE file, instalation aborted" exit 1 fi cd $DIRTMP JDE_DIR=`$UNPACK_CMD $JDE_FILE.$FILE_SUFFIX | tail -n 1 | sed -e "s@^\([^/]*\)/.*@\1@"` ELIB_DIR=`$UNPACK_CMD $ELIB_FILE.$FILE_SUFFIX | tail -n 1 | sed -e "s@^\([^/]*\)/.*@\1@"` EIEIO_DIR=`$UNPACK_CMD $EIEIO_FILE.$FILE_SUFFIX | tail -n 1 | sed -e "s@^\([^/]*\)/.*@\1@"` SEMANTIC_DIR=`$UNPACK_CMD $SEMANTIC_FILE.$FILE_SUFFIX | tail -n 1 | sed -e "s@^\([^/]*\)/.*@\1@"` SPEEDBAR_DIR=`$UNPACK_CMD $SPEEDBAR_FILE.$FILE_SUFFIX | tail -n 1 | sed -e "s@^\([^/]*\)/.*@\1@"` rm -rf $SITE_LISP_DIR/$JDE_FILE/* rm -rf $SITE_LISP_DIR/$ELIB_FILE/* rm -rf $SITE_LISP_DIR/$EIEIO_FILE/* rm -rf $SITE_LISP_DIR/$SEMANTIC_FILE/* rm -rf $SITE_LISP_DIR/$SPEEDBAR_FILE/* if [ -d $ELIB_DIR ] ; then cp -rf $ELIB_DIR/* $SITE_LISP_DIR/$ELIB_FILE else echo "Can't determine $ELIB_FILE source dir, instalation aborted." fi if [ -d $EIEIO_DIR ] ; then cp -rf $EIEIO_DIR/* $SITE_LISP_DIR/$EIEIO_FILE else echo "Can't determine $EIEIO_FILE source dir, instalation aborted." fi if [ -d $SEMANTIC_DIR ] ; then cp -rf $SEMANTIC_DIR/* $SITE_LISP_DIR/$SEMANTIC_FILE else echo "Can't determine $SEMANTIC_FILE source dir, instalation aborted." fi if [ -d $SPEEDBAR_DIR ] ; then cp -rf $SPEEDBAR_DIR/* $SITE_LISP_DIR/$SPEEDBAR_FILE else echo "Can't determine $SPEEDBAR_FILE source dir, instalation aborted." fi if [ -d $JDE_DIR ] ; then cp -rf $JDE_DIR/java/{bsh-commands,classes,lib} $SITE_LISP_DIR/java/ cp -rf $JDE_DIR/lisp/* $SITE_LISP_DIR/$JDE_FILE cp -f $BSH_FILE $SITE_LISP_DIR/java/lib/ else echo "Can't determine $JDE_FILE source dir, instalation aborted." fi cd $SITE_LISP_DIR echo "(add-to-list 'load-path \"$SITE_LISP_DIR/$ELIB_FILE/\")" > compile-script echo "(add-to-list 'load-path \"$SITE_LISP_DIR/$EIEIO_FILE/\")" >> compile-script echo "(add-to-list 'load-path \"$SITE_LISP_DIR/$SEMANTIC_FILE/\")" >> compile-script echo "(add-to-list 'load-path \"$SITE_LISP_DIR/$SPEEDBAR_FILE/\")" >> compile-script echo "(add-to-list 'load-path \"$SITE_LISP_DIR/$JDE_FILE/\")" >> compile-script cd $ELIB_FILE $EMACS -batch -l elib-compile-all.el -f compile-elib cd ../$EIEIO_FILE $EMACS -batch -l ../compile-script -f batch-byte-compile *.el cd ../$SEMANTIC_FILE $EMACS -batch -l ../compile-script -f batch-byte-compile *.el cd ../$SPEEDBAR_FILE $EMACS -batch -l ../compile-script -f batch-byte-compile *.el cd ../$JDE_FILE $EMACS -batch -l ../compile-script -f batch-byte-compile *.el
