[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Building emacs with and without X -- packaging question.
From: |
Rob Browning |
Subject: |
Re: Building emacs with and without X -- packaging question. |
Date: |
Sat, 14 Sep 2002 16:16:13 -0500 |
User-agent: |
Gnus/5.090006 (Oort Gnus v0.06) Emacs/21.2 (i386-pc-linux-gnu) |
Richard Stallman <address@hidden> writes:
> Sure I can try. I presume you're talking about this diff:
>
> -(put 'frames 'custom-loads '( "desktop" "ediff-wind" "faces" "frame"
> "imenu" "menu-bar" "rsz-mini" "scroll-bar" "two-column"))
> +(put 'frames 'custom-loads '( "desktop" "ediff-wind" "faces" "frame"
> "imenu" "menu-bar" "rsz-mini" "two-column"))
>
> That one and the other one, both.
>
> Is this one related, or likely something else?
>
> -(custom-put-if-not 'gnus-article-x-face-command 'custom-version "21.1")
> -(custom-put-if-not 'gnus-article-x-face-command 'standard-value t)
>
> There is no way of knowing a priori whether they are related.
I finally had time to work on this, and I think I've tracked it down.
In cus-dep.el we have:
(let ((expr (read (current-buffer))))
(condition-case nil
(progn
(eval expr)
(put (nth 1 expr) 'custom-autoloaded is-autoloaded)
(put (nth 1 expr) 'custom-where name))
(error nil))))
Note that the condition-case ignores errors. However, if you rewrite
the above to actually catch the signalled-condition data and print it
via message, you will find that when compiling --with-x=no, there's an
error while handling both the scroll-bar-mode and
gnus-article-x-face-command defcustoms. In the scroll-bar-mode case
this appears to be because set-scroll-bar-mode-1 is undefined, even
though it's used as the :set value in the relevant defcustom:
(defcustom scroll-bar-mode
(if (eq system-type 'windows-nt) 'right 'left)
"*Specify whether to have vertical scroll bars, and on which side.
Possible values are nil (no scroll bars), `left' (scroll bars on left)
and `right' (scroll bars on right).
To set this variable in a Lisp program, use `set-scroll-bar-mode'
to make it take real effect.
Setting the variable with a customization buffer also takes effect."
:type '(choice (const :tag "none (nil)")
(const left)
(const right))
:group 'frames
:set 'set-scroll-bar-mode-1)
The actual condition-case signalled-condition data for this error is
(void-function set-scroll-bar-mode-1), and removing the :set line from
the defcustom fixes the problem, at least to the extent that the
scroll-bar related diff in cus-dep.el goes away. For
gnus-article-x-face-command, the condition-case signalled-condition
data is (void-variable gnus-article-compface-xbm).
If my analysis is right, is this something that should be fixed, and
if so, what would be the right way to fix it?
Thanks
--
Rob Browning
rlb @defaultvalue.org, @linuxdevel.com, and @debian.org
Previously @cs.utexas.edu
GPG=1C58 8B2C FB5E 3F64 EA5C 64AE 78FE E5FE F0CB A0AD
- Re: Building emacs with and without X -- packaging question.,
Rob Browning <=