annotate nt/site.def @ 5142:f965e31a35f0

reduce lcrecord headers to 2 words, rename printing_unreadable_object -------------------- ChangeLog entries follow: -------------------- man/ChangeLog addition: 2010-03-13 Ben Wing <ben@xemacs.org> * internals/internals.texi (Working with Lisp Objects): * internals/internals.texi (Writing Macros): * internals/internals.texi (lrecords): More rewriting to correspond with changes from *LRECORD* to *LISP_OBJECT*. modules/ChangeLog addition: 2010-03-13 Ben Wing <ben@xemacs.org> * postgresql/postgresql.c (print_pgconn): * postgresql/postgresql.c (print_pgresult): printing_unreadable_object -> printing_unreadable_object_fmt. 2010-03-13 Ben Wing <ben@xemacs.org> * ldap/eldap.c (print_ldap): printing_unreadable_object -> printing_unreadable_object_fmt. src/ChangeLog addition: 2010-03-13 Ben Wing <ben@xemacs.org> * alloc.c (alloc_sized_lrecord_1): * alloc.c (alloc_sized_lrecord_array): * alloc.c (old_alloc_sized_lcrecord): * alloc.c (disksave_object_finalization_1): * alloc.c (mark_lcrecord_list): * alloc.c (alloc_managed_lcrecord): * alloc.c (free_managed_lcrecord): * alloc.c (tick_lcrecord_stats): * alloc.c (sweep_lcrecords_1): * buffer.c (print_buffer): * buffer.c (DEFVAR_BUFFER_LOCAL_1): * casetab.c: * casetab.c (print_case_table): * console.c (print_console): * console.c (DEFVAR_CONSOLE_LOCAL_1): * data.c (print_weak_list): * data.c (print_weak_box): * data.c (print_ephemeron): * data.c (ephemeron_equal): * database.c (print_database): * database.c (finalize_database): * device-msw.c (sync_printer_with_devmode): * device-msw.c (print_devmode): * device-msw.c (finalize_devmode): * device.c: * device.c (print_device): * elhash.c: * elhash.c (print_hash_table): * eval.c (print_subr): * eval.c (print_multiple_value): * event-stream.c (event_stream_resignal_wakeup): * events.c (clear_event_resource): * events.c (zero_event): * events.c (print_event): * extents.c: * extents.c (print_extent): * file-coding.c (print_coding_system): * font-mgr.c: * font-mgr.c (Ffc_init): * frame.c: * frame.c (print_frame): * gc.c: * gc.c (GC_CHECK_NOT_FREE): * glyphs.c: * glyphs.c (print_image_instance): * glyphs.c (print_glyph): * gui.c (print_gui_item): * gui.c (copy_gui_item): * keymap.c (print_keymap): * keymap.c (MARKED_SLOT): * lisp.h: * lisp.h (struct Lisp_String): * lisp.h (DEFUN): * lisp.h (DEFUN_NORETURN): * lrecord.h: * lrecord.h (NORMAL_LISP_OBJECT_UID): * lrecord.h (struct lrecord_header): * lrecord.h (set_lheader_implementation): * lrecord.h (struct old_lcrecord_header): * lrecord.h (struct free_lcrecord_header): * marker.c (print_marker): * mule-charset.c: * mule-charset.c (print_charset): * objects.c (print_color_instance): * objects.c (print_font_instance): * objects.c (finalize_font_instance): * print.c (print_cons): * print.c (printing_unreadable_object_fmt): * print.c (printing_unreadable_lisp_object): * print.c (external_object_printer): * print.c (internal_object_printer): * print.c (debug_p4): * print.c (ext_print_begin): * process.c (print_process): * rangetab.c (print_range_table): * rangetab.c (range_table_equal): * scrollbar.c (free_scrollbar_instance): * specifier.c (print_specifier): * specifier.c (finalize_specifier): * symbols.c (guts_of_unbound_marker): * symeval.h: * symeval.h (DEFVAR_SYMVAL_FWD): * tooltalk.c: * tooltalk.c (print_tooltalk_message): * tooltalk.c (print_tooltalk_pattern): * ui-gtk.c (ffi_object_printer): * ui-gtk.c (emacs_gtk_object_printer): * ui-gtk.c (emacs_gtk_boxed_printer): * window.c (print_window): * window.c (free_window_mirror): * window.c (debug_print_window): * xemacs.def.in.in: (1) printing_unreadable_object -> printing_unreadable_object_fmt. (2) printing_unreadable_lcrecord -> printing_unreadable_lisp_object and fix up so it no longer requires an lcrecord. These previous changes eliminate most of the remaining places where the terms `lcrecord' and `lrecord' occurred outside of specialized code. (3) Fairly major change: Reduce the number of words in an lcrecord from 3 to 2. The third word consisted of a uid that duplicated the lrecord uid, and a single free bit, which was moved into the lrecord structure. This reduces the size of the `uid' slot from 21 bits to 20 bits. Arguably this isn't enough -- we could easily have more than 1,000,000 or so objects created in a session. The answer is (a) It doesn't really matter if we overflow the uid field because it's only used for debugging, to identify an object uniquely (or pretty much so). (b) If we cared about it overflowing and wanted to reduce this, we could make it so that cons, string, float and certain other frob-block types that never print out the uid simply don't store a uid in them and don't increment the lrecord_uid_counter. (4) In conjunction with (3), create new macro NORMAL_LISP_OBJECT_UID() and use it to abstract out the differences between NEWGC and old-GC in accessing the `uid' value from a "normal Lisp Object pointer". (5) In events.c, use zero_nonsized_lisp_object() in place of custom- written equivalent. In font-mgr.c use external_object_printer() in place of custom-written equivalents.
author Ben Wing <ben@xemacs.org>
date Sat, 13 Mar 2010 05:38:08 -0600
parents 43dd3413c7c7
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
155
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
1 XCOMM site: $XConsortium: site.def /main/revisionist/3 1996/10/15 09:31:04 swick $
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
2
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
3 /***************************************************************************
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
4 * *
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
5 * SITE-SPECIFIC DEFINITIONS *
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
6 * *
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
7 * This file contains two halves, one included before the vendor-specific *
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
8 * configuration file (.cf file), and one included after the .cf file. *
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
9 * The before-half should be protected by #ifdef BeforeVendorCF, and the *
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
10 * after-half should be protected by #ifdef AfterVendorCF. *
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
11 * *
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
12 * The before-half should only set things that the .cf file depends on. *
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
13 * For the .cf files shipped in this release, the main variables in this *
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
14 * category are HasGcc, HasGcc2, HasCplusplus, OSMajorVersion, *
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
15 * OSMinorVersion, and OSTeenyVersion. *
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
16 * *
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
17 * The after-half should contain all other definitions. For example, *
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
18 * place your ProjectRoot definition here. *
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
19 * *
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
20 * OS Major and Minor version numbers should be changed directly in the *
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
21 * .cf file, not overridden in site.def. *
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
22 * *
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
23 ***************************************************************************/
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
24
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
25 /* if you want host-specific customization, this is one way to do it */
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
26 /*
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
27 #ifndef SiteIConfigFiles
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
28 #define SiteIConfigFiles $(IRULESRC)/host.def
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
29 #define LocalConfigFiles host.def
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
30 #endif
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
31 */
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
32
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
33
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
34 #ifdef BeforeVendorCF
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
35
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
36 /* #include <host.def> */
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
37
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
38 /* On systems where cpp doesn't expand correctly macros in include directives
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
39 * the two following macros need to be defined directly (where "X11" is
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
40 * really whatever the TopLevelProject macro is defined to be).
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
41 */
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
42 # ifndef ProjectRulesFile
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
43 # define ProjectRulesFile <X11.rules>
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
44 # endif
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
45 # ifndef ProjectTmplFile
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
46 # define ProjectTmplFile <X11.tmpl>
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
47 # endif
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
48
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
49 /*
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
50 #ifndef HasGcc2
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
51 #define HasGcc2 YES
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
52 #endif
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
53 */
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
54
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
55 #endif /* BeforeVendorCF */
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
56
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
57 #ifdef AfterVendorCF
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
58
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
59 #define ProjectRoot f:/utils/X11R6
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
60
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
61 /* Only set HasXdmAuth to YES if you have a Wraphelp.c file. */
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
62 /* #define HasXdmAuth YES */
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
63
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
64 /* #define PreIncDir /usr/local/lib/gcc-lib/sparc-sun-solaris2.4/2.7.2/include */
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
65
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
66 /*
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
67 #if defined(SunArchitecture) && defined(SparcArchitecture)
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
68 #define HasCodeCenter YES
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
69 #ifndef SVR4Architecture
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
70 #define HasTestCenter YES
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
71 #endif
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
72 #endif
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
73 */
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
74
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
75 /*
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
76 #ifdef __hp9000s800
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
77 #define HasCodeCenter YES
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
78 #endif
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
79 */
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
80
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
81 /*
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
82 #if defined(SunArchitecture) && defined(SparcArchitecture) && !defined(SVR4Architecture)
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
83 #define HasPurify YES
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
84 #endif
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
85 */
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
86
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
87 /*
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
88 #define HasSentinel YES
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
89 */
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
90
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
91 /*
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
92 #undef DefaultUserPath
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
93 #define DefaultUserPath /bin:/usr/bin:$(BINDIR):/usr/ucb:/usr/local/bin
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
94 */
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
95
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
96
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
97 /* You do NOT need SetUID if you only run the server under xdm */
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
98 /* You MAY need SetUID if users run the server by hand or under xinit */
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
99 /* Consult your system administrator before making the X server setuid */
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
100 /*
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
101 #if defined(SunArchitecture) && OSMajorVersion > 4
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
102 #define InstallXserverSetUID YES
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
103 #endif
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
104 */
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
105
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
106 /* You do NOT need SetUID if you only run the server under xdm */
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
107 /* You MAY need SetUID if users run the server by hand or under xinit */
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
108 /* Consult your system administrator before making the X server setuid */
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
109 /*
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
110 #ifdef XFree86Version
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
111 #define InstallXserverSetUID YES
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
112 #endif
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
113 */
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
114
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
115 #ifndef XnestServer
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
116 #undef BuildServer
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
117 #define BuildServer YES
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
118 #define XnestServer YES
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
119 #endif
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
120
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
121 /* #include <host.def> */
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
122
43dd3413c7c7 Import from CVS: tag r20-3b4
cvs
parents:
diff changeset
123 #endif /* AfterVendorCF */