summaryrefslogtreecommitdiff
path: root/dmake/readme/public/unix.txt
diff options
context:
space:
mode:
Diffstat (limited to 'dmake/readme/public/unix.txt')
-rw-r--r--dmake/readme/public/unix.txt171
1 files changed, 0 insertions, 171 deletions
diff --git a/dmake/readme/public/unix.txt b/dmake/readme/public/unix.txt
deleted file mode 100644
index b50ab9afa..000000000
--- a/dmake/readme/public/unix.txt
+++ /dev/null
@@ -1,171 +0,0 @@
-UNIX specific information for dmake. This information is provided in the
-hope that it makes it easier to install and recompile dmake under UNIX.
-I will be happy to hear of erroneous information and will make every effort
-to correct it.
-
-
-1. ENVIRONMENT VARIABLE SETTINGS
-
-There are many environment variable settings available for UNIX. Each
-option is described below.
-
- OS - unix
-
- OSRELEASE - bsd43 # generic BSD 4.3
- - solaris # Solaris environments
- - sysvr1 # System V R1
- - sysvr3 # System V R3
- - sysvr4 # System V R4
- - xenix # Xenix
- - 386ix # Sun IPX 386 boxen
- - coherent # Coherent...
- - qnx # QNX
-
- OSENVIRONMENT - uw # U of Waterloo mfcf environment for BSD4.3
- - vf # for environments needing vfprintf
- - pwd # for environments needing new pwd
- - gcc # for GCC compiles with Solaris2.3 and greater
- - verxx # for specific OS versions.
-
-
-The table below lists valid combinations for settings of OS, OSRELEASE, and
-OSENVIRONMENT.
-
- OS OSRELEASE OSENVIRONMENT
- -- --------- -------------
- unix bsd43
- unix bsd43 uw
- unix bsd43 vf
- unix solaris
- unix solaris gcc
- unix sysvr1
- unix sysvr3
- unix sysvr3 pwd
- unix sysvr4
- unix xenix
- unix xenix pwd
- unix 386ix
- unix coherent ver40
- unix coherent ver42
-
-You must set OS and OSRELEASE, OSENVIRONMENT to correspond to one of the
-configurations in the above table.
-
-
-2. IMPLEMENTATION NOTES
-
-Bootstrapping the binary:
--------------------------
- A 'makefile' file is provided to bootstrap the binary. The file contains
- many targets for bootstrapping. Issuing 'make' will provide the list of
- possible targets that can be built. A restricted sample is shown below:
-
- INDEX: You must specify 'make target' where target is one of:
- -------------
- make bsd43 - Generic BSD 4.3 System
- make bsd43uw - Generic BSD 4.3 at U of Waterloo
- make bsd43vf - Generic BSD 4.3 that needs vfprintf
- make sysvr4 - Generic SysV R4 UNIX System
- make sysvr3 - Generic SysV R3 UNIX System
- make sysvr3pwd - Generic SysV R3 UNIX System, our PWD
- make sysvr1 - Generic SysV R1 UNIX System
- make dynix - Sequent DYNIX System
- make linux - Linux
- make ultrix - Ultrix 3.0 System
- make mips - Any MIPS System
- make coherent40 - Any Coherent Version 4.0 System
- make coherent42 - Any Coherent Version 4.2 or greater System
- make hpux - HP Unix
- make 386ix - 386/ix (SysV R3) System
- make xenix - 386 Xenix System
- make xenixpwd - 386 Xenix System, our PWD
- make aix - IBM RS6000/AIX System
- make Solaris - SUN Solaris 1.0 to 2.0
- make Solaris2.1 - SUN Solaris 2.1 or greater
- make gccSolaris2.1 - SUN Solaris 2.1 or greater with gcc
-
- The above shows only the possible builds for UNIX like operating systems.
- Choose the one that best suits your needs and issue the command
-
- 'make target'
-
-
-Using dmake to Make itself:
----------------------------
- If you use dmake to make itself you must first set a number of makefile
- control variables, either through the environment or on the command line.
-
- The following variables must be set:
-
- OS - defines operating system (must be set)
- OSRELEASE - particular version of it.
- OSENVIRNOMENT - more customization
-
- These three variables should be defined in your environment. Valid values
- for UNIX are listed above in Section 1. You must chose one a setting from
- the table that best matches your system.
-
- Once set simply issue the command: 'dmake' and the sources will be
- automatically rebuilt. You do not need to specify a target when you
- use dmake and the environment variables are correctly set.
-
-
-.NAMEMAX and length of file names:
-----------------------------------
-dmake assumes that no file name component has a name longer than .NAMEMAX
-(a user-settable variable, see the man page). Files whose basename is
-longer than .NAMEMAX return a timestamp of 0 when statted. The reason for
-this test is to handle broken versions of stat that return non-zero times
-for stating files that are longer than the legal file name length but for
-which a file whose name is the legal maximum file name length and is a prefix
-of the longer name exists. This used to cause infinite loops in the inference
-engine.
-
-As a result the value of .NAMEMAX is important. dmake attempts to determine
-it at from your system header files when compiled however sometimes even these
-may be erroneous thus as a result as of dmake 4.0 users may set the value of
-.NAMEMAX to any value they wish.
-
-
-Library Name Length:
---------------------
-By default the maximum length of library member names is defined in the the
-ar.h header file and is usually 14. Elf libraries allow for a arbitrarily
-long member names, if your archiver supports the elf archiver extension for
-long member names then edit the file unix/arlib.c and set the CHECKELF define
-to indicate that the Elf archiver extension is to be checked for.
-
-If Elf is not supported and your archiver truncates member names you should
-set (in unix/arlib.c) the macro AR_TRUNCATE_MEMBER_NAMES. dmake will then
-also truncate member names and perform a length limitted comparison when
-scanning the library for matching member names.
-
-
-UNIX Sysv R3 and getcwd:
-------------------------
-Some versions of UNIX SysV R3 and Xenix use the popen call to capture the
-output of pwd when invoking the C library function getcwd(). These versions
-of the function cause dmake to terminate with the "lost a child" message
-due to the fact that the parent dmake process may catch the pwd and not
-recognize it as a child. For systems that have this problem use the version
-of dmake that supplies its own getcwd function. The settings are:
-
- OS = unix
- OSRELEASE = sysvr3
- OSENVIRONMENT = pwd
-
-It is directly available through the 'makefile' by typing one of:
-
- make sysvr3pwd
- make xenixpwd
-
-both include the getcwd code but the xenixpwd target compiles for a Xenix
-system.
-
-
-UNIX and "limits.h":
---------------------
-Some compilers do not yet provide the "limits.h" file, if yours is one of
-these then simply copy the file "namemax.h" in the source root directory to
-"limits.h". Make sure the length of a file name is correctly set in
-"limits.h" as it is processed prior to "namemax.h".