🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: gnu.emacs.bug
Article #87919

emacs-19.25 proper solaris 2.3 configuration

#87919
From: David Robinson
Date: Thu, 11 Aug 1994 00:29
66 lines
3124 bytes
Problem:
 emacs 19.25 is incorrectly configured for sparc-sun-solaris-2.3, but
the configuration compilation flags hide the problems. Specifically, it uses
the wrong model for the signal mask routines (sigprocmask and friends).

Description:
src/s/sol2.h contains:
/* Compile in non-ansi fashion to work around bugs in system header files.  */
#ifndef __GNUC__
#define C_SWITCH_SYSTEM -Xs
#else /* GCC */
#define C_SWITCH_SYSTEM -traditional
#endif /* GCC */
#define const

This comment surprised me, so I tried compiling in ansi mode. (-Xa or -ansi
as appropriate). I discovered that this was hiding several severe compilation
problems. Most notably that the solaris 2(.3) configuration of emacs
had an incorrect model for the signal mask routines. Solaris 2.3 is posix
and takes a pointer to an int array for the mask; emacs was passing a
single integer value. I do not know of any specific problems that this
might have caused.

My mods to get a working solaris 2.3 ansi configuration ended up with a
config file that was very close to src/s/usg5-4-2.h.

So here is a working solaris 2.3 configuration. I think that this should
really be the default solaris 2 config file, with specific mods for ealier
solaris 2 versions.

 David Robinson.

Wed Aug 10 20:37:28 1994  David Robinson  (drtr@mail.ast.cam.ac.uk)

	* s/sol2-3.h: Complete rewrite to fix signal problems; Solaris
	is posix-like.
--------- begin file s/sol2-3.h -------
#include "usg5-4-2.h"

/* either define this, or fix the type of the vfork() stub to be pid_t
   rather than int */
#define HAVE_VFORK

/* eggert@twinsun.com said these work in Solaris.
   Perhaps they work in all kinds of SVR4, but this is more conservative.  */
#undef BROKEN_TIOCGETC
#undef BROKEN_TIOCGWINSZ

/* This triggers a conditional in xfaces.c.  */
#define XOS_NEEDS_TIME_H

#define POSIX

/* Solaris 2.3 has a bug in XListFontsWithInfo.  */
#define BROKEN_XLISTFONTSWITHINFO

#ifndef __GNUC__
#define LD_SWITCH_SYSTEM -L /usr/ccs/lib LD_SWITCH_X_SITE_AUX
#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 */
--------- end file s/sol2-3.h -------
Technical Details
Message-ID: <m0qYJVB-0000yuC@coral.ast.cam.ac.uk>
Path: arc1-ca.pugleaf.net!bga.com!news.sprintlink.net!primenet!netnews.asu.edu !asuvax!cs.utexas.edu!math.ohio-state.edu!magnus.acs.ohio-state.edu!cis.ohio-state.edu!mail.ast.CAm.ac.UK!drtr

Show Full Headers
Complete Article Headers
X-Google-Language: ENGLISH,ASCII-7-bit
X-Google-Thread: fb2f1,6205aaf7b2f40d2a,start
X-Google-Attributes: gidfb2f1,public
X-Google-ArrivalTime: 1994-08-11 15:23:23 PST
Path: arc1-ca.pugleaf.net!bga.com!news.sprintlink.net!primenet!netnews.asu.edu      !asuvax!cs.utexas.edu!math.ohio-state.edu!magnus.acs.ohio-state.edu!cis.ohio-state.edu!mail.ast.CAm.ac.UK!drtr
From: drtr@mail.ast.CAm.ac.UK (David Robinson)
Newsgroups: gnu.emacs.bug
Subject: emacs-19.25 proper solaris 2.3 configuration
Date: 10 Aug 1994 20:29:59 -0400
Organization: GNUs Not Usenet
Lines: 67
Sender: daemon@cis.ohio-state.edu
Approved: bug-gnu-emacs@prep.ai.mit.edu
Distribution: gnu
Message-ID: <m0qYJVB-0000yuC@coral.ast.cam.ac.uk>