X-Git-Url: http://git.chise.org/gitweb/?p=chise%2Fxemacs-chise.git.1;a=blobdiff_plain;f=src%2Femacs.c;h=c3fc9fc7db31f4d3475817bdc9d42986badb0fb1;hp=d648161c457fc1a14e022f256275dab5fda4af0e;hb=113b194be934327de99a168d809271db252c07c4;hpb=f3ec20f455f3f1212d2c5ee4cadc984330da9c38 diff --git a/src/emacs.c b/src/emacs.c index d648161..c3fc9fc 100644 --- a/src/emacs.c +++ b/src/emacs.c @@ -73,6 +73,10 @@ Boston, MA 02111-1307, USA. */ /* For PATH_EXEC */ #include +#ifdef HEAP_IN_DATA +void report_sheap_usage (int die_if_pure_storage_exceeded); +#endif + #if !defined SYSTEM_MALLOC && !defined DOUG_LEA_MALLOC extern void *(*__malloc_hook)(size_t); extern void *(*__realloc_hook)(void *, size_t); @@ -111,6 +115,7 @@ Lisp_Object Vsystem_configuration_options; /* Version numbers and strings */ Lisp_Object Vemacs_major_version; Lisp_Object Vemacs_minor_version; +Lisp_Object Vemacs_patch_level; Lisp_Object Vemacs_beta_version; Lisp_Object Vxemacs_codename; #ifdef INFODOCK @@ -224,6 +229,8 @@ static void sort_args (int argc, char **argv); Lisp_Object Qkill_emacs_hook; Lisp_Object Qsave_buffers_kill_emacs; +extern Lisp_Object Vlisp_EXEC_SUFFIXES; + /* Signal code for the fatal signal that was received */ static int fatal_error_code; @@ -968,6 +975,7 @@ main_1 (int argc, char **argv, char **envp, int restart) syms_of_rangetab (); syms_of_redisplay (); syms_of_search (); + syms_of_select (); syms_of_signal (); syms_of_sound (); syms_of_specifier (); @@ -1022,6 +1030,9 @@ main_1 (int argc, char **argv, char **envp, int restart) #ifdef HAVE_MSW_C_DIRED syms_of_dired_mswindows (); #endif +#ifdef WINDOWSNT + syms_of_ntproc (); +#endif #endif /* HAVE_MS_WINDOWS */ #ifdef MULE @@ -1030,7 +1041,7 @@ main_1 (int argc, char **argv, char **envp, int restart) syms_of_mule_charset (); #endif #ifdef FILE_CODING - syms_of_mule_coding (); + syms_of_file_coding (); #endif #ifdef MULE #ifdef HAVE_WNN @@ -1102,6 +1113,7 @@ main_1 (int argc, char **argv, char **envp, int restart) console_type_create_device_x (); console_type_create_frame_x (); console_type_create_glyphs_x (); + console_type_create_select_x (); #ifdef HAVE_MENUBARS console_type_create_menubar_x (); #endif @@ -1125,6 +1137,7 @@ main_1 (int argc, char **argv, char **envp, int restart) console_type_create_objects_mswindows (); console_type_create_redisplay_mswindows (); console_type_create_glyphs_mswindows (); + console_type_create_select_mswindows (); # ifdef HAVE_SCROLLBARS console_type_create_scrollbar_mswindows (); # endif @@ -1204,7 +1217,7 @@ main_1 (int argc, char **argv, char **envp, int restart) lstream_type_create (); #ifdef FILE_CODING - lstream_type_create_mule_coding (); + lstream_type_create_file_coding (); #endif #if defined (HAVE_MS_WINDOWS) && !defined(HAVE_MSG_SELECT) lstream_type_create_mswindows_selectable (); @@ -1275,6 +1288,7 @@ main_1 (int argc, char **argv, char **envp, int restart) vars_of_bytecode (); vars_of_callint (); vars_of_callproc (); + vars_of_chartab (); vars_of_cmdloop (); vars_of_cmds (); vars_of_console (); @@ -1346,6 +1360,9 @@ main_1 (int argc, char **argv, char **envp, int restart) #ifdef HAVE_SHLIB vars_of_module (); #endif +#ifdef WINDOWSNT + vars_of_ntproc (); +#endif vars_of_objects (); vars_of_print (); @@ -1368,6 +1385,7 @@ main_1 (int argc, char **argv, char **envp, int restart) vars_of_scrollbar (); #endif vars_of_search (); + vars_of_select (); vars_of_sound (); vars_of_specifier (); vars_of_symbols (); @@ -1427,10 +1445,11 @@ main_1 (int argc, char **argv, char **envp, int restart) #ifdef MULE vars_of_mule (); + vars_of_mule_ccl (); vars_of_mule_charset (); #endif #ifdef FILE_CODING - vars_of_mule_coding (); + vars_of_file_coding (); #endif #ifdef MULE #ifdef HAVE_WNN @@ -1502,7 +1521,7 @@ main_1 (int argc, char **argv, char **envp, int restart) complex_vars_of_mule_charset (); #endif #if defined(FILE_CODING) - complex_vars_of_mule_coding (); + complex_vars_of_file_coding (); #endif /* This calls allocate_glyph(), which creates specifiers @@ -1676,7 +1695,8 @@ main_1 (int argc, char **argv, char **envp, int restart) else { Vinvocation_path = decode_env_path ("PATH", NULL); - locate_file (Vinvocation_path, Vinvocation_name, EXEC_SUFFIXES, + locate_file (Vinvocation_path, Vinvocation_name, + Vlisp_EXEC_SUFFIXES, &Vinvocation_directory, X_OK); } @@ -2014,7 +2034,7 @@ Do not call this. It will reinitialize your XEmacs. You'll be sorry. total_len += wampum_all_len[ac]; } DO_REALLOC (run_temacs_args, run_temacs_args_size, total_len, char); - DO_REALLOC (run_temacs_argv, run_temacs_argv_size, nargs+1, char *); + DO_REALLOC (run_temacs_argv, run_temacs_argv_size, nargs+2, char *); memcpy (run_temacs_args, wampum, namesize); run_temacs_argv [0] = run_temacs_args; @@ -2031,13 +2051,9 @@ Do not call this. It will reinitialize your XEmacs. You'll be sorry. unbind_to (0, Qnil); /* this closes loadup.el */ purify_flag = 0; run_temacs_argc = nargs + 1; -#if 0 -#ifdef REPORT_PURE_USAGE - report_pure_usage (1, 0); -#else - report_pure_usage (0, 0); +#ifdef HEAP_IN_DATA + report_sheap_usage (0); #endif -#endif /* 0 */ LONGJMP (run_temacs_catch, 1); return Qnil; /* not reached; warning suppression */ } @@ -2446,10 +2462,8 @@ and announce itself normally when it is run. opurify = purify_flag; purify_flag = 0; -#ifdef DEBUG_XEMACS - report_pure_usage (1, 1); -#else - report_pure_usage (0, 1); +#ifdef HEAP_IN_DATA + report_sheap_usage (1); #endif fflush (stderr); @@ -2788,7 +2802,20 @@ Warning: this variable did not exist in Emacs versions earlier than: */ ); Vemacs_minor_version = make_int (EMACS_MINOR_VERSION); - DEFVAR_LISP ("emacs-beta-version", &Vemacs_beta_version /* + DEFVAR_LISP ("emacs-patch-level", &Vemacs_patch_level /* +The patch level of this version of Emacs, as an integer. +The value is non-nil if this version of XEmacs is part of a series of +stable XEmacsen, but has bug fixes applied. +Warning: this variable does not exist in FSF Emacs or in XEmacs versions +earlier than 21.1.1 +*/ ); +#ifdef EMACS_PATCH_LEVEL + Vemacs_patch_level = make_int (EMACS_PATCH_LEVEL); +#else + Vemacs_patch_level = Qnil; +#endif + + DEFVAR_LISP ("emacs-beta-version", &Vemacs_beta_version /* Beta number of this version of Emacs, as an integer. The value is nil if this is an officially released version of XEmacs. Warning: this variable does not exist in FSF Emacs or in XEmacs versions @@ -3131,6 +3158,7 @@ The configured initial path for info documentation. * cores on us when re-started from the dumped executable. * This will have to go for 21.1 -- OG. */ +void __sti__iflPNGFile_c___(void); void __sti__iflPNGFile_c___() { }