Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Browse files

Fix cedet recipe

This includes a fix to "el-get-reload" that ignores errors during
reloading package files, because CEDET raises errors if you try to
reload it. If a file raises an error during reloading, we issue a
warning telling the user that they might have to restart emacs to
finish the update.

Recipe fixes based on dimitri#748
  • Loading branch information...
commit 619941cb312f6067016f3b4806756f65b32897eb 1 parent 02f3795
@DarwinAwardWinner authored
Showing with 23 additions and 4 deletions.
  1. +8 −1 el-get.el
  2. +15 −3 recipes/cedet.rcp
View
9 el-get.el
@@ -641,7 +641,14 @@ PACKAGE may be either a string or the corresponding symbol."
;; Reload all loaded files in package dir if they still
;; exist.
(loop for file in package-files
- do (load file 'noerror))
+ ;; We convert errors to warnings here, because some
+ ;; files don't like being loaded more than once in a
+ ;; session. Example: "cedet-remove-builtin.el" from
+ ;; CEDET.
+ do (condition-case e
+ (load file 'noerror)
+ (error (warn "Error while reloading file %s in package %s: %S\n\n This package may require a restart of emacs to complete the update process."
+ file package (cdr e)))))
;; Redo package initialization
(el-get-init package)
;; Reload all features provided by the package. This ensures
View
18 recipes/cedet.rcp
@@ -3,9 +3,21 @@
:description "CEDET is a Collection of Emacs Development Environment Tools written with the end goal of creating an advanced development environment in Emacs."
:type bzr
:url "bzr://cedet.bzr.sourceforge.net/bzrroot/cedet/code/trunk"
- :build ("touch `find . -name Makefile`" "make")
- :build/berkeley-unix ("touch `find . -name Makefile`" "gmake")
+ :build
+ ;; `((,el-get-emacs "-batch" "-Q" "-l" "cedet-build.el" "-f" "cedet-build"))
+ `(("sh" "-c" "touch `find . -name Makefile`")
+ ("make" ,(format "EMACS=%s" (shell-quote-argument el-get-emacs))))
+ :build/berkeley-unix
+ `(("sh" "-c" "touch `find . -name Makefile`")
+ ("gmake" ,(format "EMACS=%s" (shell-quote-argument el-get-emacs))))
:build/windows-nt ("echo #!/bin/sh > tmp.sh & echo touch `/usr/bin/find . -name Makefile` >> tmp.sh & echo make FIND=/usr/bin/find >> tmp.sh"
"sed 's/^M$//' tmp.sh > tmp2.sh"
"sh ./tmp2.sh" "rm ./tmp.sh ./tmp2.sh")
- :load-path ("./common" "speedbar"))
+ :features nil
+ ;; This package isn't really non-lazy, but we want to call the
+ ;; post-init immediately, because it handles the lazy autoload
+ ;; setup.
+ :lazy nil
+ :post-init
+ (unless (featurep 'cedet-devel-load)
+ (load (expand-file-name "cedet-devel-load.el" pdir))))
Please sign in to comment.
Something went wrong with that request. Please try again.