annotate src/m/sun3.h @ 4539:061e030e3270

Fix some bugs in load-history construction, built-in symbol file names. lib-src/ChangeLog addition: 2008-12-27 Aidan Kehoe <kehoea@parhasard.net> * make-docfile.c (main): Allow more than one -d argument, followed by a directory to change to. (put_filename): Don't strip directory information; with previous change, allows retrieval of Lisp function and variable origin files from #'built-in-symbol-file relative to lisp-directory. (scan_lisp_file): Don't add an extraneous newline after the file name, put_filename has added the newline already. lisp/ChangeLog addition: 2008-12-27 Aidan Kehoe <kehoea@parhasard.net> * loadup.el (load-history): Add the contents of current-load-list to load-history before clearing it. Move the variable declarations earlier in the file to a format understood by make-docfile.c. * custom.el (custom-declare-variable): Add the variable's symbol to the current file's load history entry correctly, don't use a cons. Eliminate a comment that we don't need to worry about, we don't need to check the `initialized' C variable in Lisp. * bytecomp.el (byte-compile-output-file-form): Merge Andreas Schwab's pre-GPLv3 GNU change of 19970831 here; treat #'custom-declare-variable correctly, generating the docstrings in a format understood by make-docfile.c. * loadhist.el (symbol-file): Correct behaviour for checking autoloaded macros and functions when supplied with a TYPE argument. Accept fully-qualified paths from #'built-in-symbol-file; if a path is not fully-qualified, return it relative to lisp-directory if the filename corresponds to a Lisp file, and relative to (concat source-directory "/src/") otherwise. * make-docfile.el (preloaded-file-list): Rationalise some let bindings a little. Use the "-d" argument to make-docfile.c to supply Lisp paths relative to lisp-directory, not absolutely. Add in loadup.el explicitly to the list of files to be processed by make-docfile.c--it doesn't make sense to add it to preloaded-file-list, since that is used for purposes of byte-compilation too. src/ChangeLog addition: 2008-12-27 Aidan Kehoe <kehoea@parhasard.net> * doc.c (Fbuilt_in_symbol_file): Return a subr's filename immediately if we've found it. Check for compiled function and compiled macro docstrings in DOC too, and return them if they exist. The branch of the if statement focused on functions may have executed, but we may still want to check variable bindings; an else clause isn't appropriate.
author Aidan Kehoe <kehoea@parhasard.net>
date Sat, 27 Dec 2008 14:05:50 +0000
parents 3ecd8885ac67
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
428
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
1 /* Synched up with: FSF 19.31. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
2
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
3 /* machine description file for Sun 68000's OPERATING SYSTEM version 3
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
4 (for either 68000 or 68020 systems). */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
5
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
6 #include "sun2.h"
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
7 #undef sun2
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
8 #ifndef sun3
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
9 #define sun3
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
10 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
11
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
12 /* The following line tells the configuration script what sort of
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
13 operating system this machine is likely to run.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
14 USUAL-OPSYS="note"
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
15
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
16 NOTE-START
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
17 Sun 1, 2 and 3 (-machine=sun1, -machine=sun2, -machine=sun3;
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
18 -opsystem=bsd4-2 or -opsystem=sunos4)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
19
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
20 Whether you should use sun1, sun2 or sun3 depends on the
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
21 VERSION OF THE OPERATING SYSTEM
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
22 you have. There are three machine types for different versions of
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
23 SunOS. All are derived from Berkeley 4.2, meaning that you should
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
24 use -opsystem=bsd4-2. Emacs 17 has run on all of them. You will
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
25 need to use sun3 on Sun 2's running SunOS release 3.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
26
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
27 For SunOS release 4 on a Sun 3, use -machine=sun3 and
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
28 -opsystem=sunos4. See the file share-lib/SUNBUG for how to solve
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
29 problems caused by bugs in the "export" version of SunOS 4.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
30 NOTE-END */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
31
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
32 /* Say that the text segment of a.out includes the header;
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
33 the header actually occupies the first few bytes of the text segment
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
34 and is counted in hdr.a_text. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
35
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
36 #define A_TEXT_OFFSET(HDR) sizeof (HDR)
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
37
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
38 /* This is the offset of the executable's text, from the start of the file. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
39
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
40 #define A_TEXT_SEEK(HDR) (N_TXTOFF (hdr) + sizeof (hdr))
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
41
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
42 /* In case we are using floating point, work together with crt0.c. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
43
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
44 #ifndef __GNUC__
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
45 #define C_SWITCH_MACHINE "-fsoft"
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
46 #endif
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
47
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
48 /* This line is needed if you are linking with X windows
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
49 and the library xlib was compiled to use the 68881.
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
50 For maximum cleanliness, don't edit this file;
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
51 instead, insert this line in config.h. */
3ecd8885ac67 Import from CVS: tag r21-2-22
cvs
parents:
diff changeset
52 /* #define START_FILES crt0.o /usr/lib/Mcrt1.o */