missing-sol8-Makefile-20001219
[openafs.git] / src / README
1 Copyright 2000, International Business Machines Corporation and others.
2 All Rights Reserved.
3
4 This software has been released under the terms of the IBM Public
5 License.  For details, see the LICENSE file in the top-level source
6 directory or online at http://www.openafs.org/dl/license10.html
7
8 Building OpenAFS on UNIX and LINUX
9 ----------------------------------
10
11 A. Creating the proper directory structure.
12
13    Uncompress the source into a directory of your choice.
14    Preferrably, afs space. In the directory that you uncompressed the
15    source in, you will only have an src directory.
16         
17    1. Make a directory for each system type that you plan on
18       building. Current tested system types include the following
19      (this step is skipped for the i386_nt40 system type):
20
21       alpha_dux40/
22       i386_linux22/
23       rs_aix42/
24       sun4x_56/
25       sun4x_57/
26
27       Example:
28       % mkdir i386_linux22
29       % ls -CF
30       i386_linux22/     src/
31
32       Builds for the following platforms will not fully compile:
33
34       hp_ux110/
35       sgi_65/
36
37    2. Within each of those directories, create a dest/ and obj/ directory.
38
39       Example:
40       % mkdir i386_linux22/dest
41       % mkdir i386_linux22/obj
42
43    3. Create symbolic links to the system type you are about to build
44
45       Example:
46       % ln -s @sys/dest dest
47       % ln -s @sys/obj  obj
48       % ls -CF
49       Makefile@     dest@     i386_linux22/     obj@     src/
50
51    4. If this source is NOT in AFS space, You must make a link from
52       @sys to your current system type. 
53
54       Example:
55       % ln -s i386_linux22 @sys
56
57       Within AFS space, the AFS Cache Manager automatically
58       substitutes the local machine's AFS system name (CPU/operating
59       system type [ie: alpha_dux40, i386_linux22, ...]) for the @sys
60       variable.
61
62    5. Create the top level Makefile:
63       a. For LINUX and UNIX versions
64
65          Example:
66          % ln -s src/Makefile Makefile
67          % ls -CF
68          Makefile@     i386_linux22/     src/
69
70 B  Building
71
72    1. Make the obj links. This creates links from the @sys/obj/ tree
73       back to the source tree. The source tree remains unchanged and
74       builds are done in the platform specific object tree.
75
76       % make links
77
78    2. Begin building
79       a. For Linux
80          % make SYS_NAME="i386_linux22" LINUX_VERS="2.2.14"
81
82       b. For UNIX versions, specify the system name as given by
83          the system type defined in step A1.
84          % make SYS_NAME="<system_name>"
85
86          Example for the rs_aix42 operating system:
87          % make SYS_NAME="rs_aix42" 
88
89 C  Problems
90    If you have a problem building this source, you may want to visit
91    http://www.openafs.org/ to see if any problems have been reported 
92    or to find out how to get more help.
93
94    Mailing lists have been set up to help; More details can be found
95    on the openafs.org site.
96