summaryrefslogtreecommitdiffstats
path: root/contrib/nvi/build/README.LynxOS
diff options
context:
space:
mode:
Diffstat (limited to 'contrib/nvi/build/README.LynxOS')
-rw-r--r--contrib/nvi/build/README.LynxOS320
1 files changed, 0 insertions, 320 deletions
diff --git a/contrib/nvi/build/README.LynxOS b/contrib/nvi/build/README.LynxOS
deleted file mode 100644
index 2cc68da..0000000
--- a/contrib/nvi/build/README.LynxOS
+++ /dev/null
@@ -1,320 +0,0 @@
-README.LynxOS
-=============
-
-Written by Ronald F. Guilmette <rfg@monkeys.com>
-
-Last modified Wed Aug 14 23:10:07 PDT 1996
-------------------------------------------
-
-0. Introduction
----------------
-
-This file describes how to build and install the Berkeley nvi editor for
-the LynxOS 2.4.0 operating system.
-
-LynxOS 2.4.0 is available for a variety of different hardware platforms, in
-particular, x86, m680x0, Sparc, and PowerPC. I have successfully built nvi
-on all four of these flavors of LynxOS by following the procedures given in
-this file.
-
-Note that these procedures may not work on versions of LynxOS prior to 2.4.0.
-(As I understand it, a good deal of work went into making the 2.4.0 release
-more POSIX-compliant, and I have no idea what build glitches, if any, you
-might encounter if you try to build nvi on a pre-2.4.0 version of LynxOS.)
-
-There are basically four steps to configuring, building, and installing nvi
-on LynxOS, namely:
-
- 1. Get setup to use the proper C compiler.
- 2. Replace your installed `tr' program.
- 3. Fix your system include files.
- 4. Do a normal configure, build, and install of nvi.
-
-These steps are described in separate sections below.
-
-1. Get Setup to Use the Proper C Compiler
-------------------------------------------
-
-The first step when building nvi on LynxOS is to set your $PATH environment
-variable properly so that the gcc 2.x compiler appears first on your path,
-prior to the older (and less robust) gcc 1.xx compiler (typically installed
-as /bin/gcc) and/or the old Lynx proprietary C compiler (typically installed
-as /bin/cc), both of which may also be present on your system.
-
-Note that for most operating systems, the configure script for nvi tries
-to use whatever compiler you have installed (and in your $PATH) as "cc",
-however in the special case of LynxOS, the configure script will auto-
-matically try to find a "gcc" program on your $PATH in preference to a
-compiler called "cc". If the nvi configure script only find a compiler
-called "cc", that's OK. It will still try to see if that is really just
-the GNU C compiler installed under the name "cc".
-
-Regardless of the name however (be it "gcc" or "cc") the first C compiler
-in your $PATH should be some _recent_ (i.e. 2.0 or later) version of the
-GNU C compiler... and the nvi configure script now checks that this is the
-case, and fails if it isn't.
-
-Oddly enough, LynxOS 2.4.0 (and some prior versions) shipped with as many
-as three different C compilers installed, so it is important to set your
-$PATH environment variable carfully in order to get the proper C compiler
-to appear first in your $PATH. You want to avoid having either the /bin/gcc
-compiler or the /bin/cc compiler be the first C compiler in your $PATH.
-
-To make sure that the GNU C version 2.x compiler which was shipped with your
-LynxOS system appears first on your path, you will need to either set your
-$PATH variable (for sh/bash/ksh users) or your $path variable (for csh/tcsh
-users). You can, of course, just do this at the shell command prompt, but
-it is probably better to actually edit this change into your .profile file
-(for sh/bash/ksh users) or into your .cshrc file (for csh/tcsh users).
-
-The pathname of the directory that contains the GNU C version 2.x compiler
-is (unfortunately) dependent upon the exact type of LynxOS system you have.
-
-For LynxOS 2.4.0 on x86 systems, gcc 2.x is located in:
-
- /cygnus/94q4-lynxos-x86/bin
-
-For LynxOS 2.4.0 on m680x0 systems, gcc 2.x is located in:
-
- /cygnus/94q4-lynxos-68k/bin
-
-For LynxOS 2.4.0 on Sparc systems, gcc 2.x is located in:
-
- /cygnus/94q4-lynxos-usparc/bin
-
-For LynxOS 2.4.0 on PowerPC systems, gcc 2.x is located in:
-
- /cygnus/95q2-lynxos-ppc/bin
-
-(Note also that these locations may change in LynxOS 2.5.x and beyond.)
-
-Anyway, it is imperative that you setup your $PATH environment variable
-(*before* you do the configure step for nvi) so that the GNU C version 2.x
-compiler appears in your $PATH before either the /bin/cc or /bin/gcc
-compilers (if present). If you fail to do this, the configure step for
-nvi will fail, because the compiler script actually checks (now) that the
-compiler you are using (if your are on a LynxOS system) is gcc 2.0 or
-later.
-
-To make absolutely sure that you will be configuring and building nvi with
-the proper C compiler (i.e. the GNU C version 2.x compiler on your system)
-you should add the directory name listed above for your specific system type
-to your $PATH setting in your $HOME/.profile file. (For csh/tcsh users, you
-will instead want to add the relevant directory name to the setting of your
-$path variable in your ~/.cshrc file.) Once you have added the proper direc-
-tory name (from the list given above) to your $HOME/.profile file (or to your
-~/.cshrc file, if you are using csh or tcsh) you should log out completely
-and then log back into the system just to make sure your new $PATH/$path
-setting takes effect properly.
-
-When you finish making this adjustment to your $PATH (or $path), the most
-up-to-date version of gcc on your system should be available to you as the
-first `gcc' program on your $PATH. You should verify that this is indeed the
-case simply by typing `gcc -v' and then checking the version number reported
-by the compiler. It should say either "2.6-94q4" or (on PowerPC systems) it
-should say "2.6-95q2". If you don't get these results, try again to set your
-$PATH (or $path) until you do. You won't be able to build nvi until you are
-properly setup to use gcc version 2.0 or later.
-
-Performing the steps shown above will insure that your subsequent configura-
-tion and build steps for nvi will make use of the most up-to-date version of
-gcc that was shipped with your Lynx operating system. (Note that the versions
-of gcc which are currently shipping with LynxOS 2.4.0 are also somewhat out-
-of-date themselves, but they are still quite a bit newer and more bug-free
-and ANSI conformant that those other two C compilers, /bin/cc and /bin/gcc,
-which also ship with LynxOS 2.4.0.)
-
-(Note: At present, LynxOS version 2.4.0 is the latest officially released
-version of LynxOS, and all of the above information is accurate and correct
-for LynxOS 2.4.0 as of the time of this writing. However it is rumored that
-future releases of LynxOS may provide a still newer version of gcc, and that
-it may be located in the /usr/bin directory. Thus, if you are building nvi
-for some LynxOS version later than 2.4.0, you may wish to check and see if
-your system has a program called /usr/bin/gcc, and use that version of gcc,
-if available, rather than the one suggested above.)
-
-2. Replace Your Installed `tr' Program
----------------------------------------
-
-The `tr' program which comes bundled with LynxOS 2.4.0 (as /bin/tr) has a
-somewhat obscure bug which just happens to be tickled by almost all GNU
-`autoconf' generated `configure' scripts (including the one that nowadays
-comes bundled with nvi). Using the stock /bin/tr program on LynxOS when
-executing such `configure' scripts _will_ cause these scripts to malfunction
-in various ways. It is therefore imperative that you replace your LynxOS
-/bin/tr program with a properly working version of the `tr' command _before_
-you even try to configure nvi. (You can tell if your `tr' program has the
-bug by executng the command "echo ab- | tr ab- ABC". If this yields the
-string "Ab-" then you have the bug. If it yields "ABC" then you don't.)
-
-You can obtain sources for a working version of the `tr' command as part of
-the GNU `textutils' package (the latest version of which, at the time of this
-writing, is 1.19). The GNU textutils package is available for downloading
-from prep.ai.mit.edu in the pub/gnu directory. Look for the file named
-textutils-1.19.tar.gz, or an even more recent version of textutils, if one
-is available. Fetch it, gunzip it, untar it, and follow the directions in
-the INSTALL file included in the tar file to build and install the entire
-textutils set of utility programs (which includes a working `tr' program).
-Then just make sure that the GNU version of `tr' appears on your $PATH
-_before_ the LynxOS version of `tr' (i.e. /bin/tr). Be sure to do this
-step _before_ you start to configure nvi.
-
-When building the textutils set of programs, I suggest that you use the most
-up-to-date C compiler available on your system (as described above). Also,
-note that it will be important for you to AVOID using the -O (optimize)
-compiler option when building the GNU textutils package, even if you are
-using the most up-to-date version of gcc which shipped with your system.
-If you try to use -O when building the textutils package on an x86 with
-the Cygnus 94q4 C compiler, you will end up with a `tr' program which will
-malfunction even worse than the one you are trying to replace! If you use
--O when building the textutils package on LynxOS on the PowerPC (using the
-Cygnus 95q2 C compiler) you will just get yourself a compiler crash. So
-just don't use -O when building textutils. You can avoid using -O by in-
-voking make in the textutils directory as follows:
-
- make CFLAGS="-g"
-
-(Note: At present, LynxOS version 2.4.0 is the latest officially released
-version of LynxOS, and all of the above information is accurate and correct
-for LynxOS 2.4.0 as of the time of this writing. However it is rumored that
-the bug in the /bin/tr program will be fixed in future releases of LynxOS,
-so if you have a version of LynxOS later than 2.4.0, you may wish to check
-and see if your /bin/tr program even has the problematic bug before bothering
-with all of this.)
-
-
-3. Fix Your System Include Files
----------------------------------
-
-If you are building nvi on a PowerPC system, it is also important that you
-apply the patches given at the end of this file to your /usr/include files.
-(Note that you will have to be root in order to do this.) Two of the patches
-included below fix a pair of serious bugs in the /usr/include/stdarg.h file
-on the PowerPC, and you really _do_ want to have these bugs fixed anyway,
-because without these fixes, anything that you compile which uses <stdarg.h>
-will very likely malfunction at run-time.
-
-Regardless of which LynxOS platform you are using (i.e. x86, PowerPC, Sparc,
-or m680x0) you may want to apply all of the system include files patches that
-are included below anyway. Doing so will clean up a few minor problems with
-the relevant system include files (i.e. <stdarg.h>, <ioctl.h>, and <wait.h>)
-and this step will also prevent a few warnings which you would otherwise get
-during the build of nvi.
-
-You can apply all of the patches given at the end of this file simply by
-doing the following:
-
- su root
- cd /usr/include
- /bin/patch < this-file
-
-Where `this-file' is the actual full pathname of the file you are now reading,
-wherever it may reside on your own system.
-
-(Note: At present, LynxOS version 2.4.0 is the latest officially released
-version of LynxOS, and all of the above information is accurate and correct
-for LynxOS 2.4.0 as of the time of this writing. However it is rumored that
-future releases of LynxOS may incorporate some or all of the important system
-include file fixes provided below. Thus, if you are building nvi for some
-LynxOS version later than 2.4.0, you should probably go ahead and try to
-apply the patches given below to your system include files, and then just
-don't worry about it if these patches seem to have already been applied.)
-
-
-4. A Brief Note about Sendmail
--------------------------------
-
-I should mention also that LynxOS does not normally ship with the `sendmail'
-mail transfer program installed, either under /usr/lib/ or anywhere else for
-that matter. This isn't really a big problem, but nvi normally wants and
-expects to have a sendmail program available so that it can send users notifi-
-cations (by mail) whenever a partially edited file is preserved by the editor
-in response to a sudden system crash, a sudden system shutdown, or an unexpect-
-ed serial-line hangup. You can configure and build nvi without any sendmail
-program installed on your system, but you will get warnings about its absence
-when you are doing the initial configure step prior to actually building nvi.
-If you want to have a fully-functional nvi which does send out notification
-messages (by mail) whenever partially edited files are preserved during a
-serial line hangup or system crash, then you should get the BSD sendmail
-sources (via ftp from ftp.cs.berkeley.edu), build and install sendmail, and
-then reconfigure, rebuild, and reinstall nvi.
-
-Please contact me at the E-mail address below if you experience any problems in
-building or using nvi on LynxOS. I make no guarrantees, but I may be willing
-to try to help.
-
-Ron Guilmette
-Roseville, California
-<rfg@monkeys.com>
-August 14, 1996
-
-
-cut here for LynxOS 2.4.0 system include files patches
------------------------------------------------------------------------------
-*** wait.h Fri Apr 26 10:02:45 1996
---- wait.h Sun May 19 05:36:50 1996
-***************
-*** 94,104 ****
- /* Function prototypes */
- #ifndef __LYNXOS
-- #ifdef _POSIX_SOURCE
- extern pid_t wait _AP((int *));
- extern pid_t waitpid _AP((pid_t, int *, int));
-! #else
-! extern int wait _AP((union wait *));
-! extern int waitpid _AP((int, union wait *, int));
-! extern int wait3 _AP((union wait *, int, struct rusage *));
- #endif
- #endif /* !__LYNXOS */
---- 94,101 ----
- /* Function prototypes */
- #ifndef __LYNXOS
- extern pid_t wait _AP((int *));
- extern pid_t waitpid _AP((pid_t, int *, int));
-! #ifndef _POSIX_SOURCE
-! extern int wait3 _AP((int *, int, struct rusage *));
- #endif
- #endif /* !__LYNXOS */
-*** ioctl.h Fri Apr 26 16:50:51 1996
---- ioctl.h Sat May 18 17:55:16 1996
-***************
-*** 572,576 ****
-
- #ifndef __LYNXOS
-! extern int ioctl _AP((int, int, char *));
- #endif
-
---- 572,576 ----
-
- #ifndef __LYNXOS
-! extern int ioctl _AP((int, int, ...));
- #endif
-
-*** stdarg.h Fri Apr 26 16:51:02 1996
---- stdarg.h Sat May 18 19:34:13 1996
-***************
-*** 88,92 ****
- (((sizeof(TYPE) + sizeof(int) - 1) / sizeof(int)) * sizeof(int))
-
-! #define va_start(AP, LASTARG) (AP = ((char *) __builtin_next_arg ()))
-
- void va_end(va_list); /* Defined in libgcc.a */
---- 88,92 ----
- (((sizeof(TYPE) + sizeof(int) - 1) / sizeof(int)) * sizeof(int))
-
-! #define va_start(AP, LASTARG) (AP = ((char *) __builtin_next_arg (LASTARG)))
-
- void va_end(va_list); /* Defined in libgcc.a */
-***************
-*** 162,166 ****
- (((sizeof(TYPE) + sizeof(int) - 1) / sizeof(int)) * sizeof(int))
-
-! #define va_start(AP, LASTARG) (AP = ((char *) __builtin_next_arg ()))
-
- void va_end(va_list); /* Defined in libgcc.a */
---- 162,166 ----
- (((sizeof(TYPE) + sizeof(int) - 1) / sizeof(int)) * sizeof(int))
-
-! #define va_start(AP, LASTARG) (AP = ((char *) __builtin_next_arg (LASTARG)))
-
- void va_end(va_list); /* Defined in libgcc.a */
OpenPOWER on IntegriCloud