home *** CD-ROM | disk | FTP | other *** search
- Xref: sparky comp.unix.solaris:186 comp.unix.shell:3657
- Newsgroups: comp.unix.solaris,comp.unix.shell
- Path: sparky!uunet!mcsun!sunic!nobeltech!ppan
- From: ppan@nobeltech.se (Per Andersson)
- Subject: tcsh for Solaris 2.0 !
- Message-ID: <1992Aug27.104228.19818@nobeltech.se>
- Organization: NobelTech AB
- Date: Thu, 27 Aug 1992 10:42:28 GMT
- Lines: 282
-
-
- Since I haven't seen anything about tcsh for the new Solaris 2.0 I thought
- I'd share this with you. Usual restrictions apply. It works for me.
-
- # This is a shell archive. Remove anything before this line,
- # then unpack it by saving it in a file and typing "sh file".
- #
- # Wrapped by nobeltech!ppan on Thu Aug 27 12:24:56 MET DST 1992
- # Contents: config.sunos50 tcsh.sunos50.diff
-
- echo x - config.sunos50
- sed 's/^@//' > "config.sunos50" <<'@//E*O*F config.sunos50//'
- /*
- * config.h -- configure various defines for tcsh
- *
- * All source files should #include this FIRST.
- *
- * Edit this to match your system type.
- */
-
- /****************** System dependant compilation flags ****************/
- /*
- * POSIX This system supports IEEE Std 1003.1-1988 (POSIX).
- */
- #define POSIX
-
- /*
- * POSIXJOBS This system supports the optional IEEE Std 1003.1-1988 (POSIX)
- * job control facilities.
- */
- #define POSIXJOBS
-
- /*
- * VFORK This machine has a vfork().
- * It used to be that for job control to work, this define
- * was mandatory. This is not the case any more.
- * If you think you still need it, but you don't have vfork,
- * define this anyway and then do #define vfork fork.
- * I do this anyway on a Sun because of yellow pages brain damage,
- * [should not be needed under 4.1]
- * and on the iris4d cause SGI's fork is sufficiently "virtual"
- * that vfork isn't necessary. (Besides, SGI's vfork is weird).
- * Note that some machines eg. rs6000 have a vfork, but not
- * with the berkeley semantics, so we cannot use it there either.
- */
- #undef VFORK
-
- /*
- * BSDJOBS You have BSD-style job control (both process groups and
- * a tty that deals correctly
- */
- #define BSDJOBS
-
- /*
- * BSDSIGS You have 4.2-style signals, rather than USG style.
- * Note: POSIX systems should not define this unless they
- * have sigvec() and friends (ie: 4.3BSD-RENO, HP-UX).
- */
- #undef BSDSIGS
-
- /*
- * BSDTIMES You have BSD-style process time stuff (like rusage)
- * This may or may not be true. For example, Apple Unix
- * (OREO) has BSDJOBS and BSDSIGS but not BSDTIMES.
- */
- #undef BSDTIMES
-
- /*
- * BSDNICE Your system uses setpriority() instead of nice, to
- * change a processes scheduling priority
- */
- #undef BSDNICE
-
- /*
- * TERMIO You have struct termio instead of struct sgttyb.
- * This is usually the case for SYSV systems, where
- * BSD uses sgttyb. POSIX systems should define this
- * anyway, even though they use struct termios.
- */
- #define TERMIO
-
- /*
- * SYSVREL Your machine is SYSV based (HPUX, A/UX)
- * NOTE: don't do this if you are on a Pyramid -- tcsh is
- * built in a BSD universe.
- * Set SYSVREL to 1, 2, or 3, depending the version of System V
- * you are running. Or set it to 0 if you are not SYSV based
- */
- #define SYSVREL 4
-
- /*
- * YPBUGS Work around Sun YP bugs that cause expansion of ~username
- * to send command output to /dev/null
- */
- #undef YPBUGS
-
- /*
- * SIGVOID Define this if your signal handlers return void. On older
- * systems, signal returns int, but on newer ones, it returns void.
- */
- #define SIGVOID
-
- /*
- * HAVEDUP2 Define this if your system supports dup2().
- */
- #define HAVEDUP2
-
- /*
- * HAVEUTMPX Define if you have extended utmp (utmpx).
- * (common for svr4 systems)
- */
- #define HAVEUTMPX
-
- /*
- * UTHOST Does the utmp file have a host field?
- */
- #ifdef HAVEUTMPX
- # define UTHOST
- #else
- # undef UTHOST
- #endif /* HAVEUTMPX */
-
- /*
- * DIRENT Your system has <dirent.h> instead of <sys/dir.h>
- */
- #define DIRENT
-
- /*
- * ECHO_STYLE Optionally change the behavior of the builtin echo
- * BOTH_ECHO: Support both bsd options (-n) and sysv escapes (\nnn)
- * BSD_ECHO: Support only -n
- * SYSV_ECHO: Support only sysv escapes (\nnn)
- * NONE_ECHO: Pure echo.
- */
- #define ECHO_STYLE BSD_ECHO /* BSD options only */
-
- /****************** local defines *********************/
- #ifndef BSDTIMES
- # define NEEDgethostname
- #endif
- /*
- * Shadow passwd file
- */
- #define PW_SHADOW
-
- #define SUNOS50
- /****************** configurable hacks ****************/
- /* have been moved to config_f.h */
- #include "config_f.h"
-
- @//E*O*F config.sunos50//
- chmod u=rw,g=r,o=r config.sunos50
-
- echo x - tcsh.sunos50.diff
- sed 's/^@//' > "tcsh.sunos50.diff" <<'@//E*O*F tcsh.sunos50.diff//'
- diff -c -r tcsh-6.02/sh.sem.c tcsh-6.02.sunos50/sh.sem.c
- *** tcsh-6.02/sh.sem.c Sat May 16 02:00:42 1992
- --- tcsh-6.02.sunos50/sh.sem.c Thu Aug 27 12:09:54 1992
- ***************
- *** 51,57 ****
-
- #ifdef sparc
- # ifndef MACH
- ! # include <vfork.h>
- # endif /* !MACH */
- #endif /* sparc */
-
- --- 51,59 ----
-
- #ifdef sparc
- # ifndef MACH
- ! # ifndef SUNOS50
- ! # include <vfork.h>
- ! # endif /* !SUNOS50 */
- # endif /* !MACH */
- #endif /* sparc */
-
- diff -c -r tcsh-6.02/sh.time.c tcsh-6.02.sunos50/sh.time.c
- *** tcsh-6.02/sh.time.c Sat May 16 02:00:42 1992
- --- tcsh-6.02.sunos50/sh.time.c Thu Aug 27 12:10:11 1992
- ***************
- *** 38,44 ****
-
- RCSID("$Id: sh.time.c,v 3.7 1992/04/03 22:15:14 christos Exp $")
-
- ! #if defined(sun) && ! defined(MACH)
- # include <machine/param.h>
- #endif /* sun */
-
- --- 38,44 ----
-
- RCSID("$Id: sh.time.c,v 3.7 1992/04/03 22:15:14 christos Exp $")
-
- ! #if defined(sun) && ! defined(MACH) && ! defined(SUNOS50)
- # include <machine/param.h>
- #endif /* sun */
-
- diff -c -r tcsh-6.02/sh.types.h tcsh-6.02.sunos50/sh.types.h
- *** tcsh-6.02/sh.types.h Sat May 16 02:00:51 1992
- --- tcsh-6.02.sunos50/sh.types.h Thu Aug 27 12:11:12 1992
- ***************
- *** 66,71 ****
- --- 66,72 ----
- # ifndef _SIZE_T
- # define _SIZE_T
- # endif /* _SIZE_T */
- + #ifndef SUNOS50
- # ifndef __sys_stdtypes_h
- # define __sys_stdtypes_h
- typedef int pid_t;
- ***************
- *** 89,94 ****
- --- 90,97 ----
- # endif /* _GID_T */
- # endif /* !MACH */
- # endif /* !SUNOS4 */
- + #endif /* !SUNOS50 */
- +
- #endif /* sun */
-
-
- ***************
- *** 134,140 ****
- --- 137,145 ----
- extern void perror();
- extern void _exit();
- extern void abort();
- + #ifndef SUNOS50
- extern void qsort();
- + #endif /* !SUNOS50 */
- extern void free();
- extern unsigned int alarm();
- extern unsigned int sleep();
- diff -c -r tcsh-6.02/tc.os.h tcsh-6.02.sunos50/tc.os.h
- *** tcsh-6.02/tc.os.h Sat May 16 02:00:50 1992
- --- tcsh-6.02.sunos50/tc.os.h Thu Aug 27 12:12:42 1992
- ***************
- *** 380,386 ****
- --- 380,388 ----
- extern int abort();
- # endif /* __GNUC__ != 2 */
- # ifndef fps500
- + # ifndef SUNOS50
- extern int qsort();
- + # endif /* !SUNOS50 */
- # endif /* fps500 */
- # else
- extern void abort();
- ***************
- *** 446,452 ****
- --- 448,456 ----
- # if !defined(POSIXJOBS) && !defined(_SEQUENT_)
- extern int wait3();
- # else /* POSIXJOBS || _SEQUENT_ */
- + # ifndef SUNOS50
- extern int waitpid();
- + # endif /* !SUNOS50 */
- # endif /* POSIXJOBS || _SEQUENT_ */
- # endif /* ! BSDTIMES */
- # else /* !BSDJOBS */
- ***************
- *** 499,505 ****
- --- 503,511 ----
- * Somehow these are missing
- */
- extern int ioctl __P((int, int, ...));
- + # ifndef SUNOS50
- extern int readlink __P((const char *, char *, size_t));
- + # endif /* !SUNOS50 */
- # endif /* sun && __GNUC__ == 2 */
-
- #ifdef linux
-
- @//E*O*F tcsh.sunos50.diff//
- chmod u=rw,g=r,o=r tcsh.sunos50.diff
-
- exit 0
- --
- -----------------------------------------------------------------------------
- Per Andersson - ppan@nobeltech.se (perand@stacken.kth.se on free time)
- Managing networks at, but not speaking for Nobeltech AB, J{rf{lla, Sweden
- -----------------------------------------------------------------------------
-