428
|
1 /* Synched up with: FSF 19.31. */
|
|
2
|
|
3 /* s/ file for netbsd system. */
|
|
4
|
|
5 /* Get most of the stuff from bsd4.3 */
|
|
6 #include "bsd4-3.h"
|
|
7
|
|
8 #undef BSD
|
|
9
|
|
10 #ifndef NOT_C_CODE
|
|
11 #include <sys/param.h>
|
|
12 #include <sys/exec.h>
|
|
13 #endif /* C_CODE */
|
|
14
|
|
15 /* For mem-limits.h. */
|
|
16 #define BSD4_2
|
|
17
|
|
18 #undef KERNEL_FILE
|
|
19 #undef LDAV_SYMBOL
|
|
20
|
|
21 #define PENDING_OUTPUT_COUNT(FILE) ((FILE)->_p - (FILE)->_bf._base)
|
|
22
|
|
23 #define A_TEXT_OFFSET(x) (sizeof (struct exec))
|
|
24 #define A_TEXT_SEEK(hdr) (N_TXTOFF(hdr) + A_TEXT_OFFSET(hdr))
|
|
25
|
|
26 #define LIBS_DEBUG
|
|
27 /* -lutil is not needed for NetBSD >0.9. */
|
|
28 /* #define LIBS_SYSTEM -lutil */
|
|
29 /* XEmacs change */
|
|
30 #define LIBS_TERMCAP "-ltermcap"
|
|
31
|
|
32 #define NEED_ERRNO
|
|
33
|
|
34 #if 0 /* mrb */
|
|
35 #ifndef NO_SHARED_LIBS
|
|
36 /* These definitions should work for either dynamic or static linking,
|
|
37 whichever is the default for `cc -nostdlib'. */
|
|
38 /* but they probably don't, and life's too short - jrg@doc.ic.ac.uk
|
|
39 ask for no shared libs if you have 0.9 */
|
|
40 /* mrb -- ORDINARY_LINK works just fine... */
|
|
41 #define LD_SWITCH_SYSTEM "-e start"
|
|
42 #define START_FILES "pre-crt0.o /usr/lib/crt0.o"
|
|
43 #define RUN_TIME_REMAP
|
|
44 #else
|
|
45 #define START_FILES "crt0.o"
|
|
46
|
|
47 #endif /* not NO_SHARED_LIBS */
|
|
48 #endif /* 0 - mrb */
|
|
49
|
|
50 #define HAVE_TEXT_START /* No need to define `start_of_text'. */
|
|
51 #define ORDINARY_LINK
|
452
|
52
|
|
53 /* As of this writing (Netbsd 1.5 was just released), Netbsd is
|
|
54 converting from a.out to elf - x86 and Sparc are using ELF.
|
|
55 But we're clever and let the compiler tell us which one to use. */
|
|
56 #ifdef __ELF__
|
|
57 #define UNEXEC "unexelf.o"
|
|
58 #else
|
428
|
59 #define UNEXEC "unexfreebsd.o" /* ironic, considering history of unexfreebsd */
|
452
|
60 #endif
|
428
|
61
|
|
62 #if 0
|
|
63 /* Try to make this work for both 0.9 and >0.9. */
|
|
64 #define N_PAGSIZ(x) __LDPGSZ
|
|
65 #define N_BSSADDR(x) (N_ALIGN(x, N_DATADDR(x)+x.a_data))
|
|
66 /* #define N_TRELOFF(x) N_RELOFF(x) */
|
|
67 /* the 1.0 way.. */
|
|
68 #endif /* 0 */
|
|
69
|
|
70 #define N_RELOFF(x) N_TRELOFF(x)
|
|
71
|
|
72 #define NO_MATHERR
|
|
73
|
|
74 #define AMPERSAND_FULL_NAME
|