From: basile@soleil.serma.cea.fr (Basile STARYNKEVITCH)
Newsgroups: alt.lucid-emacs.help
Subject: Help: can't port Lucid-Emacs 19.3 on Solaris 2.0
Keywords: Solaris 2.0, Lemacs-19.3, SVR4
Date: 14 Oct 92 12:40:38 GMT
Reply-To: basile@soleil.serma.cea.fr (Basile STARYNKEVITCH)
Organization: Commissariat a l Energie Atomique

(i have already posted this question, but on a bugged newsserver; i'm
giving more details)

I have SunOS5.0 (fcs) on Sun IPC 4/40 and SS2 4/65 running
Openwin3.0.1.

SunOS5.0, ie Solaris2.0 is almost a superset of SVR4 on Sparc.

I wish very hard to have Lucid-Emacs 19.3 on it, but i couldn't do it
(i tried to write my own Solaris configuration file, but it failed).

Did anybody made a port of Lemacs 19.3 to SVR4 or Solaris??

My C compiler is gcc-2.2.2, but i could use (if needed) Sun unbundled
ansic C 3.0 for Solaris.

How could i make the port ??

Please email and/or post to basile@soleil.serma.cea.fr.

Thank you.

Now my src/config.h and src/s/s-sunos5.h files are:::


here is my diff src/config.h src/config.h-dist (where src/config.h-dist is the distributed config file for SunOS4):
############ diff src/config.h src/config.h-dist ############
43c43
< #include "s/s-sunos5.h"
---
> #include "s/s-sunos4.h"
118,121c118,121
< /* #ifdef SYSTEM_MALLOC  -- defined in s-sunos5 */
< /* #undef SYSTEM_MALLOC */
< /* #endif */
< /* #define GNU_MALLOC */
---
> #ifdef SYSTEM_MALLOC
> #undef SYSTEM_MALLOC
> #endif
> #define GNU_MALLOC
167,169d166
< #ifndef index
< #define index strchr
< #endif	/* index */
171,173d167
< #ifndef rindex
< #define rindex strrchr
< #endif	/* rindex */
175,176d168
< #undef USE_SOUND
< 
179,181d170
< #undef USE_SOUND
< 
< 
189c178
< #define LWLIB_USES_OLIT
---
> /* #define LWLIB_USES_OLIT */
199,200d187
< #define LD_SWITCH_SITE -L${OPENWINHOME}/lib
< 
208,209d194
< #define C_SWITCH_SITE -I${OPENWINHOME}/include
< 
233,235c218,221
< /* #ifdef sparc */
< /* #define OBJECTS_SYSTEM sunOS-fix.o strcmp.o strcpy.o */
< /* #endif */
---
> #ifdef sparc
> #define OBJECTS_SYSTEM sunOS-fix.o strcmp.o strcpy.o
> #endif
> 


############ Here is my src/s/s-sunos5.h  #####################

/* Basile write for Lucid Emacs 19.3 on SunOS5 Beta on Sparc -Sun4/40- this system config
 * file src/s/s-sunos5.h */


/* Template for s- header files. This file describes the parameters that s- files should
 * define or not. Copyright (C) 1985, 1986 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 1, 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;
 * see the file COPYING.  If not, write to the Free Software Foundation, 675 Mass Ave,
 * Cambridge, MA 02139, USA.  */


/* Define symbols to identify the version of Unix this is. Define all the symbols that
 * apply correctly. */

/* #define UNIPLUS */
#define USG5
#define USG
/* #define HPUX */
/* #define UMAX */
/* #define BSD4_1 */
/* #define BSD4_2 */
/* #define BSD4_3 */
/* #define BSD */
/* #define VMS */

/* SYSTEM_TYPE should indicate the kind of system you are using. It sets the Lisp
 * variable system-type.  */

#define SYSTEM_TYPE "SunOS5-unix"

/* NOMULTIPLEJOBS should be defined if your system's shell does not have "job control"
 * (the ability to stop a program, run some other program, then continue the first one).  */

/* #define NOMULTIPLEJOBS */

/* Emacs can read input using SIGIO and buffering characters itself, or using CBREAK mode
 * and making C-g cause SIGINT. The choice is controlled by the variable interrupt_input.
 * Define INTERRUPT_INPUT to make interrupt_input = 1 the default (use SIGIO)
 * 
 * SIGIO can be used only on systems that implement it (4.2 and 4.3). CBREAK mode has two
 * disadvatages 1) At least in 4.2, it is impossible to handle the Meta key properly. I
 * hear that in system V this problem does not exist. 2) Control-G causes output to be
 * discarded. I do not know whether this can be fixed in system V.
 * 
 * Another method of doing input is planned but not implemented. It would have Emacs fork
 * off a separate process to read the input and send it to the true Emacs process through
 * a pipe. */

#define INTERRUPT_INPUT

/* Letter to use in finding device name of first pty, if system supports pty's.  'a'
 * means it is /dev/ptya0  */

#define FIRST_PTY_LETTER 'p'

/* Define HAVE_TIMEVAL if the system supports the BSD style clock values. Look in
 * <sys/time.h> for a timeval structure. */

#define HAVE_TIMEVAL

/* Define HAVE_SELECT if the system supports the `select' system call. */

#define HAVE_SELECT

/* Define HAVE_PTYS if the system supports pty devices. */

#define HAVE_PTYS
/* #define SYSV_PTYS */

/* Define NONSYSTEM_DIR_LIBRARY to make Emacs emulate The 4.2 opendir, etc., library
 * functions. */

/* #define NONSYSTEM_DIR_LIBRARY */

/* Define this symbol if your system has the functions bcopy, etc. */

/* #define BSTRING */

/* subprocesses should be defined if you want to have code for asynchronous subprocesses
 * (as used in M-x compile and M-x shell). This is generally OS dependent, and not
 * supported under most USG systems. */

#define subprocesses

/* If your system uses COFF (Common Object File Format) then define the preprocessor
 * symbol "COFF". */

/* #define COFF */

/* define MAIL_USE_FLOCK if the mailer uses flock to interlock access to
 * /usr/spool/mail/$USER. The alternative is that a lock file named
 * /usr/spool/mail/$USER.lock.  */

/* #define MAIL_USE_FLOCK */

/* Define CLASH_DETECTION if you want lock files to be written so that Emacs can tell
 * instantly when you try to modify a file that someone else has modified in his Emacs.  */

#define CLASH_DETECTION

/* Here, on a separate page, add any special hacks needed to make Emacs work on this
 * system.  For example, you might define certain system call names that don't exist on
 * your system, or that do different things on your system and must be used only through
 * an encapsulation (Which you should place, by convention, in sysdep.c).  */


/* Some compilers tend to put everything declared static into the initialized data area,
 * which becomes pure after dumping Emacs. On these systems, you must #define static as
 * nothing to foil this. Note that emacs carefully avoids static vars inside functions.  */

/* #define static */

/* The file containing the kernel's symbol table is called /unix.  */

#define KERNEL_FILE "/kernel/unix"

/* The symbol in the kernel where the load average is found is named avenrun.  */

#define LDAV_SYMBOL "avenrun"

/* Define this if system V IPC is available.  */

#define HAVE_SYSVIPC

/* On USG systems these have different names */

#define index strchr
#define rindex strrchr

#ifdef __GNUC__
#define LD_SWITCH_SYSTEM -e __start -static
#else
#define LD_SWITCH_SYSTEM -e __start -Bstatic
#endif


/* X needs to talk on the network, so search the network library.  */

#define LIBX10_SYSTEM -lnsl -lsocket

/* In SunOS 4.1, a static function called by tzsetwall reportedly clears the byte just
 * past an eight byte region it mallocs, corrupting GNU malloc's memory pool.  But Sun's
 * malloc doesn't seem to mind. */

#define SYSTEM_MALLOC

/* Sun4s running SunOS 4+ usually have sound support. */
#define USE_SOUND


-- 
Basile STARYNKEVITCH
Commissariat a l Energie Atomique
DRN/DMT/SERMA * C.E. Saclay bat.470 * 91191 GIF/YVETTE CEDEX * France
fax: (33) 1- 69.08.23.81;    phone: (33) 1- 69.08.40.66
email: basile@soleil.serma.cea.fr;  homephone: (33) 1- 46.65.45.53
N.B. Any opinions expressed here are solely mine, and not of my organization.
N.B. Les opinions exprimees ici me sont personnelles et n engagent pas le CEA.
x-gateway: rodan.UU.NET from help-lucid-emacs to alt.lucid-emacs.help; Wed, 14 Oct 1992 04:29:50 EDT
From: djh@CIS.Prime.COM (David Hughes)
Subject: Re: ispell version with lucid 19.3
Date: Wed, 14 Oct 1992 08:29:51 GMT
Newsgroups: alt.lucid-emacs.help