annotate src/s/aix4-2.h @ 111350:8027e412df98

Backport VC improvements from trunk. * vc/log-edit.el (log-edit-rewrite-fixes): New var. (log-edit-author): New dynamic var. (log-edit-changelog-ours-p, log-edit-insert-changelog-entries): Use it to return the author if different from committer. (log-edit-insert-changelog): Use them to add Author: and Fixes headers. * vc/vc-hooks.el (vc-default-mode-line-string): Doc fix. * vc/vc.el (vc-deduce-backend): New fun. Handle diff buffers. (vc-root-diff, vc-print-root-log, vc-log-incoming) (vc-log-outgoing): Use it. (vc-diff-internal): Set diff-vc-backend. * vc/diff-mode.el (diff-vc-backend): New var. * vc/vc.el (vc-diff-internal): Set `revert-buffer-function' buffer-locally to lambda that re-runs the vc diff command. (Bug#6447) * vc/log-view.el (log-view-mode-map): Bind revert-buffer. Make 'g' (AKA revert-buffer) rerun VC log, log-incoming and log-outgoing commands. * vc/vc.el (vc-log-internal-common): Add a new argument and use it to create a buffer local revert-buffer-function variable. (vc-print-log-internal, vc-log-incoming, vc-log-outgoing): Pass a revert-buffer-function lambda. Improve VC create/retrieve tag/branch. * vc.el (vc-create-tag): Do not read the directory name for VCs with repository revision granularity. Adjust the tag/branch prompt. Reset VC properties. (vc-retrieve-tag): Do not read the directory name for VCs with repository revision granularity. Reset VC properties. Add optional support for resetting VC properties. * vc-dispatcher.el (vc-resynch-window): Add new optional argument, call vc-file-clearprops when true. (vc-resynch-buffer): Add new optional argument, pass it down. (vc-resynch-buffers-in-directory): Likewise. Improve support for special markup in the VC commit message. * vc-mtn.el (vc-mtn-checkin): Support Author: and Date: markup. * vc-hg.el (vc-hg-checkin): Add support for Date:. * vc-git.el (vc-git-checkin): * vc-bzr.el (vc-bzr-checkin): Likewise. Add support for vc-log-incoming, improve vc-log-outgoing for Git. * vc-git.el (vc-git-log-view-mode): Fix font lock for incoming/outgoing logs. (vc-git-log-outgoing, vc-git-log-incoming): New functions. * vc-git.el (vc-git-log-outgoing): Use the same format as the short log. (vc-git-log-incoming): Likewise. Run "git fetch" before the log command Add bindings for vc-log-incoming and vc-log-outgoing. * vc-hooks.el (vc-prefix-map): Add bindings for vc-log-incoming and vc-log-outgoing. * vc-dir.el (vc-dir-menu-map): Add menu bindings for vc-log-incoming and vc-log-outgoing. Improve state updating for VC tag commands. * vc.el (vc-create-tag, vc-retrieve-tag): Call vc-resynch-buffer to update the state of all buffers in the directory. * vc-dir.el (vc-dir): Don't pop-up-windows. (Bug#6204) * vc.el (vc-checkin, vc-modify-change-comment): Adjust to new vc-start/finish-logentry. (vc-find-conflicted-file): New command. (vc-transfer-file): Adjust to new vc-checkin. (vc-next-action): Improve scoping. * vc-git.el (vc-git-checkin): Use log-edit-extract-headers. (vc-git-commits-coding-system): Rename from git-commits-coding-system. * vc-dispatcher.el (vc-log-edit): Shorten names for log-edit-show-files. * vc-bzr.el (vc-bzr-checkin): Use log-edit-extract-headers. (vc-bzr-conflicted-files): New function. * log-edit.el (log-edit-summary, log-edit-header) (log-edit-unknown-header): New faces. (log-edit-headers-alist): New var. (log-edit-header-contents-regexp): New const. (log-edit-match-to-eoh): New function. (log-edit-font-lock-keywords): Use them. (log-edit): Insert a "Summary:" header as default. (log-edit-mode): Mark font-lock rules as case-insensitive. (log-edit-done): Cleanup headers. (log-edit-extract-headers): New function to replace it. * vc-dispatcher.el (vc-finish-logentry): Don't mess so badly with the windows/frames. * vc-bzr.el (vc-bzr-shelve-apply): Don't use *vc-bzr-shelve*. * vc-dir.el (vc-dir-kill-line): New command. (vc-dir-mode-map): Bind it to C-k. (vc-dir-headers): Abbreviate the working dir. * vc-git.el (vc-git-revision-table): Include remote branches. New VC methods: vc-log-incoming and vc-log-outgoing. * vc.el (vc-print-log-setup-buttons, vc-log-internal-common) (vc-incoming-outgoing-internal, vc-log-incoming, vc-log-outgoing): New functions. (vc-print-log-internal): Just call vc-log-internal-common. (vc-log-view-type): New permanent local variable. * vc-hooks.el (vc-menu-map): Bind vc-log-incoming and vc-log-outgoing. * vc-bzr.el (vc-bzr-log-view-mode): Use vc-log-view-type instead of the dynamic bound vc-short-log. (vc-bzr-log-incoming, vc-bzr-log-outgoing): New functions. * vc-git.el (vc-git-log-outgoing): New function. (vc-git-log-view-mode): Use vc-log-view-type instead of the dynamic bound vc-short-log. * vc-hg.el (vc-hg-log-view-mode): Use vc-log-view-type instead of the dynamic bound vc-short-log. Highlight the tag. (vc-hg-log-incoming, vc-hg-log-outgoing): New functions. (vc-hg-outgoing, vc-hg-incoming, vc-hg-outgoing-mode): (vc-hg-incoming-mode): Remove. (vc-hg-extra-menu-map): Do not bind vc-hg-incoming and vc-hg-outgoing. Fix default-directory for vc-root-diff. * vc.el (vc-root-diff): Bind default-directory to the root directory for the diff command. * vc-hg.el (vc-hg-push, vc-hg-pull): Use `apply' when calling `vc-hg-command' with a list of flags. * vc-bzr.el (vc-bzr-log-edit-mode): Add --fixes support to log-edit-before-checkin-process. * vc.el (vc-modify-change-comment): Pass MODE to vc-start-logentry. * vc-bzr.el, vc-hg.el (log-edit-mode): Declare. * vc-dispatcher.el (vc-start-logentry): Doc fix. (log-view-process-buffer, log-edit-extra-flags): Declare. Add special markup processing for commit logs. * log-edit.el (log-edit): Add new argument MODE. Use that mode when non-nil instead of the log-view-mode. * vc.el (vc-default-log-edit-mode): New function. * vc-dispatcher.el (vc-log-edit): Add a mode argument, pass it to log-edit. Support for shelving snapshots and for showing shelves. * vc-bzr.el (vc-bzr-shelve-show, vc-bzr-shelve-show-at-point) (vc-bzr-shelve-apply-and-keep-at-point, vc-bzr-shelve-snapshot): New functions. (vc-bzr-shelve-map, vc-bzr-shelve-menu-map) (vc-bzr-extra-menu-map): Map them.
author Chong Yidong <cyd@stupidchicken.com>
date Sun, 31 Oct 2010 23:13:42 -0400
parents 1d1d5d9bd884
children ed20cbe62401 376148b31b5e
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
96303
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
1 /*
106815
1d1d5d9bd884 Add 2010 to copyright years.
Glenn Morris <rgm@gnu.org>
parents: 100951
diff changeset
2 Copyright (C) 1999, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010
96303
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
3 Free Software Foundation, Inc.
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
4
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
5 This file is part of GNU Emacs.
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
6
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
7 GNU Emacs is free software: you can redistribute it and/or modify
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
8 it under the terms of the GNU General Public License as published by
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
9 the Free Software Foundation, either version 3 of the License, or
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
10 (at your option) any later version.
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
11
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
12 GNU Emacs is distributed in the hope that it will be useful,
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
13 but WITHOUT ANY WARRANTY; without even the implied warranty of
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
15 GNU General Public License for more details.
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
16
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
17 You should have received a copy of the GNU General Public License
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
18 along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
19
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
20 /*
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
21 * Define symbols to identify the version of Unix this is.
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
22 * Define all the symbols that apply correctly.
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
23 */
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
24
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
25 #define USG /* System III, System V, etc */
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
26 #define USG5
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
27
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
28 /* This symbol should be defined on AIX Version 3 ??????? */
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
29 #ifndef _AIX
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
30 #define _AIX
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
31 #endif
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
32
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
33 /* SYSTEM_TYPE should indicate the kind of system you are using.
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
34 It sets the Lisp variable system-type. */
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
35
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
36 #define SYSTEM_TYPE "aix"
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
37
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
38 /* In AIX, you allocate a pty by opening /dev/ptc to get the master side.
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
39 To get the name of the slave side, you just ttyname() the master side. */
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
40
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
41 #define PTY_ITERATION for (c = 0; !c ; c++)
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
42 #define PTY_NAME_SPRINTF strcpy (pty_name, "/dev/ptc");
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
43 #define PTY_TTY_NAME_SPRINTF strcpy (pty_name, ttyname (fd));
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
44
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
45 /*
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
46 * Define HAVE_TERMIO if the system provides sysV-style ioctls
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
47 * for terminal control.
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
48 */
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
49
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
50 #define HAVE_TERMIOS
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
51
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
52 /*
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
53 * Define HAVE_PTYS if the system supports pty devices.
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
54 */
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
55
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
56 #define HAVE_PTYS
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
57
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
58 /* Define HAVE_SOCKETS if system supports 4.2-compatible sockets. */
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
59
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
60 #define HAVE_SOCKETS
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
61
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
62
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
63 /*
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
64 * Define SYSV_SYSTEM_DIR to use the V.3 getdents/readir
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
65 * library functions. Almost, but not quite the same as
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
66 * the 4.2 functions
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
67 */
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
68
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
69 #define SYSV_SYSTEM_DIR
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
70
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
71 /* Define this symbol if your system has the functions bcopy, etc. */
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
72
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
73 #define BSTRING
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
74
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
75 /* The file containing the kernel's symbol table is called /unix. */
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
76
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
77 #define KERNEL_FILE "/unix"
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
78
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
79 /* The symbol in the kernel where the load average is found
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
80 is named avenrun. */
22824
a8482d4262a4 Initial revision
Richard M. Stallman <rms@gnu.org>
parents:
diff changeset
81
96303
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
82 #define LDAV_SYMBOL "avenrun"
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
83
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
84 /* Special itemss needed to make Emacs run on this system. */
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
85
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
86 #ifndef __GNUC__
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
87 #define LINKER cc
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
88 #endif
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
89
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
90 /* Prevent -lg from being used for debugging. Not needed. */
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
91
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
92 #define LIBS_DEBUG
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
93
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
94 /* No need to specify -lc when linking. */
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
95
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
96 #define LIB_STANDARD
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
97
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
98 /* Use terminfo instead of termcap. */
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
99
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
100 #define TERMINFO
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
101
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
102 /* The following definition seems to be needed in AIX version 3.1.6.8.
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
103 It may not have been needed in certain earlier versions. */
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
104 #define HAVE_TCATTR
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
105
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
106 /* Include unistd.h, even though we don't define POSIX. */
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
107 #define NEED_UNISTD_H
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
108
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
109 /* AIX doesn't define this. */
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
110 #define unix 1
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
111
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
112 #ifndef __GNUC__
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
113 /* Some programs in src produce warnings saying certain subprograms
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
114 are to comples and need a MAXMEM value greater than 2000 for
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
115 additional optimization. --nils@exp-math.uni-essen.de */
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
116 #define C_SWITCH_SYSTEM -ma -qmaxmem=4000
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
117 #endif
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
118
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
119 /* string.h defines rindex as a macro, at least with native cc, so we
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
120 lose declaring char * rindex without this.
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
121 It is just a guess which versions of AIX need this definition. */
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
122 #undef HAVE_STRING_H
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
123
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
124 /* For AIX, it turns out compiling emacs under AIX 3.2.4 REQUIRES "cc -g"
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
125 because "cc -O" crashes. Under AIX 3.2.5, "cc -O" is required because
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
126 "cc -g" crashes. Go figure. --floppy@merlin.mit.edu */
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
127 /* The above isn't generally true. If it occurs with some compiler
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
128 release, seek a fixed version, be it XLC or GCC. The XLC version
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
129 isn't tied to the OS version on AIX any more than elsewhere. XLC
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
130 (the IBM compiler) can use -g with -O. (-O3 is also a possibility
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
131 for the optimization level.) -- fx, after David Edelsohn. */
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
132 #define C_DEBUG_SWITCH -g -O
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
133
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
134 /* Perry Smith <pedz@ddivt1.austin.ibm.com> says these are correct. */
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
135 #define SIGNALS_VIA_CHARACTERS
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
136 #define MAIL_USE_LOCKF
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
137 #define CLASH_DETECTION
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
138
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
139 /* Perry Smith <pedz@ddivt1.austin.ibm.com> says these are correct. */
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
140 #define POSIX_SIGNALS
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
141 #undef sigmask
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
142
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
143 /* olson@mcs.anl.gov says -li18n is needed by -lXm. */
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
144 #define LIB_MOTIF -lXm -li18n
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
145
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
146 #ifndef HAVE_LIBXMU
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
147 #define LIBXMU
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
148
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
149 /* Unfortunately without libXmu we cannot support EditRes. */
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
150 #define NO_EDITRES
ddedcecb18ef * unexnext.c:
Dan Nicolaescu <dann@ics.uci.edu>
parents: 74271
diff changeset
151 #endif
52401
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 44601
diff changeset
152
65657
c6e45e9a83bf * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME): Define
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
153 /* On AIX Emacs uses the gmalloc.c malloc implementation. But given
c6e45e9a83bf * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME): Define
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
154 the way this system works, libc functions that return malloced
c6e45e9a83bf * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME): Define
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
155 memory use the libc malloc implementation. Calling xfree or
c6e45e9a83bf * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME): Define
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
156 xrealloc on the results of such functions results in a crash.
c6e45e9a83bf * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME): Define
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
157
c6e45e9a83bf * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME): Define
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
158 One solution for this could be to define SYSTEM_MALLOC here, but
c6e45e9a83bf * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME): Define
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
159 that does not currently work on this system.
c6e45e9a83bf * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME): Define
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
160
c6e45e9a83bf * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME): Define
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
161 It is possible to completely override the malloc implementation on
c6e45e9a83bf * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME): Define
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
162 AIX, but that involves putting the malloc functions in a shared
c6e45e9a83bf * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME): Define
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
163 library and setting the MALLOCTYPE environment variable to point to
c6e45e9a83bf * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME): Define
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
164 tha shared library.
c6e45e9a83bf * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME): Define
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
165
c6e45e9a83bf * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME): Define
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
166 Emacs currently calls xrealloc on the results of get_current_dir name,
c6e45e9a83bf * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME): Define
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
167 to avoid a crash just use the Emacs implementation for that function.
c6e45e9a83bf * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME): Define
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
168 */
c6e45e9a83bf * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME): Define
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
169 #define BROKEN_GET_CURRENT_DIR_NAME 1
c6e45e9a83bf * s/aix4-2.h (BROKEN_GET_CURRENT_DIR_NAME): Define
Dan Nicolaescu <dann@ics.uci.edu>
parents: 52401
diff changeset
170
52401
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 44601
diff changeset
171 /* arch-tag: 38fe75ea-6aef-42bd-8449-bc34d921a562
695cf19ef79e Add arch taglines
Miles Bader <miles@gnu.org>
parents: 44601
diff changeset
172 (do not change this comment) */