diff options
| author | Glenn Morris | 2007-03-27 02:36:08 +0000 |
|---|---|---|
| committer | Glenn Morris | 2007-03-27 02:36:08 +0000 |
| commit | e3fbc89b6a60257eba4270a6beed68a95b23cb3e (patch) | |
| tree | 43623bd8a9e0607b3d5619d4c5dd34768f44c812 /src/m | |
| parent | 084c41ca0af70ac085393b87b71f188bc0f53473 (diff) | |
| download | emacs-e3fbc89b6a60257eba4270a6beed68a95b23cb3e.tar.gz emacs-e3fbc89b6a60257eba4270a6beed68a95b23cb3e.zip | |
Restore HP-UX support (removed 2007-01-29).
Diffstat (limited to 'src/m')
| -rw-r--r-- | src/m/hp800.h | 77 |
1 files changed, 74 insertions, 3 deletions
diff --git a/src/m/hp800.h b/src/m/hp800.h index eed53183569..f48f4c8152e 100644 --- a/src/m/hp800.h +++ b/src/m/hp800.h | |||
| @@ -69,10 +69,9 @@ Boston, MA 02110-1301, USA. */ | |||
| 69 | #define XSET(var, type, ptr) \ | 69 | #define XSET(var, type, ptr) \ |
| 70 | ((var) = ((int)(type) << VALBITS) + (((unsigned) (ptr) << BITS_PER_INT-VALBITS) >> BITS_PER_INT-VALBITS)) | 70 | ((var) = ((int)(type) << VALBITS) + (((unsigned) (ptr) << BITS_PER_INT-VALBITS) >> BITS_PER_INT-VALBITS)) |
| 71 | 71 | ||
| 72 | /* Definitions for GNU/Linux. (HP/UX is unsupported because of the | 72 | /* Common definitions for HPUX and GNU/Linux. */ |
| 73 | removal of unexhp9k800.c due to lack of legal papers.) */ | ||
| 74 | 73 | ||
| 75 | #ifdef GNU_LINUX | 74 | #if defined (__hpux) || defined (GNU_LINUX) |
| 76 | /* Now define a symbol for the cpu type, if your compiler | 75 | /* Now define a symbol for the cpu type, if your compiler |
| 77 | does not define it automatically: | 76 | does not define it automatically: |
| 78 | Ones defined so far include vax, m68000, ns16000, pyramid, | 77 | Ones defined so far include vax, m68000, ns16000, pyramid, |
| @@ -94,6 +93,12 @@ Boston, MA 02110-1301, USA. */ | |||
| 94 | 93 | ||
| 95 | #define NO_REMAP | 94 | #define NO_REMAP |
| 96 | 95 | ||
| 96 | #endif /* __hpux or GNU_LINUX */ | ||
| 97 | |||
| 98 | /* Stuff for just GNU/Linux. */ | ||
| 99 | |||
| 100 | #ifdef GNU_LINUX | ||
| 101 | |||
| 97 | /* Data type of load average, as read out of kmem. */ | 102 | /* Data type of load average, as read out of kmem. */ |
| 98 | 103 | ||
| 99 | #define LOAD_AVE_TYPE long | 104 | #define LOAD_AVE_TYPE long |
| @@ -104,6 +109,72 @@ Boston, MA 02110-1301, USA. */ | |||
| 104 | 109 | ||
| 105 | #endif /* GNU_LINUX */ | 110 | #endif /* GNU_LINUX */ |
| 106 | 111 | ||
| 112 | /* Stuff for just HPUX. */ | ||
| 113 | |||
| 114 | #ifdef __hpux | ||
| 115 | |||
| 116 | /* Define VIRT_ADDR_VARIES if the virtual addresses of | ||
| 117 | pure and impure space as loaded can vary, and even their | ||
| 118 | relative order cannot be relied on. | ||
| 119 | |||
| 120 | Otherwise Emacs assumes that text space precedes data space, | ||
| 121 | numerically. */ | ||
| 122 | |||
| 123 | #define VIRT_ADDR_VARIES | ||
| 124 | |||
| 125 | /* the data segment on this machine always starts at address 0x40000000. */ | ||
| 126 | |||
| 127 | #define DATA_SEG_BITS 0x40000000 | ||
| 128 | |||
| 129 | #define DATA_START 0x40000000 | ||
| 130 | #define TEXT_START 0x00000000 | ||
| 131 | |||
| 132 | /* This machine requires completely different unexec code | ||
| 133 | which lives in a separate file. Specify the file name. */ | ||
| 134 | |||
| 135 | #define UNEXEC unexhp9k800.o | ||
| 136 | |||
| 137 | #define LIBS_MACHINE | ||
| 138 | #define LIBS_DEBUG | ||
| 139 | |||
| 140 | /* Include the file bsdtty.h, since this machine has job control. */ | ||
| 141 | #define NEED_BSDTTY | ||
| 142 | |||
| 143 | /* Data type of load average, as read out of kmem. */ | ||
| 144 | |||
| 145 | #define LOAD_AVE_TYPE double | ||
| 146 | |||
| 147 | /* Convert that into an integer that is 100 for a load average of 1.0 */ | ||
| 148 | |||
| 149 | #define LOAD_AVE_CVT(x) ((int) (x * 100.0)) | ||
| 150 | |||
| 151 | /* The symbol in the kernel where the load average is found | ||
| 152 | is named _avenrun. At this time there are two major flavors | ||
| 153 | of hp-ux (there is the s800 and s300 (s200) flavors). The | ||
| 154 | differences are thusly moved to the corresponding machine description file. | ||
| 155 | */ | ||
| 156 | |||
| 157 | /* no underscore please */ | ||
| 158 | #define LDAV_SYMBOL "avenrun" | ||
| 159 | |||
| 160 | #if 0 /* Supposedly no longer true. */ | ||
| 161 | /* In hpux, for unknown reasons, S_IFLNK is defined even though | ||
| 162 | symbolic links do not exist. | ||
| 163 | Make sure our conditionals based on S_IFLNK are not confused. | ||
| 164 | |||
| 165 | Here we assume that stat.h is included before config.h | ||
| 166 | so that we can override it here. */ | ||
| 167 | |||
| 168 | #undef S_IFLNK | ||
| 169 | #endif | ||
| 170 | |||
| 171 | /* On USG systems these have different names. */ | ||
| 172 | |||
| 173 | #define index strchr | ||
| 174 | #define rindex strrchr | ||
| 175 | |||
| 176 | #endif /* __hpux */ | ||
| 177 | |||
| 107 | /* Systems with GCC don't need to lose. */ | 178 | /* Systems with GCC don't need to lose. */ |
| 108 | #ifdef __NetBSD__ | 179 | #ifdef __NetBSD__ |
| 109 | # ifdef __GNUC__ | 180 | # ifdef __GNUC__ |