Commit | Line | Data |
---|---|---|
44986d67 MD |
1 | Installation of the `QuickThreads' threads-building toolkit. |
2 | ||
3 | * Notice | |
4 | ||
5 | QuickThreads -- Threads-building toolkit. | |
6 | Copyright (c) 1993 by David Keppel | |
7 | ||
8 | Permission to use, copy, modify and distribute this software and | |
9 | its documentation for any purpose and without fee is hereby | |
10 | granted, provided that the above copyright notice and this notice | |
11 | appear in all copies. This software is provided as a | |
12 | proof-of-concept and for demonstration purposes; there is no | |
13 | representation about the suitability of this software for any | |
14 | purpose. | |
15 | ||
16 | ||
17 | * Configuration | |
18 | ||
19 | Configure with | |
20 | ||
21 | ./config *machtype* | |
22 | ||
23 | where "*machtype*" is one of the supported target machines. As of | |
24 | October 1994, the supported machines (targets) are: | |
25 | ||
26 | axp -- All Digital Equipment Corporation AXP (DEC Alpha) | |
27 | processors, compile with GNU CC | |
28 | axp-osf1 -- AXP running OSF 1.x | |
29 | axp-osf2 -- AXP running OSF 2.x | |
30 | hppa -- HP's PA-RISC 1.1 processor | |
31 | hppa-cnx-spp -- Convex SPP (PA-RISC 1.1 processor) | |
32 | iX86 -- 80386, 80486, and 80586-compatible processors | |
33 | See notes below for OS/2. | |
34 | iX86-ss -- 'iX86 for assemblers that use slash-slash ('//') | |
35 | comments. | |
36 | ksr1 -- All KSR processors | |
37 | m88k -- All members of the Motorola 88000 family | |
38 | mips -- MIPS R2000 and R3000 processors | |
39 | mips-irix5 -- Irix 5.xx (use `mips' for Irix 4.xx) | |
40 | sparc-os1 -- V8-compliant SPARC processors using compilers | |
41 | that prefix labels (e.g. "foo" appears as "_foo") | |
42 | Includes Solaris 1 (SunOS 4.X). | |
43 | sparc-os2 -- V8-compliant SPARC processors using compilers | |
44 | that do not prefix labels. Includes Solaris 2. | |
45 | vax -- All VAX processors | |
46 | ||
47 | In addition, the target `clean' will deconfigure QuickThreads. | |
48 | ||
49 | Note that a given machine target may not work on all instances of that | |
50 | machine because e.g., the assembler syntax varies from machine to | |
51 | machine. | |
52 | ||
53 | Note also that additions to a processor family may require a new | |
54 | target. So, for example, the `vax' target might not work for all | |
55 | future VAX processors if, say, new VAX processors are introduced and | |
56 | they use separate floating-point registers. | |
57 | ||
58 | For OS/2, change `ranlib' to `ar -s', `configure' to `configure.cmd' | |
59 | (or was that `config' to `config.cmd'?), and replace the soft links | |
60 | (`ln -s') with plain copies. | |
61 | ||
62 | ||
63 | * Build | |
64 | ||
65 | To build the QuickThreads library, first configure (see above) then | |
66 | type `make libqt.a' in the top-level directory. | |
67 | ||
68 | To build the demonstration threads package, SimpleThreads, type | |
69 | `make libstp.a' in the top-level directory. | |
70 | ||
71 | To build an executable ``stress-test'' and measurement program, type | |
72 | `make run' in the top-level directory. Run `time/raw' to run the | |
73 | stress tests. | |
74 | ||
75 | ||
76 | * Installation | |
77 | ||
78 | Build the QuickThreads library (see above) and then copy `libqt.a' to | |
79 | the installation library directory (e.g., /usr/local/lib) and `qt.h' | |
80 | and `qtmd.h' to the installation include directory (e.g., | |
81 | /usr/local/include). |