* texinfo.tex (\value): handle active _ or - in argument (happens
[make.git] / README.customs
blob9ad21f620b426b27c80310d31929d69679606cbc
1                                                             -*-indented-text-*-
3 GNU make can utilize the Customs library, distributed with Pmake, to
4 provide builds distributed across multiple hosts.
6 In order to utilize this capability, you must first download and build
7 the Customs library.  It is contained in the Pmake distribution, which
8 can be obtained at:
10   ftp://ftp.icsi.berkeley.edu/pub/ai/stolcke/software/
12 This integration was tested (superficially) with Pmake 2.1.33.
15 BUILDING CUSTOMS
16 ----------------
18 First, build pmake and Customs.  You need to build pmake first, because
19 Customs require pmake to build.  Unfortunately, this is not trivial;
20 please see the pmake and Customs documentation for details.  The best
21 place to look for instructions is in the pmake-2.1.33/INSTALL file.
23 Note that the 2.1.33 Pmake distribution comes with a set of patches to
24 GNU make, distributed in the pmake-2.1.33/etc/gnumake/ directory.  These
25 patches are based on GNU make 3.75 (there are patches for earlier
26 versions of GNU make, also).  The parts of this patchfile which relate
27 directly to Customs support have already been incorporated into this
28 version of GNU make, so you should _NOT_ apply the patch file.
30 However, there are a few non-Customs specific (as far as I could tell)
31 changes here which are not incorporated (for example, the modification
32 to try expanding -lfoo to libfoo.so).  If you rely on these changes
33 you'll need to re-apply them by hand.
35 Install the Customs library and header files according to the
36 documentation.  You should also install the man pages (contrary to
37 comments in the documentation, they weren't installed automatically for
38 me; I had to cd to the ``pmake-2.1.33/doc'' directory and run ``pmake
39 install'' there directly).
42 BUILDING GNU MAKE
43 -----------------
45 Once you've installed Customs, you can build GNU make to use it.  When
46 configuring GNU make, merely use the ``--with-customs=DIR'' option.
47 Provide the directory containing the ``lib'' and ``include/customs''
48 subdirectories as DIR.  For example, if you installed the customs
49 library in /usr/local/lib and the headers in /usr/local/include/customs,
50 then you'd pass ``--with-customs=/usr/local'' as an option to configure.
52 Run make (or use build.sh) normally to build GNU make as described in
53 the INSTALL file.
55 See the documentation for Customs for information on starting and
56 configuring Customs.
59 PROBLEMS
60 --------
62 SunOS 4.1.x:
63   The customs/sprite.h header file #includes the <malloc.h> header
64   files; this conflicts with GNU make's configuration so you'll get a
65   compile error if you use GCC (or any other ANSI-capable C compiler).
67   I commented out the #include in sprite.h:107:
69     #if defined(sun) || defined(ultrix) || defined(hpux) || defined(sgi)
70     /* #include <malloc.h> */
71     #else
73   YMMV.