Mercurial > hg > xemacs-beta
annotate src/s/cygwin64.h @ 5923:61d7d7bcbe76 cygwin
merged heads after pull -u
author | Henry Thompson <ht@markup.co.uk> |
---|---|
date | Thu, 05 Feb 2015 17:19:05 +0000 |
parents | 0f2338afbabf |
children |
rev | line source |
---|---|
5920
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
1 /* system description file for cygwin32. |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
2 Copyright (C) 1993, 1994, 1995 Free Software Foundation, Inc. |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
3 Copyright (C) 2001 Ben Wing. |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
4 |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
5 This file is part of XEmacs. |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
6 |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
7 XEmacs is free software: you can redistribute it and/or modify it |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
8 under the terms of the GNU General Public License as published by the |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
9 Free Software Foundation, either version 3 of the License, or (at your |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
10 option) any later version. |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
11 |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
12 XEmacs is distributed in the hope that it will be useful, but WITHOUT |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
13 ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
14 FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
15 for more details. |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
16 |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
17 You should have received a copy of the GNU General Public License |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
18 along with XEmacs. If not, see <http://www.gnu.org/licenses/>. */ |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
19 |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
20 /* Building under cygwin |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
21 * |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
22 * The approach I have taken with this port is to use primarily the |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
23 * UNIX code base adding stuff that is MS-Windows specific. This works |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
24 * quite well, and is in keeping with my perception of the cygwin |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
25 * philosophy. Note that if you make changes to this file you do NOT |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
26 * want to define WIN32_NATIVE (formerly "WINDOWSNT"), I repeat - do |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
27 * not define this, it will break everything horribly. What does get |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
28 * defined is HAVE_MS_WINDOWS, but this is done by configure and only |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
29 * applies to the window system. |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
30 * |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
31 * When building make sure your HOME path is unix style - i.e. without |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
32 * a drive letter. |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
33 * |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
34 * once you have done this, configure and make. |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
35 * |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
36 * windows '95 - I haven't tested this under '95, it will probably |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
37 * build but I know there are some limitations with cygwin under 95 so |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
38 * YMMV. I build with NT4 SP3. |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
39 * |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
40 * Andy Piper <andy@xemacs.org> 8/1/98 |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
41 * http://www.xemacs.freeserve.co.uk/ */ |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
42 |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
43 #include "win32-common.h" |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
44 |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
45 /* Identify ourselves */ |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
46 #define CYGWIN |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
47 |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
48 /* We are using Cygwin-style headers in /usr/include, also used by MinGW */ |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
49 #define CYGWIN_HEADERS |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
50 |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
51 /* cheesy way to determine cygwin version */ |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
52 #ifndef NOT_C_CODE |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
53 # include <signal.h> |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
54 # include <cygwin/version.h> |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
55 |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
56 /* Still left out of 1.1! */ |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
57 double logb (double); |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
58 int killpg (int pgrp, int sig); |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
59 |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
60 #endif |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
61 |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
62 #ifndef ORDINARY_LINK |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
63 #define ORDINARY_LINK |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
64 #endif |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
65 |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
66 #if __GNUC__ >= 3 |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
67 #define C_SWITCH_SYSTEM -fno-caller-saves |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
68 #else |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
69 #define C_SWITCH_SYSTEM -fno-caller-saves -fvtable-thunks |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
70 #endif |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
71 |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
72 #define LIBS_SYSTEM -lwinmm |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
73 #define WIN32_LEAN_AND_MEAN |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
74 |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
75 #define TEXT_START -1 |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
76 #define HEAP_IN_DATA |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
77 #define NO_LIM_DATA |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
78 |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
79 #define BROKEN_SIGIO |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
80 |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
81 #define CYGWIN_BROKEN_SIGNALS |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
82 |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
83 #define strnicmp strncasecmp |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
84 |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
85 #undef MAIL_USE_SYSTEM_LOCK |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
86 |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
87 /* SYSTEM_TYPE should indicate the kind of system you are using. |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
88 It sets the Lisp variable system-type. */ |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
89 |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
90 #define SYSTEM_TYPE "cygwin32" |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
91 |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
92 /* Cygwin bogusly forgets to copy mmap()ed regions into the child when |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
93 a fork is done; thus, any reference to anything in mmap()ed space |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
94 (under PDUMP, in particular, this bites, since all data loaded from |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
95 PDUMP is normally done using mmap()) will cause an immediate segfault. */ |
0f2338afbabf
Minimum necessary to get started:
Henry Thompson <ht@markup.co.uk>
parents:
diff
changeset
|
96 #undef HAVE_MMAP |