[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Unversioned emacs packages uploaded to experimental



Agustin Martin <agmartin@debian.org> writes:

>
> Hi, David,
>
> XEmacs is in Debian and is currently supported. While I am aware of its
> current popularity and of the big difference between the number of
> contributors for both, it should remain supported as long as we ship it.


Well, that's a topic for another thread, I think. 



>
>> > I could just avoid symlink setting for unversioned Emacs, but there is
>> > an aditional problem with it. For byte-compiled files to be available
>> > I'll need to add that path to the search list, which will have as a
>> > side effect that ispell.el and flyspell.el will be used by Emacs
>> > instead of those provided by the package. No problem for XEmacs.
>> 
>> Are you worried here about emacs loading the source files instead of the
>> byte-compiled ones?  By default emacs loads the .elc even if the .el is
>> newer (see the variable load-prefer-newer). It's also usually not that
>> big a deal to skip byte compilation (the exception being some uses of
>> macros). You could try just putting the .el files in the load path and
>> see how that goes. I just tried ispell-buffer uncompiled, and it seems
>> fine.
>
> This is true when both files are in the same dir and so, in the same
> location in the search path, but not otherwise
>
> $ emacs25 && enable spellchecking && eval (message "%s" ispell-version)
> ispell.el 3.6 - 7-Jan-2003
>
> However, this is not true when they are at different dirs in the load-path.
> First dir with a match will win

OK, that part is true.

[stuff snipped]
>
> $ cp /usr/share/emacs/site-lisp/dictionaries-common/{i,fly}spell.el /usr/share/emacs/25.2/site-lisp/dictionaries-common
> $ emacs25 && enable spellchecking && eval (message "%s" ispell-version)
> ispell.el 3.6 - 7-Jan-2003 (+ Debian `dictionaries-common' changes)

I'm not sure if this is meant to demonstrate a distinct issue from what
you say above about first match winning. In any case, I can report what
worked to fix the emacsen-install of emacs-goodies-el: just guard the
symlinking (rather than the whole file) with a check for the flavour
emacs:
 
-if [ ${FLAVOR} = emacs ]; then exit 0; fi
-
 LOG=`tempfile -pelc_ -s.log -m644`
 ELDIR=/usr/share/emacs/site-lisp/${PACKAGE}
 ELCDIR=/usr/share/${FLAVOR}/site-lisp/${PACKAGE}
@@ -67,9 +65,11 @@ FILES=$(for i in $FILES ; do echo $i ; done | sort -u)
 
 # Symlinks instead of copying...
 cd ${ELCDIR}
-for i in $FILES $sourceonly_all; do
-    ln -fs /usr/share/emacs/site-lisp/${PACKAGE}/$i
-done
+if [ ${FLAVOR} != emacs ]; then
+    for i in $FILES $sourceonly_all; do
+        ln -fs /usr/share/emacs/site-lisp/${PACKAGE}/$i
+    done
+fi
 
 # Prepare the flavour specific autoload file
 if [ ${PACKAGE} = emacs-goodies-el ]; then


Reply to: