diff options
author | Eli Zaretskii <[email protected]> | 2010-03-20 07:14:01 -0400 |
---|---|---|
committer | Eli Zaretskii <[email protected]> | 2010-03-20 07:14:01 -0400 |
commit | f2cdb04ac04fb8f9f92bce11df6e4a020720208b (patch) | |
tree | 4d231ff66e4145ce8967ed0c4ab71b364d05675f /src | |
parent | 8eef7665fa98baae93da5151c27ca0db4d1d6f5b (diff) | |
parent | 22e8757456ea6608246d9c81a83f6c5119f2e1fb (diff) |
Merge from mainline.
Diffstat (limited to 'src')
-rw-r--r-- | src/ChangeLog | 94 | ||||
-rw-r--r-- | src/Makefile.in | 74 | ||||
-rw-r--r-- | src/alloc.c | 9 | ||||
-rw-r--r-- | src/config.in | 80 | ||||
-rw-r--r-- | src/editfns.c | 4 | ||||
-rw-r--r-- | src/emacs.c | 86 | ||||
-rw-r--r-- | src/frame.c | 6 | ||||
-rw-r--r-- | src/m/alpha.h | 5 | ||||
-rw-r--r-- | src/m/ibmrs6000.h | 15 | ||||
-rw-r--r-- | src/s/aix4-2.h | 2 | ||||
-rw-r--r-- | src/s/bsd-common.h | 30 | ||||
-rw-r--r-- | src/s/freebsd.h | 58 | ||||
-rw-r--r-- | src/s/gnu.h | 24 | ||||
-rw-r--r-- | src/s/irix6-5.h | 8 | ||||
-rw-r--r-- | src/s/lynxos.h | 57 | ||||
-rw-r--r-- | src/s/netbsd.h | 29 | ||||
-rw-r--r-- | src/s/openbsd.h | 8 | ||||
-rw-r--r-- | src/s/sol2-3.h | 98 | ||||
-rw-r--r-- | src/s/sol2-4.h | 32 | ||||
-rw-r--r-- | src/s/sol2-5.h | 32 | ||||
-rw-r--r-- | src/s/sol2-6.h | 125 | ||||
-rw-r--r-- | src/s/unixware.h | 69 | ||||
-rw-r--r-- | src/s/usg5-4-2.h | 73 | ||||
-rw-r--r-- | src/s/usg5-4.h | 29 | ||||
-rw-r--r-- | src/unexec.c | 5 | ||||
-rw-r--r-- | src/xfns.c | 7 |
26 files changed, 378 insertions, 681 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index 37a4cdb1b1..2eaefe41fa 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,97 @@ +2010-03-20 Dan Nicolaescu <[email protected]> + + Remove support for old GNU/Linux using libc version 5. + * m/alpha.h (LINUX_SBRK_BUG): Remove definition. + * emacs.c (main): Remove code depending on LINUX_SBRK_BUG. + + Consolidate redundant definitions in s/bsd-common.h. + * s/bsd-common.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO) + (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS) + (LDAV_SYMBOL, KERNEL_FILE): Define (or undefine) here instead of + doing it in all files that include this one. + * s/gnu.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO) + (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS) + (LDAV_SYMBOL, KERNEL_FILE): Remove. + * s/freebsd.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO) + (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS) + (LDAV_SYMBOL, KERNEL_FILE): Remove. + * s/netbsd.h (BSD4_2, TABDLY, TAB3, HAVE_TERMIOS, NO_TERMIO) + (LIBS_DEBUG, SYSV_SYSTEM_DIR, UNEXEC, NARROWPROTO, BSD_PGRPS) + (LDAV_SYMBOL, KERNEL_FILE): Remove. + + Consolidate redundant definitions. + * s/usg5-4.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not define, + it's undefined in all files that include this one. + (POSIX_SIGNALS): Define here instead of doing it in all files that + include this one. + * s/irix6-5.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef. + (POSIX_SIGNALS): Do not define. + * s/sol2-6.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef. + (POSIX_SIGNALS): Do not define. + * s/unixware.h (sigsetmask, PTY_TTY_NAME_SPRINTF): Do not undef. + (POSIX_SIGNALS): Do not define. + + Remove support for old UNIX System V systems. + * s/unixware.h: Add the contents of s/usg-5-4-2.h. + * s/usg-5-4-2.h: Remove. + + Remove support for Solaris on PPC and for old versions. + * s/sol2-6.h: Add the contents of s/sol-2.3.h, s/sol-2.4.h, s/sol-2.5.h. + (LD_SWITCH_SYSTEM, USE_MMAP_FOR_BUFFERS): Remove #defines/#undef + that cancel each other. + * s/sol2-3.h: + * s/sol2-4.h: + * s/sol2-5.h: Remove. + * m/ibmrs6000.h: Remove code for USG5_4, this file is only used on AIX. + (NO_REMAP): Remove, unused. + (UNEXEC): Move definition ... + * s/aix4-2.h (UNEXEC): ... here. + + * s/openbsd.h: Remove support for non-ELF and for systems that do + not support shared libraries. + * s/netbsd.h: + * s/freebsd.h: Likewise. + +2010-03-20 Dan Nicolaescu <[email protected]> + + Remove non-working support for lynxos 3.0. + * s/lynxos.h: Remove file. + + * unexec.c (unexec, adjust_lnnoptrs): Do not depend on + COFF_BSD_SYMBOLS, nothing defines it anymore. + +2010-03-20 Dan Nicolaescu <[email protected]> + + Remove obsolete uses of HAVE_SHM. + * emacs.c (standard_args): + (Fdump_emacs): + (syms_of_emacs): Remove code depending on HAVE_SHM. + + * alloc.c: Remove HAVE_SHM dependent definition. + + * Makefile.in (RUN_TEMACS): Do not depend on HAVE_SHM. + +2010-03-18 Glenn Morris <[email protected]> + + * emacs.c (USAGE4): Hard-code bug address. + (REPORT_EMACS_BUG_ADDRESS, REPORT_EMACS_BUG_PRETEST_ADDRESS): Remove. + (bug_reporting_address): Remove. + (main): Don't call bug_reporting_address. + + * Makefile.in (XFT_LIBS, LIBXPM, LIBJPEG, LIBPNG, LIBTIFF, LIBGIF) + (LIBGPM, LIBRESOLV): Set using autoconf rather than cpp. + +2010-03-15 Chong Yidong <[email protected]> + + * xfns.c (Fx_create_frame): + * frame.c (Vdefault_frame_scroll_bars): Put non-GTK X scroll-bars + on left. + +2010-03-13 Andreas Politz <[email protected]> (tiny change) + + * editfns.c (Fformat): Account for string precision when computing + field width (Bug#5710). + 2010-03-12 Chong Yidong <[email protected]> * xfns.c (Fx_create_frame): Set default to Qright. diff --git a/src/Makefile.in b/src/Makefile.in index d64c045960..51c0683539 100644 --- a/src/Makefile.in +++ b/src/Makefile.in @@ -369,76 +369,16 @@ LIBXT=$(LIBW) #endif #endif /* not USE_X_TOOLKIT */ -#if HAVE_XFT -XFT_LIBS=@XFT_LIBS@ -#endif /* HAVE_XFT */ - -#if HAVE_XPM -#ifndef LIBXPM -#define LIBXPM -lXpm -#endif /* not defined LIBXPM */ -#else /* not HAVE_XPM */ -#define LIBXPM -#endif /* not HAVE_XPM */ - -#if HAVE_JPEG -#ifndef LIBJPEG -#define LIBJPEG -ljpeg -#endif /* not defined LIBJPEG */ -#else /* not HAVE_JPEG */ -#define LIBJPEG -#endif /* not HAVE_JPEG */ - -#if HAVE_PNG -#ifndef LIBPNG -#define LIBPNG -lpng -lz -lm -#endif /* not defined LIBPNG */ -#else /* not HAVE_PNG */ -#define LIBPNG -#endif /* not HAVE_PNG */ - -#if HAVE_TIFF -#ifndef LIBTIFF -#define LIBTIFF -ltiff -#endif /* not defined LIBTIFF */ -#else /* not HAVE_TIFF */ -#define LIBTIFF -#endif /* not HAVE_TIFF */ - -#if HAVE_GIF -#ifndef LIBGIF -#define LIBGIF -lgif -#endif /* not defined LIBGIF */ -#else /* not HAVE_GIF */ -#define LIBGIF -#endif /* not HAVE_GIF */ - #ifdef HAVE_X11 /* LD_SWITCH_X_DEFAULT comes after everything else that specifies options for where to find X libraries, but before those libraries. */ X11_LDFLAGS = LD_SWITCH_X_SITE LD_SWITCH_X_DEFAULT -LIBX= $(LIBXMENU) $(X11_LDFLAGS) $(LIBXT) LIBTIFF LIBJPEG LIBPNG LIBGIF LIBXPM LIB_X11_LIB LIBX11_SYSTEM $(XFT_LIBS) +LIBX= $(LIBXMENU) $(X11_LDFLAGS) $(LIBXT) @LIBTIFF@ @LIBJPEG@ @LIBPNG@ @LIBGIF@ @LIBXPM@ LIB_X11_LIB LIBX11_SYSTEM @XFT_LIBS@ #else /* not HAVE_X11 */ LIBX= $(LIBXMENU) LD_SWITCH_X_SITE #endif /* not HAVE_X11 */ #endif /* not HAVE_X_WINDOWS */ -#if HAVE_GPM -#ifndef LIBGPM -#define LIBGPM -lgpm -#endif /* not defined LIBGPM */ -#else /* not HAVE_GPM */ -#define LIBGPM -#endif /* not HAVE_GPM */ - -#if HAVE_LIBRESOLV -#ifndef LIBRESOLV -#define LIBRESOLV -lresolv -#endif /* not defined LIBRESOLV */ -#else /* not HAVE_LIBRESOLV */ -#define LIBRESOLV -#endif /* not HAVE_LIBRESOLV */ - LIBSOUND= @LIBSOUND@ CFLAGS_SOUND= @CFLAGS_SOUND@ @@ -527,7 +467,7 @@ GETLOADAVG_LIBS = @GETLOADAVG_LIBS@ #ifdef HAVE_X_WINDOWS MSDOS_OBJ = dosfns.o msdos.o xmenu.o #else -MSDOS_OBJ = dosfns.o msdos.o w16select.o xmenu.o +MSDOS_OBJ = dosfns.o msdos.o w16select.o xmenu.o termcap.o #endif #endif @@ -595,10 +535,8 @@ termcapobj = terminfo.o #else /* ! defined (TERMINFO) */ #ifndef LIBS_TERMCAP #define LIBS_TERMCAP -termcapobj = termcap.o tparam.o -#else /* LIBS_TERMCAP */ -termcapobj = tparam.o #endif /* LIBS_TERMCAP */ +termcapobj = tparam.o #endif /* ! defined (TERMINFO) */ @@ -910,16 +848,12 @@ SOME_MACHINE_LISP = ../lisp/mouse.elc \ with GCC, we might need gnulib again after them. */ LIBES = $(LOADLIBES) $(LIBS) $(LIBX) $(LIBSOUND) $(RSVG_LIBS) $(DBUS_LIBS) \ - LIBGPM LIBRESOLV LIBS_SYSTEM LIBS_MACHINE LIBS_TERMCAP \ + @LIBGPM@ @LIBRESOLV@ LIBS_SYSTEM LIBS_MACHINE LIBS_TERMCAP \ LIBS_DEBUG $(GETLOADAVG_LIBS) ${GCONF_LIBS} \ @FREETYPE_LIBS@ @FONTCONFIG_LIBS@ @LIBOTF_LIBS@ @M17N_FLT_LIBS@ \ $(GNULIB_VAR) LIB_MATH LIB_STANDARD $(GNULIB_VAR) -#ifdef HAVE_SHM -RUN_TEMACS = `/bin/pwd`/temacs -nl -#else RUN_TEMACS = `/bin/pwd`/temacs -#endif all: emacs${EXEEXT} $(OTHER_FILES) diff --git a/src/alloc.c b/src/alloc.c index 9a935cc895..98d60067f9 100644 --- a/src/alloc.c +++ b/src/alloc.c @@ -257,8 +257,6 @@ Lisp_Object Vpurify_flag; Lisp_Object Vmemory_full; -#ifndef HAVE_SHM - /* Initialize it to a nonzero value to force it into data space (rather than bss space). That way unexec will remap it into text space (pure), on some systems. We have not implemented the @@ -268,13 +266,6 @@ Lisp_Object Vmemory_full; EMACS_INT pure[(PURESIZE + sizeof (EMACS_INT) - 1) / sizeof (EMACS_INT)] = {1,}; #define PUREBEG (char *) pure -#else /* HAVE_SHM */ - -#define pure PURE_SEG_BITS /* Use shared memory segment */ -#define PUREBEG (char *)PURE_SEG_BITS - -#endif /* HAVE_SHM */ - /* Pointer to the pure area, and its size. */ static char *purebeg; diff --git a/src/config.in b/src/config.in index 3a3ae09a08..ef2c25c85d 100644 --- a/src/config.in +++ b/src/config.in @@ -264,8 +264,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ /* Define to 1 if you have the `get_current_dir_name' function. */ #undef HAVE_GET_CURRENT_DIR_NAME -/* Define to 1 if you have a gif library (default -lgif; otherwise specify - with LIBGIF). */ +/* Define to 1 if you have a gif (or ungif) library. */ #undef HAVE_GIF /* Define to 1 if you have the gpm library (-lgpm). */ @@ -319,10 +318,10 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ /* Define to 1 if you have the <kerberos/krb.h> header file. */ #undef HAVE_KERBEROS_KRB_H -/* Define to 1 if `krb5_error' is a member of `e_text'. */ +/* Define to 1 if `e_text' is member of `krb5_error'. */ #undef HAVE_KRB5_ERROR_E_TEXT -/* Define to 1 if `krb5_error' is a member of `text'. */ +/* Define to 1 if `text' is member of `krb5_error'. */ #undef HAVE_KRB5_ERROR_TEXT /* Define to 1 if you have the <krb5.h> header file. */ @@ -616,25 +615,25 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ /* Define to 1 if you have the `strsignal' function. */ #undef HAVE_STRSIGNAL -/* Define to 1 if `struct ifreq' is a member of `ifr_addr'. */ +/* Define to 1 if `ifr_addr' is member of `struct ifreq'. */ #undef HAVE_STRUCT_IFREQ_IFR_ADDR -/* Define to 1 if `struct ifreq' is a member of `ifr_broadaddr'. */ +/* Define to 1 if `ifr_broadaddr' is member of `struct ifreq'. */ #undef HAVE_STRUCT_IFREQ_IFR_BROADADDR -/* Define to 1 if `struct ifreq' is a member of `ifr_flags'. */ +/* Define to 1 if `ifr_flags' is member of `struct ifreq'. */ #undef HAVE_STRUCT_IFREQ_IFR_FLAGS -/* Define to 1 if `struct ifreq' is a member of `ifr_hwaddr'. */ +/* Define to 1 if `ifr_hwaddr' is member of `struct ifreq'. */ #undef HAVE_STRUCT_IFREQ_IFR_HWADDR -/* Define to 1 if `struct ifreq' is a member of `ifr_netmask'. */ +/* Define to 1 if `ifr_netmask' is member of `struct ifreq'. */ #undef HAVE_STRUCT_IFREQ_IFR_NETMASK -/* Define to 1 if `struct nlist' is a member of `n_un.n_name'. */ +/* Define to 1 if `n_un.n_name' is member of `struct nlist'. */ #undef HAVE_STRUCT_NLIST_N_UN_N_NAME -/* Define to 1 if `struct tm' is a member of `tm_zone'. */ +/* Define to 1 if `tm_zone' is member of `struct tm'. */ #undef HAVE_STRUCT_TM_TM_ZONE /* Define to 1 if `struct utimbuf' is declared by <utime.h>. */ @@ -818,12 +817,18 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ Solaris, for example). */ #undef LD_SWITCH_X_SITE_AUX -/* Compiler option to link with the gif library (if not -lgif). */ -#undef LIBGIF - /* Define to 1 if localtime caches TZ. */ #undef LOCALTIME_CACHE +/* String giving fallback POP mail host. */ +#undef MAILHOST + +/* Define to unlink, rather than empty, mail spool after reading. */ +#undef MAIL_UNLINK_SPOOL + +/* Define to support MMDF mailboxes in movemail. */ +#undef MAIL_USE_MMDF + /* Define to support POP mail retrieval. */ #undef MAIL_USE_POP @@ -855,9 +860,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ /* Define to the one symbol short name of this package. */ #undef PACKAGE_TARNAME -/* Define to the home page for this package. */ -#undef PACKAGE_URL - /* Define to the version of this package. */ #undef PACKAGE_VERSION @@ -917,28 +919,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ /* Define to 1 if using the Motif X toolkit. */ #undef USE_MOTIF -/* Enable extensions on AIX 3, Interix. */ -#ifndef _ALL_SOURCE -# undef _ALL_SOURCE -#endif -/* Enable GNU extensions on systems that have them. */ -#ifndef _GNU_SOURCE -# undef _GNU_SOURCE -#endif -/* Enable threading extensions on Solaris. */ -#ifndef _POSIX_PTHREAD_SEMANTICS -# undef _POSIX_PTHREAD_SEMANTICS -#endif -/* Enable extensions on HP NonStop. */ -#ifndef _TANDEM_SOURCE -# undef _TANDEM_SOURCE -#endif -/* Enable general extensions on Solaris. */ -#ifndef __EXTENSIONS__ -# undef __EXTENSIONS__ -#endif - - /* Define to 1 if we should use toolkit scroll bars. */ #undef USE_TOOLKIT_SCROLL_BARS @@ -974,6 +954,28 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ /* Define to 1 if you need to in order for `stat' and other things to work. */ #undef _POSIX_SOURCE +/* Enable extensions on AIX 3, Interix. */ +#ifndef _ALL_SOURCE +# undef _ALL_SOURCE +#endif +/* Enable GNU extensions on systems that have them. */ +#ifndef _GNU_SOURCE +# undef _GNU_SOURCE +#endif +/* Enable threading extensions on Solaris. */ +#ifndef _POSIX_PTHREAD_SEMANTICS +# undef _POSIX_PTHREAD_SEMANTICS +#endif +/* Enable extensions on HP NonStop. */ +#ifndef _TANDEM_SOURCE +# undef _TANDEM_SOURCE +#endif +/* Enable general extensions on Solaris. */ +#ifndef __EXTENSIONS__ +# undef __EXTENSIONS__ +#endif + + /* Define to rpl_ if the getopt replacement functions and variables should be used. */ #undef __GETOPT_PREFIX diff --git a/src/editfns.c b/src/editfns.c index 093f141bff..9f30ea0641 100644 --- a/src/editfns.c +++ b/src/editfns.c @@ -3782,7 +3782,11 @@ usage: (format STRING &rest OBJECTS) */) to be as large as is calculated here. Easy check for the case PRECISION = 0. */ thissize = precision[n] ? CONVERTED_BYTE_SIZE (multibyte, args[n]) : 0; + /* The precision also constrains how much of the argument + string will finally appear (Bug#5710). */ actual_width = lisp_string_width (args[n], -1, NULL, NULL); + if (precision[n] != -1) + actual_width = min(actual_width,precision[n]); } /* Would get MPV otherwise, since Lisp_Int's `point' to low memory. */ else if (INTEGERP (args[n]) && *format != 's') diff --git a/src/emacs.c b/src/emacs.c index 71ffa998bf..60aa14e2b7 100644 --- a/src/emacs.c +++ b/src/emacs.c @@ -345,7 +345,7 @@ abbreviation for a --option.\n\ Various environment variables and window system resources also affect\n\ Emacs' operation. See the main documentation.\n\ \n\ -Report bugs to %s. First, please see the Bugs\n\ +Report bugs to [email protected]. First, please see the Bugs\n\ section of the Emacs manual or the file BUGS.\n" @@ -746,41 +746,6 @@ void (*__malloc_initialize_hook) () = malloc_initialize_hook; #endif /* DOUG_LEA_MALLOC */ -#define REPORT_EMACS_BUG_ADDRESS "[email protected]" -#define REPORT_EMACS_BUG_PRETEST_ADDRESS "[email protected]" - -/* This function is used to determine an address to which bug report should - be sent. */ - -char * -bug_reporting_address () -{ - int count = 0; - Lisp_Object temp; - char *string; - - temp = Fsymbol_value (intern ("emacs-version")); - - /* When `emacs-version' is invalid, use normal address. */ - if (!STRINGP(temp)) - return REPORT_EMACS_BUG_ADDRESS; - - string = SDATA (temp); - - /* Count dots in `emacs-version'. */ - while (*string) - { - if (*string == '.') - count++; - string++; - } - - /* When `emacs-version' has at least three dots, it is development or - pretest version of Emacs. */ - return count >= 3 ? REPORT_EMACS_BUG_PRETEST_ADDRESS : REPORT_EMACS_BUG_ADDRESS; -} - - /* ARGSUSED */ int main (int argc, char **argv) @@ -825,11 +790,6 @@ main (int argc, char **argv) heap_bss_diff = (char *)my_heap_start - max (my_endbss, my_endbss_static); } -#ifdef LINUX_SBRK_BUG - /* This is only used GNU/LINUX running on alpha when using libc5 */ - __sbrk (1); -#endif - #ifdef RUN_TIME_REMAP if (initialized) run_time_remap (argv[0]); @@ -1082,7 +1042,7 @@ main (int argc, char **argv) { printf (USAGE1, argv[0], USAGE2); printf (USAGE3); - printf (USAGE4, bug_reporting_address ()); + printf (USAGE4); exit (0); } @@ -1851,9 +1811,6 @@ struct standard_args const struct standard_args standard_args[] = { { "-version", "--version", 150, 0 }, -#ifdef HAVE_SHM - { "-nl", "--no-shared-memory", 140, 0 }, -#endif { "-t", "--terminal", 120, 1 }, { "-nw", "--no-window-system", 110, 0 }, { "-nw", "--no-windows", 110, 0 }, @@ -2245,39 +2202,6 @@ shut_down_emacs (sig, no_x, stuff) #ifndef CANNOT_DUMP -#ifdef HAVE_SHM - -DEFUN ("dump-emacs-data", Fdump_emacs_data, Sdump_emacs_data, 1, 1, 0, - doc: /* Dump current state of Emacs into data file FILENAME. -This function exists on systems that use HAVE_SHM. */) - (filename) - Lisp_Object filename; -{ - extern char my_edata[]; - Lisp_Object tem; - - check_pure_size (); - CHECK_STRING (filename); - filename = Fexpand_file_name (filename, Qnil); - - tem = Vpurify_flag; - Vpurify_flag = Qnil; - - fflush (stdout); - /* Tell malloc where start of impure now is. */ - /* Also arrange for warnings when nearly out of space. */ -#ifndef SYSTEM_MALLOC - memory_warnings (my_edata, malloc_warning); -#endif - map_out_data (SDATA (filename)); - - Vpurify_flag = tem; - - return Qnil; -} - -#else /* not HAVE_SHM */ - DEFUN ("dump-emacs", Fdump_emacs, Sdump_emacs, 2, 2, 0, doc: /* Dump current state of Emacs into executable file FILENAME. Take symbols from SYMFILE (presumably the file you executed to run Emacs). @@ -2374,8 +2298,6 @@ You must run Emacs in batch mode in order to dump it. */) return unbind_to (count, Qnil); } -#endif /* not HAVE_SHM */ - #endif /* not CANNOT_DUMP */ #if HAVE_SETLOCALE @@ -2552,12 +2474,8 @@ syms_of_emacs () staticpro (&Qfile_name_handler_alist); #ifndef CANNOT_DUMP -#ifdef HAVE_SHM - defsubr (&Sdump_emacs_data); -#else defsubr (&Sdump_emacs); #endif -#endif defsubr (&Skill_emacs); diff --git a/src/frame.c b/src/frame.c index c779f1c5b6..40930af594 100644 --- a/src/frame.c +++ b/src/frame.c @@ -4584,8 +4584,14 @@ Setting this variable does not affect existing frames, only new ones. */); DEFVAR_LISP ("default-frame-scroll-bars", &Vdefault_frame_scroll_bars, doc: /* Default position of scroll bars on this window-system. */); #ifdef HAVE_WINDOW_SYSTEM +#if defined(HAVE_NTGUI) || defined(NS_IMPL_COCOA) || (defined(USE_GTK) && defined(USE_TOOLKIT_SCROLL_BARS)) + /* MS-Windows, Mac OS X, and GTK have scroll bars on the right by + default. */ Vdefault_frame_scroll_bars = Qright; #else + Vdefault_frame_scroll_bars = Qleft; +#endif +#else Vdefault_frame_scroll_bars = Qnil; #endif diff --git a/src/m/alpha.h b/src/m/alpha.h index 5abf8bba72..065a0dd7d7 100644 --- a/src/m/alpha.h +++ b/src/m/alpha.h @@ -116,11 +116,6 @@ NOTE-END #endif /* __ELF__ */ -#if defined (GNU_LINUX) && __GNU_LIBRARY__ - 0 < 6 -/* This controls a conditional in main. */ -#define LINUX_SBRK_BUG -#endif - /* On the Alpha it's best to avoid including TERMIO since struct termio and struct termios are mutually incompatible. */ #define NO_TERMIO diff --git a/src/m/ibmrs6000.h b/src/m/ibmrs6000.h index 757db149ed..4304ea90cd 100644 --- a/src/m/ibmrs6000.h +++ b/src/m/ibmrs6000.h @@ -32,19 +32,10 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ #define IBMR2AIX -#ifndef UNEXEC -#define UNEXEC unexaix.o -#endif - -/* Define addresses, macros, change some setup for dump */ - -#define NO_REMAP - /* The data segment in this machine always starts at address 0x20000000. An address of data cannot be stored correctly in a Lisp object; we always lose the high bits. We must tell XPNTR to add them back. */ -#ifndef USG5_4 #define TEXT_START 0x10000000 #define DATA_START 0x20000000 #define WORDS_BIG_ENDIAN @@ -75,12 +66,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ #define LIBS_MACHINE -lrts -lIM -liconv #endif -#else /* USG5_4 */ -#undef WORDS_BIG_ENDIAN -#define DATA_SEG_BITS 0 -#define LIBS_MACHINE -#endif /* USG5_4 */ - #undef ADDR_CORRECT #define ADDR_CORRECT(x) ((int)(x)) diff --git a/src/s/aix4-2.h b/src/s/aix4-2.h index 29a68dbf6e..a1abf13466 100644 --- a/src/s/aix4-2.h +++ b/src/s/aix4-2.h @@ -168,5 +168,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ */ #define BROKEN_GET_CURRENT_DIR_NAME 1 +#define UNEXEC unexaix.o + /* arch-tag: 38fe75ea-6aef-42bd-8449-bc34d921a562 (do not change this comment) */ diff --git a/src/s/bsd-common.h b/src/s/bsd-common.h index 8094f50d31..2ef0883b2a 100644 --- a/src/s/bsd-common.h +++ b/src/s/bsd-common.h @@ -33,6 +33,36 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ #define BSD_SYSTEM 43 #endif /* BSD_SYSTEM */ +/* For mem-limits.h. */ +#define BSD4_2 + +#define TABDLY OXTABS +#define TAB3 OXTABS + +/* These aren't needed, since we have getloadavg. */ +#undef KERNEL_FILE +#undef LDAV_SYMBOL + +#define HAVE_TERMIOS +#define NO_TERMIO + +#define LIBS_DEBUG + +#define SYSV_SYSTEM_DIR + +/* POSIX-style pgrp behavior. */ +#undef BSD_PGRPS + +#define UNEXEC unexelf.o + +/* If the system's imake configuration file defines `NeedWidePrototypes' + as `NO', we must define NARROWPROTO manually. Such a define is + generated in the Makefile generated by `xmkmf'. If we don't + define NARROWPROTO, we will see the wrong function prototypes + for X functions taking float or double parameters. */ + +#define NARROWPROTO 1 + /* SYSTEM_TYPE should indicate the kind of system you are using. It sets the Lisp variable system-type. */ diff --git a/src/s/freebsd.h b/src/s/freebsd.h index e13941d2dc..a84627d326 100644 --- a/src/s/freebsd.h +++ b/src/s/freebsd.h @@ -23,39 +23,14 @@ GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ -/* Get the correct __FreeBSD_version, even if this is before that was - defined. */ -#ifndef __FreeBSD_version -#ifndef __FreeBSD__ -#define __FreeBSD_version 199401 -#elif __FreeBSD__ == 1 -#define __FreeBSD_version 199405 -#else -#include <osreldate.h> -#endif -#endif /* !defined __FreeBSD_version */ - -/* '__FreeBSD__' is defined by the preprocessor on FreeBSD-1.1 and up. - Earlier versions do not have shared libraries, so inhibit them. - You can inhibit them on newer systems if you wish - by defining NO_SHARED_LIBS. */ -#ifndef __FreeBSD__ -#define NO_SHARED_LIBS -#endif - /* Get most of the stuff from bsd-common */ #include "bsd-common.h" /* For mem-limits.h. */ #define BSD4_2 -/* These aren't needed, since we have getloadavg. */ -#undef KERNEL_FILE -#undef LDAV_SYMBOL - #define PENDING_OUTPUT_COUNT(FILE) ((FILE)->_p - (FILE)->_bf._base) -#define LIBS_DEBUG #define LIBS_SYSTEM -lutil #if __FreeBSD_version < 400000 #define LIBS_TERMCAP -ltermcap @@ -64,44 +39,19 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ #define LIBS_TERMCAP -lncurses #endif -#define SYSV_SYSTEM_DIR - -/* freebsd has POSIX-style pgrp behavior. */ -#undef BSD_PGRPS - -#ifdef __ELF__ - /* Let `ld' find image libs and similar things in /usr/local/lib. The system compiler, GCC, has apparently been modified to not look there, contrary to what a stock GCC would do. */ #define LD_SWITCH_SYSTEM -L/usr/local/lib #define START_FILES pre-crt0.o /usr/lib/crt1.o /usr/lib/crti.o /usr/lib/crtbegin.o -#define UNEXEC unexelf.o #define LIB_STANDARD -lgcc -lc -lgcc /usr/lib/crtend.o /usr/lib/crtn.o #undef LIB_GCC #define LIB_GCC -#else /* not __ELF__ */ - -#ifdef NO_SHARED_LIBS -#ifdef __FreeBSD__ /* shared libs are available, but the user prefers - not to use them. */ -#define LD_SWITCH_SYSTEM -Bstatic -L/usr/local/lib -#endif /* __FreeBSD__ */ -#endif /* NO_SHARED_LIBS */ - -#endif /* not __ELF__ */ - #define HAVE_GETLOADAVG 1 -#define HAVE_TERMIOS -#define NO_TERMIO #define DECLARE_GETPWUID_WITH_UID_T -/* freebsd uses OXTABS instead of the expected TAB3. */ -#define TABDLY OXTABS -#define TAB3 OXTABS - /* this silences a few compilation warnings */ #undef BSD_SYSTEM #if __FreeBSD__ == 1 @@ -117,14 +67,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ ioctl TIOCSCTTY. */ #define DONT_REOPEN_PTY -/* If the system's imake configuration file defines `NeedWidePrototypes' - as `NO', we must define NARROWPROTO manually. Such a define is - generated in the Makefile generated by `xmkmf'. If we don't - define NARROWPROTO, we will see the wrong function prototypes - for X functions taking float or double parameters. */ - -#define NARROWPROTO 1 - /* The following is needed to make `configure' find Xpm, Xaw3d and image include and library files if using /usr/bin/gcc. That compiler seems to be modified to not find headers in diff --git a/src/s/gnu.h b/src/s/gnu.h index b43cd65c40..bf68cabe05 100644 --- a/src/s/gnu.h +++ b/src/s/gnu.h @@ -21,27 +21,13 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ /* Get most of the stuff from bsd-common */ #include "bsd-common.h" -/* For mem-limits.h. */ -#define BSD4_2 - #undef SYSTEM_TYPE #define SYSTEM_TYPE "gnu" #undef NLIST_STRUCT -#undef KERNEL_FILE -#undef LDAV_SYMBOL #define SIGNALS_VIA_CHARACTERS -#define HAVE_TERMIOS -#define NO_TERMIO - -#define LIBS_DEBUG - -/* XXX emacs should not expect TAB3 to be defined. */ -#define TABDLY OXTABS -#define TAB3 OXTABS - /* Tell Emacs that we are a terminfo based system; disable the use of local termcap. (GNU uses ncurses.) */ #ifdef HAVE_LIBNCURSES @@ -49,11 +35,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ #define LIBS_TERMCAP -lncurses #endif -#define SYSV_SYSTEM_DIR - -/* GNU has POSIX-style pgrp behavior. */ -#undef BSD_PGRPS - /* Use mmap directly for allocating larger buffers. */ #ifdef DOUG_LEA_MALLOC #undef REL_ALLOC @@ -63,17 +44,12 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ #define ORDINARY_LINK #define DATA_START ({ extern int data_start; (char *) &data_start; }) -/* GNU now always uses the ELF format. */ -#define UNEXEC unexelf.o - /* Some losing code fails to include this and then assumes that because it is braindead that O_RDONLY==0. */ #ifndef NOT_C_CODE #include <fcntl.h> #endif -#define NARROWPROTO 1 - #ifdef emacs #include <stdio.h> /* Get the definition of _IO_STDIO_H. */ #if defined(_IO_STDIO_H) || defined(_STDIO_USES_IOSTREAM) diff --git a/src/s/irix6-5.h b/src/s/irix6-5.h index 57429e4166..abd87b4aa2 100644 --- a/src/s/irix6-5.h +++ b/src/s/irix6-5.h @@ -22,7 +22,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ #define IRIX6_5 /* used in m/iris4d */ #include "usg5-4.h" -#undef sigsetmask /* use sys_sigsetmask */ #undef _longjmp /* use system versions, not conservative aliases */ #undef _setjmp @@ -46,9 +45,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ #define SIGNALS_VIA_CHARACTERS /* No need to use sprintf to get the tty name--we get that from _getpty. */ -#ifdef PTY_TTY_NAME_SPRINTF -#undef PTY_TTY_NAME_SPRINTF -#endif #define PTY_TTY_NAME_SPRINTF /* No need to get the pty name at all. */ #ifdef PTY_NAME_SPRINTF @@ -80,10 +76,6 @@ char *_getpty(); strcpy (pty_name, name); \ } -/* Since we use POSIX constructs in PTY_OPEN, we must force POSIX - throughout. */ -#define POSIX_SIGNALS - /* Ulimit(UL_GMEMLIM) is busted... */ #define ULIMIT_BREAK_VALUE 0x14000000 diff --git a/src/s/lynxos.h b/src/s/lynxos.h deleted file mode 100644 index 180b600569..0000000000 --- a/src/s/lynxos.h +++ /dev/null @@ -1,57 +0,0 @@ -/* Definitions file for GNU Emacs running on LynxOS-3.0.1 - Copyright (C) 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, - 2008, 2009, 2010 Free Software Foundation, Inc. - -This file is part of GNU Emacs. - -GNU Emacs is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 3 of the License, or -(at your option) any later version. - -GNU Emacs is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ - -/* LynxOS is almost a bsd 4.2 system */ -#include "s/bsd4-2.h" - -/* SYSTEM_TYPE should indicate the kind of system you are using. - It sets the Lisp variable system-type. */ - -/* override the bsd definition */ -#undef SYSTEM_TYPE -#define SYSTEM_TYPE "lynxos 3.0.1" - -/* System stuff redefined from bsd4-2.h */ -#undef KERNEL_FILE -#define KERNEL_FILE "/lynx.os" -#undef LDAV_SYMBOL -#define LDAV_SYMBOL "load_average" - -/* misc defines */ -#define LNOFLSH 0 - -/* COFF related */ -#define COFF -#define NO_REMAP -#define SECTION_ALIGNMENT 0x1 -#define COFF_BSD_SYMBOLS -#define etext __etext -#define edata __edata -#define _start __text - -/* Compilation options */ -#define LIBS_DEBUG -#define ORDINARY_LINK -/* we define following to prevent all the lynxos's stupid compilation */ -/* warning messages */ -#define C_SWITCH_SYSTEM -D__NO_INCLUDE_WARN__ -#define LIBS_SYSTEM -lbsd - -/* arch-tag: fbc81ec9-1c45-416b-a368-799ae7c094a1 - (do not change this comment) */ diff --git a/src/s/netbsd.h b/src/s/netbsd.h index 17d3b33451..1af4c94d10 100644 --- a/src/s/netbsd.h +++ b/src/s/netbsd.h @@ -22,44 +22,20 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ /* Get most of the stuff from bsd-common */ #include "bsd-common.h" -#if defined (__alpha__) && !defined (__ELF__) -#define NO_SHARED_LIBS -#endif - -/* For mem-limits.h. */ -#define BSD4_2 - -#undef KERNEL_FILE -#undef LDAV_SYMBOL #define HAVE_GETLOADAVG 1 #define PENDING_OUTPUT_COUNT(FILE) ((FILE)->_p - (FILE)->_bf._base) -/* netbsd uses OXTABS instead of the expected TAB3. */ -#define TABDLY OXTABS -#define TAB3 OXTABS - -#define HAVE_TERMIOS -#define NO_TERMIO - -#define LIBS_DEBUG /* -lutil is not needed for NetBSD >0.9. */ /* #define LIBS_SYSTEM -lutil */ #define LIBS_TERMCAP -ltermcap #define NEED_ERRNO -#define SYSV_SYSTEM_DIR -/* Netbsd has POSIX-style pgrp behavior. */ -#undef BSD_PGRPS - -#if !defined (NO_SHARED_LIBS) && defined (__ELF__) #define START_FILES pre-crt0.o /usr/lib/crt0.o START_FILES_1 /usr/lib/crtbegin.o -#define UNEXEC unexelf.o #define LIB_STANDARD -lgcc -lc -lgcc /usr/lib/crtend.o END_FILES_1 #undef LIB_GCC #define LIB_GCC -#endif #ifdef HAVE_CRTIN #define START_FILES_1 /usr/lib/crti.o @@ -71,7 +47,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ #define AMPERSAND_FULL_NAME -#ifdef __ELF__ /* Here is how to find X Windows. LD_SWITCH_X_SITE_AUX gives an -R option says where to find X windows at run time. We convert it to a -rpath option which is what OSF1 uses. */ @@ -92,8 +67,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ #define LD_SWITCH_SYSTEM_TEMACS -Wl,-z,nocombreloc -#endif /* __ELF__ */ - /* On post 1.3 releases of NetBSD, gcc -nostdlib also clears the library search parth, i.e. it won't search /usr/lib for libc and friends. Using -nostartfiles instead avoids @@ -101,8 +74,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ #define LINKER $(CC) -nostartfiles -#define NARROWPROTO 1 - #define DEFAULT_SOUND_DEVICE "/dev/audio" /* Greg A. Woods <[email protected]> says we must include signal.h diff --git a/src/s/openbsd.h b/src/s/openbsd.h index 3b996de705..a74601d3ad 100644 --- a/src/s/openbsd.h +++ b/src/s/openbsd.h @@ -19,7 +19,6 @@ #undef LD_SWITCH_SYSTEM_TEMACS #undef LD_SWITCH_SYSTEM -#ifdef __ELF__ /* Han Boetes <[email protected]> says this is necessary, otherwise Emacs dumps core on elf systems. */ @@ -29,12 +28,5 @@ default. */ #define LD_SWITCH_X_DEFAULT -L/usr/local/lib -#else - -#define LD_SWITCH_SYSTEM LD_SWITCH_SYSTEM_tmp -#define LD_SWITCH_X_DEFAULT -L/usr/local/lib - -#endif - /* arch-tag: 7e3f65ca-3f48-4237-933f-2b208b21e8e2 (do not change this comment) */ diff --git a/src/s/sol2-3.h b/src/s/sol2-3.h deleted file mode 100644 index fa05aa45b6..0000000000 --- a/src/s/sol2-3.h +++ /dev/null @@ -1,98 +0,0 @@ -/* Definitions file for GNU Emacs running on Solaris 2.3. - - Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, - 2008, 2009, 2010 Free Software Foundation, Inc. - -This file is part of GNU Emacs. - -GNU Emacs is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 3 of the License, or -(at your option) any later version. - -GNU Emacs is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ - -#include "usg5-4.h" - -#define SOLARIS2 - -/* This triggers a conditional in xfaces.c. */ -#define XOS_NEEDS_TIME_H - -#define POSIX - -#define LIBS_SYSTEM -lsocket -lnsl -lkstat - -/* Prefer kstat over kvm in getloadavg.c, kstat doesn't require root. - [email protected], 7/21/97. Don't redefine if already defined - (e.g., by config.h). */ -#ifndef HAVE_LIBKSTAT -#define HAVE_LIBKSTAT -#endif - -/* [email protected] says Solaris has a bug related to X11R6-style - XIM support. */ - -#define INHIBIT_X11R6_XIM - -/* Must use the system's termcap, if we use any termcap. - It does special things. */ - -#ifndef TERMINFO -#define LIBS_TERMCAP -ltermcap -#endif - -#define USE_MMAP_FOR_BUFFERS 1 - -#ifndef __GNUC__ -#define LD_SWITCH_SYSTEM -L /usr/ccs/lib LD_SWITCH_X_SITE_AUX -/* eggert thinks all versions of SunPro C allowed this. */ -#define C_DEBUG_SWITCH -g -O -#else /* GCC */ -/* We use ./prefix-args because we don't know whether LD_SWITCH_X_SITE_AUX - has anything in it. It can be empty. - This works ok in src. Luckily lib-src does not use LD_SWITCH_SYSTEM. */ -#define LD_SWITCH_SYSTEM -L /usr/ccs/lib \ - `./prefix-args -Xlinker LD_SWITCH_X_SITE_AUX` -#endif /* GCC */ - -/* Info from [email protected] suggests this is appropriate. */ -#define POSIX_SIGNALS - -/* We don't need the definition from usg5-4.h with POSIX_SIGNALS. */ -#undef sigsetmask - -/* This is the same definition as in usg5-4.h, but with sigblock/sigunblock - rather than sighold/sigrelse, which appear to be BSD4.1 specific and won't - work if POSIX_SIGNALS is defined. It may also be appropriate for SVR4.x - (x<2) but I'm not sure. [email protected] */ -/* This sets the name of the slave side of the PTY. On SysVr4, - grantpt(3) forks a subprocess, so keep sigchld_handler() from - intercepting that death. If any child but grantpt's should die - within, it should be caught after sigrelse(2). */ - -#undef PTY_TTY_NAME_SPRINTF -#define PTY_TTY_NAME_SPRINTF \ - { \ - char *ptsname (), *ptyname; \ - \ - sigblock (sigmask (SIGCLD)); \ - if (grantpt (fd) == -1) \ - { emacs_close (fd); return -1; } \ - sigunblock (sigmask (SIGCLD)); \ - if (unlockpt (fd) == -1) \ - { emacs_close (fd); return -1; } \ - if (!(ptyname = ptsname (fd))) \ - { emacs_close (fd); return -1; } \ - strncpy (pty_name, ptyname, sizeof (pty_name)); \ - pty_name[sizeof (pty_name) - 1] = 0; \ - } - -/* arch-tag: a8fe2e15-e517-49cb-a863-f346b80885fe - (do not change this comment) */ diff --git a/src/s/sol2-4.h b/src/s/sol2-4.h deleted file mode 100644 index df8552e956..0000000000 --- a/src/s/sol2-4.h +++ /dev/null @@ -1,32 +0,0 @@ -/* Handle Solaris 2.4. */ - -#include "sol2-3.h" - -#undef LD_SWITCH_SYSTEM - -/* `#ifdef USE_MOTIF' won't work here, since USE_MOTIF isn't defined yet. - Instead, dynamically check whether USE_MOTIF expands to something. */ -#define NOT_USING_MOTIF { set x USE_MOTIF; test "$$2" = "USE_MOTIF"; } - -#ifndef __GNUC__ -#define LD_SWITCH_SYSTEM_TEMACS -L/usr/ccs/lib LD_SWITCH_X_SITE_AUX \ - `NOT_USING_MOTIF || echo ' -R/usr/dt/lib'` -#else /* GCC */ -/* We use ./prefix-args because we don't know whether LD_SWITCH_X_SITE_AUX - has anything in it. It can be empty. - This works ok in temacs. */ -#define LD_SWITCH_SYSTEM_TEMACS -L/usr/ccs/lib \ - `./prefix-args -Xlinker LD_SWITCH_X_SITE_AUX` \ - `NOT_USING_MOTIF || echo ' -R/usr/dt/lib -L/usr/dt/lib'` - -/* Get rid of -traditional and let const really do its thing. */ -#undef C_SWITCH_SYSTEM -#undef const -#endif /* GCC */ - -/* Gregory Neil Shapiro <[email protected]> reports the Motif header files - are in this directory on Solaris 2.4. */ -#define C_SWITCH_X_SYSTEM -I/usr/dt/include - -/* arch-tag: 6f0de37b-cfda-427a-a5ae-b83ed54aaae7 - (do not change this comment) */ diff --git a/src/s/sol2-5.h b/src/s/sol2-5.h deleted file mode 100644 index 90163987e6..0000000000 --- a/src/s/sol2-5.h +++ /dev/null @@ -1,32 +0,0 @@ -/* Handle Solaris 2.5. */ - -#include "sol2-4.h" - -/* -lgen is needed for the regex and regcmp functions - which are used by Motif. In the future we can try changing - regex.c to provide them in Emacs, but this is safer for now. */ -#define LIB_MOTIF -lXm -lgen - -/* This is the only known way to avoid some crashes - that seem to relate to screwed up malloc data - after deleting a frame. */ -/* rms: I think the problems using ralloc had to do with system - libraries that called the system malloc even if we linked in the - GNU malloc. I could not see any way to fix the problem except to - have just one malloc and that had to be the system one. */ -/* This is not always necessary. Turned off at present for testers to - identify any problems with gmalloc more accurately. */ -/* #define SYSTEM_MALLOC */ - -/* There have problems reported with mmap at least on Solaris 2.6 - and 2.7. For simplicity, let's not use mmap for anything >= 2.5. - We can optimize this later. */ - -#undef USE_MMAP_FOR_BUFFERS - -/* Probably OK also on earlier versions. */ -#define GC_SETJMP_WORKS 1 -#define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS - -/* arch-tag: 96d65526-21c9-4547-a797-2bd575c05be7 - (do not change this comment) */ diff --git a/src/s/sol2-6.h b/src/s/sol2-6.h index a43443e48c..8cd0151187 100644 --- a/src/s/sol2-6.h +++ b/src/s/sol2-6.h @@ -1,11 +1,126 @@ -/* Handle Solaris 2.6. */ +/* Definitions file for GNU Emacs running on Solaris 2.6. -#include "sol2-5.h" + Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, + 2008, 2009, 2010 Free Software Foundation, Inc. -#if 0 /* dldump does not handle all the extensions used by GNU ld. */ -#undef UNEXEC -#define UNEXEC unexsol.o +This file is part of GNU Emacs. + +GNU Emacs is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +GNU Emacs is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ + +#include "usg5-4.h" + +#define SOLARIS2 + +/* This triggers a conditional in xfaces.c. */ +#define XOS_NEEDS_TIME_H + +#define POSIX + +#define LIBS_SYSTEM -lsocket -lnsl -lkstat + +/* Prefer kstat over kvm in getloadavg.c, kstat doesn't require root. + [email protected], 7/21/97. Don't redefine if already defined + (e.g., by config.h). */ +#ifndef HAVE_LIBKSTAT +#define HAVE_LIBKSTAT +#endif + +/* [email protected] says Solaris has a bug related to X11R6-style + XIM support. */ + +#define INHIBIT_X11R6_XIM + +/* Must use the system's termcap, if we use any termcap. + It does special things. */ + +#ifndef TERMINFO +#define LIBS_TERMCAP -ltermcap #endif +#ifndef __GNUC__ +/* eggert thinks all versions of SunPro C allowed this. */ +#define C_DEBUG_SWITCH -g -O +#endif /* GCC */ + +/* This is the same definition as in usg5-4.h, but with sigblock/sigunblock + rather than sighold/sigrelse, which appear to be BSD4.1 specific and won't + work if POSIX_SIGNALS is defined. It may also be appropriate for SVR4.x + (x<2) but I'm not sure. [email protected] */ +/* This sets the name of the slave side of the PTY. On SysVr4, + grantpt(3) forks a subprocess, so keep sigchld_handler() from + intercepting that death. If any child but grantpt's should die + within, it should be caught after sigrelse(2). */ + +#define PTY_TTY_NAME_SPRINTF \ + { \ + char *ptsname (), *ptyname; \ + \ + sigblock (sigmask (SIGCLD)); \ + if (grantpt (fd) == -1) \ + { emacs_close (fd); return -1; } \ + sigunblock (sigmask (SIGCLD)); \ + if (unlockpt (fd) == -1) \ + { emacs_close (fd); return -1; } \ + if (!(ptyname = ptsname (fd))) \ + { emacs_close (fd); return -1; } \ + strncpy (pty_name, ptyname, sizeof (pty_name)); \ + pty_name[sizeof (pty_name) - 1] = 0; \ + } + +/* `#ifdef USE_MOTIF' won't work here, since USE_MOTIF isn't defined yet. + Instead, dynamically check whether USE_MOTIF expands to something. */ +#define NOT_USING_MOTIF { set x USE_MOTIF; test "$$2" = "USE_MOTIF"; } + +#ifndef __GNUC__ +#define LD_SWITCH_SYSTEM_TEMACS -L/usr/ccs/lib LD_SWITCH_X_SITE_AUX \ + `NOT_USING_MOTIF || echo ' -R/usr/dt/lib'` +#else /* GCC */ +/* We use ./prefix-args because we don't know whether LD_SWITCH_X_SITE_AUX + has anything in it. It can be empty. + This works ok in temacs. */ +#define LD_SWITCH_SYSTEM_TEMACS -L/usr/ccs/lib \ + `./prefix-args -Xlinker LD_SWITCH_X_SITE_AUX` \ + `NOT_USING_MOTIF || echo ' -R/usr/dt/lib -L/usr/dt/lib'` + +/* Get rid of -traditional and let const really do its thing. */ +#undef C_SWITCH_SYSTEM +#undef const +#endif /* GCC */ + +/* Gregory Neil Shapiro <[email protected]> reports the Motif header files + are in this directory on Solaris 2.4. */ +#define C_SWITCH_X_SYSTEM -I/usr/dt/include + +/* -lgen is needed for the regex and regcmp functions + which are used by Motif. In the future we can try changing + regex.c to provide them in Emacs, but this is safer for now. */ +#define LIB_MOTIF -lXm -lgen + +/* This is the only known way to avoid some crashes + that seem to relate to screwed up malloc data + after deleting a frame. */ +/* rms: I think the problems using ralloc had to do with system + libraries that called the system malloc even if we linked in the + GNU malloc. I could not see any way to fix the problem except to + have just one malloc and that had to be the system one. */ +/* This is not always necessary. Turned off at present for testers to + identify any problems with gmalloc more accurately. */ +/* #define SYSTEM_MALLOC */ + +/* Probably OK also on earlier versions. */ +#define GC_SETJMP_WORKS 1 +#define GC_MARK_STACK GC_MAKE_GCPROS_NOOPS + /* arch-tag: 71ea3857-89dc-4395-9623-77964e6ed3ca (do not change this comment) */ diff --git a/src/s/unixware.h b/src/s/unixware.h index 934821dd16..9fedb42686 100644 --- a/src/s/unixware.h +++ b/src/s/unixware.h @@ -1,4 +1,71 @@ -#include "usg5-4-2.h" +/* s/ file for Unixware. + + Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, + 2008, 2009, 2010 Free Software Foundation, Inc. + +This file is part of GNU Emacs. + +GNU Emacs is free software: you can redistribute it and/or modify +it under the terms of the GNU General Public License as published by +the Free Software Foundation, either version 3 of the License, or +(at your option) any later version. + +GNU Emacs is distributed in the hope that it will be useful, +but WITHOUT ANY WARRANTY; without even the implied warranty of +MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +GNU General Public License for more details. + +You should have received a copy of the GNU General Public License +along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ + + +#include "usg5-4.h" + +/* [email protected] says these exist. */ +#define HAVE_TCATTR +/* #define HAVE_GETWD (appears to be buggy on SVR4.2) */ +#undef HAVE_GETWD + +#undef HAVE_SYSV_SIGPAUSE + +/* Motif needs -lgen. */ +#define LIBS_SYSTEM -lsocket -lnsl -lelf -lgen + +/* This is the same definition as in usg5-4.h, but with sigblock/sigunblock + rather than sighold/sigrelse, which appear to be BSD4.1 specific and won't + work if POSIX_SIGNALS is defined. It may also be appropriate for SVR4.x + (x<2) but I'm not sure. [email protected] */ +/* This sets the name of the slave side of the PTY. On SysVr4, + grantpt(3) forks a subprocess, so keep sigchld_handler() from + intercepting that death. If any child but grantpt's should die + within, it should be caught after sigrelse(2). */ + +#define PTY_TTY_NAME_SPRINTF \ + { \ + char *ptsname(), *ptyname; \ + \ + sigblock(sigmask(SIGCLD)); \ + if (grantpt(fd) == -1) \ + fatal("could not grant slave pty"); \ + sigunblock(sigmask(SIGCLD)); \ + if (unlockpt(fd) == -1) \ + fatal("could not unlock slave pty"); \ + if (!(ptyname = ptsname(fd))) \ + fatal ("could not enable slave pty"); \ + strncpy(pty_name, ptyname, sizeof(pty_name)); \ + pty_name[sizeof(pty_name) - 1] = 0; \ + } + +/* Use libw.a along with X11R6 Xt. */ +#define NEED_LIBW + +/* [email protected] (Richard Anthony Ryan) says -lXimp + is needed in UNIX_SV ... 4.2 1.1.2. */ +#define LIB_MOTIF -lXm -lXimp + +/* arch-tag: 9bbfcfc1-19be-45a1-9699-af57b87da2c6 + (do not change this comment) */ + #define PENDING_OUTPUT_COUNT(FILE) ((FILE)->__ptr - (FILE)->__base) diff --git a/src/s/usg5-4-2.h b/src/s/usg5-4-2.h deleted file mode 100644 index d7f2c60ffc..0000000000 --- a/src/s/usg5-4-2.h +++ /dev/null @@ -1,73 +0,0 @@ -/* s/ file for System V release 4.2. - - Copyright (C) 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, - 2008, 2009, 2010 Free Software Foundation, Inc. - -This file is part of GNU Emacs. - -GNU Emacs is free software: you can redistribute it and/or modify -it under the terms of the GNU General Public License as published by -the Free Software Foundation, either version 3 of the License, or -(at your option) any later version. - -GNU Emacs is distributed in the hope that it will be useful, -but WITHOUT ANY WARRANTY; without even the implied warranty of -MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -GNU General Public License for more details. - -You should have received a copy of the GNU General Public License -along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ - - -#include "usg5-4.h" - -/* [email protected] says these exist. */ -#define HAVE_TCATTR -/* #define HAVE_GETWD (appears to be buggy on SVR4.2) */ -#undef HAVE_GETWD - -/* Info from [email protected] suggests this is appropriate. */ -#define POSIX_SIGNALS - -/* We don't need the definition from usg5-3.h with POSIX_SIGNALS. */ -#undef sigsetmask -#undef HAVE_SYSV_SIGPAUSE - -/* Motif needs -lgen. */ -#define LIBS_SYSTEM -lsocket -lnsl -lelf -lgen - -/* This is the same definition as in usg5-4.h, but with sigblock/sigunblock - rather than sighold/sigrelse, which appear to be BSD4.1 specific and won't - work if POSIX_SIGNALS is defined. It may also be appropriate for SVR4.x - (x<2) but I'm not sure. [email protected] */ -/* This sets the name of the slave side of the PTY. On SysVr4, - grantpt(3) forks a subprocess, so keep sigchld_handler() from - intercepting that death. If any child but grantpt's should die - within, it should be caught after sigrelse(2). */ - -#undef PTY_TTY_NAME_SPRINTF -#define PTY_TTY_NAME_SPRINTF \ - { \ - char *ptsname(), *ptyname; \ - \ - sigblock(sigmask(SIGCLD)); \ - if (grantpt(fd) == -1) \ - fatal("could not grant slave pty"); \ - sigunblock(sigmask(SIGCLD)); \ - if (unlockpt(fd) == -1) \ - fatal("could not unlock slave pty"); \ - if (!(ptyname = ptsname(fd))) \ - fatal ("could not enable slave pty"); \ - strncpy(pty_name, ptyname, sizeof(pty_name)); \ - pty_name[sizeof(pty_name) - 1] = 0; \ - } - -/* Use libw.a along with X11R6 Xt. */ -#define NEED_LIBW - -/* [email protected] (Richard Anthony Ryan) says -lXimp - is needed in UNIX_SV ... 4.2 1.1.2. */ -#define LIB_MOTIF -lXm -lXimp - -/* arch-tag: 9bbfcfc1-19be-45a1-9699-af57b87da2c6 - (do not change this comment) */ diff --git a/src/s/usg5-4.h b/src/s/usg5-4.h index c611911b0e..180045cb7c 100644 --- a/src/s/usg5-4.h +++ b/src/s/usg5-4.h @@ -63,13 +63,7 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ /* Special hacks needed to make Emacs run on this system. */ -/* - * Make the sigsetmask function go away. Don't know what the - * ramifications of this are, but doesn't seem possible to - * emulate it properly anyway at this point. - */ - -#define sigsetmask(mask) /* Null expansion */ +#define POSIX_SIGNALS /* setjmp and longjmp can safely replace _setjmp and _longjmp, but they will run slower. */ @@ -176,27 +170,6 @@ along with GNU Emacs. If not, see <http://www.gnu.org/licenses/>. */ #define PTY_NAME_SPRINTF strcpy (pty_name, "/dev/ptmx"); -/* This sets the name of the slave side of the PTY. On SysVr4, - grantpt(3) forks a subprocess, so keep sigchld_handler() from - intercepting that death. If any child but grantpt's should die - within, it should be caught after sigrelse(2). */ - -#define PTY_TTY_NAME_SPRINTF \ - { \ - char *ptsname (), *ptyname; \ - \ - sighold (SIGCLD); \ - if (grantpt (fd) == -1) \ - { emacs_close (fd); return -1; } \ - sigrelse (SIGCLD); \ - if (unlockpt (fd) == -1) \ - { emacs_close (fd); return -1; } \ - if (!(ptyname = ptsname (fd))) \ - { emacs_close (fd); return -1; } \ - strncpy (pty_name, ptyname, sizeof (pty_name)); \ - pty_name[sizeof (pty_name) - 1] = 0; \ - } - /* Push various streams modules onto a PTY channel. */ #define SETUP_SLAVE_PTY \ diff --git a/src/unexec.c b/src/unexec.c index d1921069af..a1bb5460d3 100644 --- a/src/unexec.c +++ b/src/unexec.c @@ -630,7 +630,6 @@ mark_x (name) PERROR (name); } -#ifndef COFF_BSD_SYMBOLS /* * If the COFF file contains a symbol table and a line number section, @@ -699,8 +698,6 @@ adjust_lnnoptrs (writedesc, readdesc, new_name) return 0; } -#endif /* COFF_BSD_SYMBOLS */ - /* **************************************************************** * unexec * @@ -724,9 +721,7 @@ unexec (new_name, a_name, data_start, bss_start, entry_address) if (make_hdr (new, a_out, data_start, bss_start, entry_address, a_name, new_name) < 0 || copy_text_and_data (new, a_out) < 0 || copy_sym (new, a_out, a_name, new_name) < 0 -#ifndef COFF_BSD_SYMBOLS || adjust_lnnoptrs (new, a_out, new_name) < 0 -#endif ) { close (new); diff --git a/src/xfns.c b/src/xfns.c index 84d0d62220..45bea1e4ec 100644 --- a/src/xfns.c +++ b/src/xfns.c @@ -3376,7 +3376,12 @@ This function is an internal primitive--use `make-frame' instead. */) #endif "internalBorderWidth", "internalBorderWidth", RES_TYPE_NUMBER); - x_default_parameter (f, parms, Qvertical_scroll_bars, Qright, + x_default_parameter (f, parms, Qvertical_scroll_bars, +#if defined(USE_GTK) && defined(USE_TOOLKIT_SCROLL_BARS) + Qright, +#else + Qleft, +#endif "verticalScrollBars", "ScrollBars", RES_TYPE_SYMBOL); |