view netinstall/state.h @ 4502:8748a3f7ceb4

Handle varalias chains, custom variables in #'user-variable-p. src/ChangeLog addition: 2008-08-23 Aidan Kehoe <kehoea@parhasard.net> * eval.c (Fuser_variable_p): Moved to symbols.c * symbols.c (Fcustom_variable_p): Moved here from custom.el. (user_variable_alias_check_fun): Mapper function used in `user-variable-p'. (Fuser_variable_p): Moved here from eval.c, to allow it to examine the variable alias chain. Expanded to check each entry in the variable alias chain for signs of being a user variable; documentation updated, noting the differences between GNU's behaviour and ours (ours is a little more sensible) (map_varalias_chain): New. Given a C function, call it at least once for each symbol in a symbol's varalias chain, signalling an error if there's a cycle, and returning immediately if the function returns something other than Qzero. (Fdefvaralias): Correct the use of the word "alias" in the docstring and in the argument name. Motivate this in a comment. Add support for a DOCSTRING argument, something GNU has too, and document this * gc.c (vars_of_gc): Start the docstring of `garbage-collection-messages' with an asterisk, to indicate that it's a user variable. lisp/ChangeLog addition: 2008-08-23 Aidan Kehoe <kehoea@parhasard.net> * custom.el: Move #'custom-variable-p to C, since it's now called from #'user-variable-p.
author Aidan Kehoe <kehoea@parhasard.net>
date Sat, 23 Aug 2008 16:38:51 +0200 (2008-08-23)
parents 42a8626b741e
children
line wrap: on
line source
/*
 * Copyright (c) 2000, Red Hat, Inc.
 *
 *     This program is free software; you can redistribute it and/or modify
 *     it under the terms of the GNU General Public License as published by
 *     the Free Software Foundation; either version 2 of the License, or
 *     (at your option) any later version.
 *
 *     A copy of the GNU General Public License can be found at
 *     http://www.gnu.org/
 *
 * Written by DJ Delorie <dj@cygnus.com>
 *
 */

/* The purpose of this file is to contain all the global variables
   that define the "state" of the install, that is, all the
   information that the user has provided so far.  These are set by
   the various dialogs and used by the various actions. */

extern int	source;

extern char *	local_dir;

extern char *	root_dir;
extern int	root_dir_default;
extern int	install_type;
extern int	root_scope;
extern int   root_menu;
extern int   root_desktop;

extern int   reg_c;
extern int   reg_cpp;
extern int   reg_java;
extern int   reg_elisp;
extern int   reg_txt;
extern int   reg_idl;
	
extern int	net_method;
extern char *	net_proxy_host;
extern int	net_proxy_port;

extern char *	net_user;
extern char *	net_passwd;
extern char *	net_proxy_user;
extern char *	net_proxy_passwd;

extern char *	mirror_site;
extern char *	other_url;

extern int	trust_level;
extern int	uninstall;

#define MIRROR_SITE (mirror_site ? mirror_site : other_url)