This started with me wanting to update JDE to the latest version---the
one we have right now basically doesn't work.  This affects the
following dependencies:
- eieio
- speedbar
- semantic
It also requires adding the following packages from CEDET 1.0pre4 (as the above):
http://cedet.sourceforge.net/
- ede
- cogre
- cedet-common
It also (slightly, I hope---Makefile only) affects the following
packages that depend on anything in the above list:
- xslt-process
- ecb
Needless to say, the patch would be huge, and it's likely I made
mistakes, even though the changes to the original packages are minimal:
It took me a long time to get the compile-time dependencies,
auto-autoloads & friends to work right.  However, it's the best I can do
from here.  So I'd like to commit this next weekend so this can all be
tested in other environments.
For the adventurous, I've posted package distributions of this stuff
here:
http://www.deinprogramm.de/xemacs/cedet-common-1.0-pkg.tar.gz
http://www.deinprogramm.de/xemacs/cogre-1.0-pkg.tar.gz
http://www.deinprogramm.de/xemacs/ede-1.0-pkg.tar.gz
http://www.deinprogramm.de/xemacs/eieio-1.05-pkg.tar.gz
http://www.deinprogramm.de/xemacs/jde-1.51-pkg.tar.gz
http://www.deinprogramm.de/xemacs/semantic-1.20-pkg.tar.gz
http://www.deinprogramm.de/xemacs/speedbar-1.28-pkg.tar.gz
I've attached a patch that includes the relevant Makefiles.  Note it
changes the maintainer of JDE from Andy Piper (who says he doesn't do
much with JDE anymore) to xemacs-beta@.
Comments welcome!
-- 
Cheers =8-} Mike
Friede, Völkerverständigung und überhaupt blabla
Index: package-compile.el
===================================================================
RCS file: /pack/xemacscvs/XEmacs/packages/package-compile.el,v
retrieving revision 1.72
diff -u -r1.72 package-compile.el
--- package-compile.el	14 Aug 2007 21:23:08 -0000	1.72
+++ package-compile.el	18 Nov 2007 14:33:59 -0000
@@ -103,7 +103,9 @@
     ("calc" . "xemacs-packages")
     ("calendar" . "xemacs-packages")
     ("cc-mode" . "xemacs-packages")
+    ("cedet-common" . "xemacs-packages")
     ("clearcase" . "xemacs-packages")
+    ("cogre" . "xemacs-packages")
     ("cookie" . "xemacs-packages")
     ("crisp" . "xemacs-packages")
     ("debug" . "xemacs-packages")
@@ -112,6 +114,7 @@
     ("dired" . "xemacs-packages")
     ("ecb" . "xemacs-packages")
     ("ecrypto" . "xemacs-packages")
+    ("ede" . "xemacs-packages")
     ("edebug" . "xemacs-packages")
     ("ediff" . "xemacs-packages")
     ("edit-utils" . "xemacs-packages")
@@ -226,7 +229,7 @@
     (setq defdir (expand-file-name (concat defdir "/.."))))
   (setq package-source-root defdir))
 
-(defun package-name-to-directory (package)
+(defun package-name-to-directories (package)
   "Map `package' to a source directory."
   (let* ((area (or (cdr (assoc package package-directory-map))
 		   (error (concat "%s is not in `package-directory-map'.  "
@@ -244,12 +247,16 @@
 	       (equal package "x-symbol")
 	       (equal package "xlib")
 	       (equal package "xwem"))
-	   (expand-file-name "lisp" (file-name-as-directory dir)))
+	   (list (expand-file-name "lisp" (file-name-as-directory dir))))
 	  ((equal package "mew")
-	   (expand-file-name "mew" (file-name-as-directory dir)))
+	   (list (expand-file-name "mew" (file-name-as-directory dir))))
 	  ((equal package "zenirc")
-	   (expand-file-name "src" (file-name-as-directory dir)))
-	  (t dir))))
+	   (list (expand-file-name "src" (file-name-as-directory dir))))
+	  ((equal package "semantic")
+	   (list dir
+		 (expand-file-name "bovine" (file-name-as-directory dir))
+		 (expand-file-name "wisent" (file-name-as-directory dir))))
+	  (t (list dir)))))
 
 (defvar depends nil)
 (defvar command-line-args-left)
@@ -264,19 +271,22 @@
 
 ;; Setup load-path, data-directory-list and load necessary auto-autoloads
 (while depends
-  (let* ((dir (package-name-to-directory (car depends)))
-	 (etc-dir (expand-file-name "etc" dir)))
-    (when (null dir)
+  (let ((dirs (package-name-to-directories (car depends))))
+    (when (null dirs)
       (error "%s is not in `package-directory-map'.  See:
package-compile.el"
-	     dir))
-    (push dir load-path)
-    ;; This assumes package has layout *-packages/package/etc/package
-    ;; This is the case for the only package it matters at the time or writing
-    ;; which is ps-print
-    (if (file-directory-p (expand-file-name (car depends) etc-dir))
-	(push (file-name-as-directory etc-dir) data-directory-list))
-    (load (expand-file-name "auto-autoloads" dir))
-    (pop depends)))
+	     (car depends)))
+    (let* ((dir (car dirs))
+	   (etc-dir (expand-file-name "etc" dir)))
+      (while dirs
+	(push (car dirs) load-path)
+	(setq dirs (cdr dirs)))
+      ;; This assumes package has layout *-packages/package/etc/package
+      ;; This is the case for the only package it matters at the time or writing
+      ;; which is ps-print
+      (if (file-directory-p (expand-file-name (car depends) etc-dir))
+	  (push (file-name-as-directory etc-dir) data-directory-list))
+      (load (expand-file-name "auto-autoloads" dir))
+      (pop depends))))
 
 ;; Lastly, add the current directory
 (push default-directory load-path)
Index: xemacs-packages/Makefile
===================================================================
RCS file: /pack/xemacscvs/XEmacs/packages/xemacs-packages/Makefile,v
retrieving revision 1.40
diff -u -r1.40 Makefile
--- xemacs-packages/Makefile	7 May 2007 07:00:49 -0000	1.40
+++ xemacs-packages/Makefile	18 Nov 2007 14:33:59 -0000
@@ -41,7 +41,7 @@
 	apel cc-mode debug dired ecrypto edit-utils elib eterm ispell \
 	os-utils sh-script texinfo text-modes xlib \
 	\
-	edebug efs eieio net-utils xemacs-devel \
+	edebug efs cedet-common cogre eieio ede net-utils xemacs-devel \
 	\
 	Sun ada auctex bbdb build c-support calc calendar clearcase \
 	cookie crisp dictionary docbookide ecb ediff edt emerge \
Index: xemacs-packages/eieio/Makefile
===================================================================
RCS file: /pack/xemacscvs/XEmacs/packages/xemacs-packages/eieio/Makefile,v
retrieving revision 1.15
diff -u -r1.15 Makefile
--- xemacs-packages/eieio/Makefile	31 Oct 2003 16:47:50 -0000	1.15
+++ xemacs-packages/eieio/Makefile	18 Nov 2007 14:33:59 -0000
@@ -18,20 +18,22 @@
 # Boston, MA 02111-1307, USA.
 
 VERSION = 1.05
-AUTHOR_VERSION = 0.17
-MAINTAINER = Eric Ludlam <zappo(a)gnu.org>
+AUTHOR_VERSION = 1.0pre4
+MAINTAINER = XEmacs Development Team <xemacs-beta(a)xemacs.org>
+AUTHOR = Eric Ludlam <zappo(a)gnu.org>
 PACKAGE = eieio
 PKG_TYPE = regular
-REQUIRES = speedbar xemacs-base edebug
+REQUIRES = xemacs-base edebug cedet-common speedbar
 CATEGORY = standard
 
 ELCS = eieio-comp.elc eieio.elc eieio-opt.elc eieio-custom.elc \
 	eieio-doc.elc eieio-base.elc tree.elc call-tree.elc \
-	chart.elc eieio-speedbar.elc linemark.elc
+	chart.elc eieio-speedbar.elc linemark.elc \
+	eieio-load.elc lmcompile.elc 
 
 STANDARD_DOCS = t
 
-EXTRA_SOURCES = INSTALL Project.ede eieio-tests.el
+EXTRA_SOURCES = INSTALL Project.ede eieio-tests.el eieio-test-methodinvoke.el
 
 include ../../XEmacs.rules
 
Index: xemacs-packages/semantic/Makefile
===================================================================
RCS file: /pack/xemacscvs/XEmacs/packages/xemacs-packages/semantic/Makefile,v
retrieving revision 1.39
diff -u -r1.39 Makefile
--- xemacs-packages/semantic/Makefile	28 Feb 2006 06:19:45 -0000	1.39
+++ xemacs-packages/semantic/Makefile	18 Nov 2007 14:33:59 -0000
@@ -18,23 +18,53 @@
 # Boston, MA 02111-1307, USA.
 
 VERSION = 1.20
-AUTHOR_VERSION = 1.4.4
-MAINTAINER = Eric M. Ludlam <zappo(a)gnu.org>
+AUTHOR_VERSION = 2.0pre4
+MAINTAINER = XEmacs Development Team <xemacs-beta(a)xemacs.org>
+AUTHOR = Eric M. Ludlam <zappo(a)gnu.org>
 PACKAGE = semantic
 PKG_TYPE = regular
-REQUIRES = eieio xemacs-base xemacs-devel edit-utils speedbar texinfo \
-	fsf-compat cc-mode edebug
+REQUIRES = cedet-common eieio xemacs-base xemacs-devel edit-utils speedbar texinfo \
+	fsf-compat cc-mode edebug ede sgml
 CATEGORY = standard
 
-ELCS = document-vars.elc document.elc semantic-analyze.elc semantic-bnf.elc \
-	semantic-c.elc semantic-cb.elc semantic-chart.elc semantic-ctxt.elc \
-	semantic-el.elc semantic-example.elc semantic-ia-sb.elc semantic-ia.elc \
-	semantic-imenu.elc semantic-java.elc semantic-load.elc semantic-make.elc \
-	semantic-sb.elc semantic-scm.elc semantic-skel.elc semantic-texi.elc \
-	semantic-util-modes.elc semantic-util.elc semantic.elc semanticdb.elc \
-	senator.elc sformat.elc working.elc
+ELCS =   semantic-alias.elc \
+  semantic-adebug-eieio.elc semantic-adebug.elc semantic-analyze.elc \
+  semantic-ast.elc semantic-bnf.elc semantic-cb.elc \
+  semantic-chart.elc semantic-complete.elc semantic-ctxt.elc \
+  semantic-debug.elc semantic-decorate-mode.elc semantic-decorate.elc \
+  semantic-dep.elc semantic-doc.elc semantic-ede-grammar.elc \
+  semantic-edit.elc semantic-example.elc semantic-find.elc \
+  semantic-format.elc semantic-fw.elc semantic-grammar-wy.elc \
+  semantic-grammar.elc semantic-html.elc semantic-ia-sb.elc semantic-ia.elc \
+  semantic-idle.elc semantic-imenu.elc \
+  semantic-lex-spp.elc semantic-lex.elc semantic-load.elc semantic-make.elc \
+  semantic-mru-bookmark.elc semantic-regtest.elc semantic-sb.elc \
+  semantic-sort.elc semantic-tag-file.elc \
+  semantic-tag-ls.elc semantic-tag.elc semantic-texi.elc semantic-utest.elc \
+  semantic-util-modes.elc semantic-util.elc semantic.elc \
+  semanticdb-ebrowse.elc semanticdb-el.elc semanticdb-file.elc \
+  semanticdb-find.elc semanticdb-mk.elc semanticdb-search.elc \
+  semanticdb-skel.elc semanticdb-system.elc semanticdb.elc senator.elc \
+  sformat.elc wisent/bison-wisent.elc wisent/semantic-wisent.elc \
+  bovine/bovine-debug.elc bovine/bovine-grammar-macros.elc \
+  bovine/bovine-grammar.elc bovine/erlang-edoc.elc \
+  bovine/semantic-bovine.elc bovine/semantic-c-by.elc bovine/semantic-c.elc \
+  bovine/semantic-el.elc bovine/semantic-erlang-by.elc \
+  bovine/semantic-erlang.elc bovine/semantic-java.elc \
+  bovine/semantic-make-by.elc bovine/semantic-make.elc \
+  bovine/semantic-scm-by.elc bovine/semantic-scm.elc \
+  document-vars.elc document.elc \
+  wisent/wisent-awk-wy.elc wisent/wisent-calc-wy.elc wisent/wisent-calc.elc \
+  wisent/wisent-cim-wy.elc wisent/wisent-comp.elc wisent/wisent-debug.elc \
+  wisent/wisent-expr.elc wisent/wisent-grammar-macros.elc \
+  wisent/wisent-grammar.elc wisent/wisent-java-tags-wy.elc \
+  wisent/wisent-java-tags.elc wisent/wisent-java-wy.elc \
+  wisent/wisent-java.elc wisent/wisent-python-wy.elc \
+  wisent/wisent-python.elc wisent/wisent.elc working.elc
 
-EXTRA_SOURCES = ChangeLog.upstream INSTALL NEWS Project.ede $(wildcard *.bnf)
+EXTRA_SOURCES = ChangeLog.upstream INSTALL NEWS Project.ede bovine/semantic-skel.el
$(wildcard *.bnf)
+
+PRELOADS = -eval \("push \"./wisent\" load-path"\) -eval \("push
\"./bovine\" load-path"\) -l semantic-alias -l semantic -l semantic-debug
-l semantic-grammar -l semantic-bovine -l wisent-comp
 
 STANDARD_DOCS = t
 
Index: xemacs-packages/speedbar/Makefile
===================================================================
RCS file: /pack/xemacscvs/XEmacs/packages/xemacs-packages/speedbar/Makefile,v
retrieving revision 1.37
diff -u -r1.37 Makefile
--- xemacs-packages/speedbar/Makefile	19 Jul 2005 08:57:17 -0000	1.37
+++ xemacs-packages/speedbar/Makefile	18 Nov 2007 14:33:59 -0000
@@ -18,11 +18,12 @@
 # Boston, MA 02111-1307, USA.
 
 VERSION = 1.28
-AUTHOR_VERSION = 0.14beta4
-MAINTAINER = Eric M. Ludlam <zappo(a)gnu.org>
+AUTHOR_VERSION = 1.0pre4
+MAINTAINER = XEmacs Development Team <xemacs-beta(a)xemacs.org>
+AUTHOR = Eric M. Ludlam <zappo(a)gnu.org>
 PACKAGE = speedbar
 PKG_TYPE = regular
-REQUIRES = xemacs-base edebug
+REQUIRES = xemacs-base edebug cedet-common
 CATEGORY = standard
 
 ELCS = bigclock.elc dframe.elc rpm.elc sb-ant.elc sb-gud.elc sb-html.elc \
Index: xemacs-packages/jde/Makefile
===================================================================
RCS file: /pack/xemacscvs/XEmacs/packages/xemacs-packages/jde/Makefile,v
retrieving revision 1.77
diff -u -r1.77 Makefile
--- xemacs-packages/jde/Makefile	14 Mar 2006 08:48:00 -0000	1.77
+++ xemacs-packages/jde/Makefile	18 Nov 2007 14:33:59 -0000
@@ -18,14 +18,14 @@
 # Boston, MA 02111-1307, USA.
 
 VERSION = 1.51
-AUTHOR_VERSION = 2.3.3
-MAINTAINER = Andy Piper <andy(a)xemacs.org>
+AUTHOR_VERSION = 2.3.5.1
+MAINTAINER = XEmacs Development Team <xemacs-beta(a)xemacs.org>
 AUTHOR = Paul Kinnucan <paulk(a)mathworks.com>
 PACKAGE = jde
 PKG_TYPE = regular
 REQUIRES = jde cc-mode semantic debug speedbar \
 	edit-utils eterm mail-lib xemacs-base xemacs-devel \
-	eieio elib sh-script fsf-compat
+	cedet-common eieio elib sh-script fsf-compat os-utils
 CATEGORY = standard
 
 # WARNING order is really important here so that dependencies are
@@ -67,7 +67,6 @@
 	lisp/jde-plugins.elc \
 	lisp/jde-parse-class.elc \
 	lisp/jde-run.elc \
-	lisp/jde-setnu.elc \
 	lisp/jde-stat.elc \
 	lisp/jde-util.elc \
 	lisp/jde-which-method.elc \
@@ -75,8 +74,14 @@
 	lisp/jde-wiz.elc \
 	lisp/jde-ejb.elc \
 	lisp/jde-xemacs.elc \
+	lisp/jde-annotations.elc \
+	lisp/jde-custom.el \
+	lisp/jde-junit.elc \
 	lisp/jde-xref.elc \
-	lisp/tree-widget.elc \
+	lisp/jde-project-file.elc \
+	lisp/jde-sregex.elc \
+	lisp/jde-tree-widget.elc \
+	lisp/regress.elc \
 	$(LATE_ELCS)
 
 EXTRA_SOURCES = lisp/ChangeLog.upstream
Index: xemacs-packages/xslt-process/Makefile
===================================================================
RCS file: /pack/xemacscvs/XEmacs/packages/xemacs-packages/xslt-process/Makefile,v
retrieving revision 1.32
diff -u -r1.32 Makefile
--- xemacs-packages/xslt-process/Makefile	27 Jul 2005 06:08:45 -0000	1.32
+++ xemacs-packages/xslt-process/Makefile	18 Nov 2007 14:33:59 -0000
@@ -22,8 +22,8 @@
 MAINTAINER = Ovidiu Predescu <ovidiu(a)xemacs.org>
 PACKAGE = xslt-process
 PKG_TYPE = regular
-REQUIRES = jde cc-mode semantic debug speedbar edit-utils eterm \
-	mail-lib xemacs-base elib eieio sh-script fsf-compat xemacs-devel
+REQUIRES = jde cc-mode semantic cedet-common debug speedbar edit-utils eterm \
+	mail-lib xemacs-base elib eieio sh-script fsf-compat xemacs-devel os-utils
 CATEGORY = standard
 
 JAR = xslt.jar
Index: xemacs-packages/ecb/Makefile
===================================================================
RCS file: /pack/xemacscvs/XEmacs/packages/xemacs-packages/ecb/Makefile,v
retrieving revision 1.44
diff -u -r1.44 Makefile
--- xemacs-packages/ecb/Makefile	22 Dec 2004 21:54:34 -0000	1.44
+++ xemacs-packages/ecb/Makefile	18 Nov 2007 14:33:59 -0000
@@ -22,8 +22,8 @@
 MAINTAINER = Klaus Berndl <klaus.berndl(a)sdm.de>
 PACKAGE = ecb
 PKG_TYPE = regular
-REQUIRES = xemacs-base semantic eieio fsf-compat edit-utils jde mail-lib \
-	eshell ediff xemacs-devel speedbar c-support
+REQUIRES = xemacs-base semantic cedet-common eieio fsf-compat edit-utils jde mail-lib \
+	eshell ediff xemacs-devel speedbar c-support os-utils
 CATEGORY = standard
 
 ELCS = ecb-compilation.elc ecb-cycle.elc ecb.elc ecb-eshell.elc ecb-face.elc \
_______________________________________________
XEmacs-Patches mailing list
XEmacs-Patches(a)xemacs.org
http://calypso.tux.org/cgi-bin/mailman/listinfo/xemacs-patches