Fix stupid wrong-pointer error handling target vars containing semicolons.
[make.git] / README.template
blob1ea8046d82e86f95182f643d3476a1e900cf447e
1 This directory contains the %VERSION% release of GNU Make.
3 See the file NEWS for the user-visible changes from previous releases.
4 In addition, there have been bugs fixed.
6 Please check the system-specific notes below for any caveats related to
7 your operating system.
9 For general building and installation instructions, see the file INSTALL.
11 If you need to build GNU Make and have no other 'make' program to use,
12 you can use the shell script 'build.sh' instead.  To do this, first run
13 'configure' as described in INSTALL.  Then, instead of typing 'make' to
14 build the program, type 'sh build.sh'.  This should compile the program
15 in the current directory.  Then you will have a Make program that you can
16 use for './make install', or whatever else.
18 Some systems' Make programs are broken and cannot process the Makefile for
19 GNU Make.  If you get errors from your system's Make when building GNU
20 Make, try using 'build.sh' instead.
23 GNU Make is free software.  See the file COPYING for copying conditions.
24 GNU Make is copyright by the Free Software Foundation.  Copyright notices
25 condense sequential years into a range; e.g. "1987-1994" means all years
26 from 1987 to 1994 inclusive.
28 Downloading
29 -----------
31 GNU Make can be obtained in many different ways.  See a description here:
33   http://www.gnu.org/software/software.html
36 Documentation
37 -------------
39 GNU make is fully documented in the GNU Make manual, which is contained
40 in this distribution as the file make.texinfo.  You can also find
41 on-line and preformatted (PostScript and DVI) versions at the FSF's web
42 site.  There is information there about ordering hardcopy documentation.
44   http://www.gnu.org/
45   http://www.gnu.org/doc/doc.html
46   http://www.gnu.org/manual/manual.html
49 Development
50 -----------
52 GNU Make development is hosted by Savannah, the FSF's online development
53 management tool.  Savannah is here:
55   http://savannah.gnu.org
57 And the GNU Make development page is here:
59   http://savannah.gnu.org/projects/make/
61 You can find most information concerning the development of GNU Make at
62 this site.
65 Bug Reporting
66 -------------
68 You can send GNU make bug reports to <bug-make@gnu.org>.  Please see the
69 section of the GNU make manual entitled 'Problems and Bugs' for
70 information on submitting useful and complete bug reports.
72 You can also use the online bug tracking system in the Savannah GNU Make
73 project to submit new problem reports or search for existing ones:
75   http://savannah.gnu.org/bugs/?group=make
77 If you need help using GNU make, try these forums:
79   help-make@gnu.org
80   help-utils@gnu.org
81   news:gnu.utils.help
82   news:gnu.utils.bug
85 CVS Access
86 ----------
88 The GNU make source repository is available via anonymous CVS from the
89 GNU Subversions CVS server; look here for details:
91   http://savannah.gnu.org/cvs/?group=make
93 Please note: you won't be able to build GNU make from CVS without
94 installing appropriate maintainer's tools, such as GNU m4, automake,
95 autoconf, Perl, GNU make, and GCC.  See the README.cvs file for hints on
96 how to build GNU make once these tools are available.  We make no
97 guarantees about the contents or quality of the latest code in the CVS
98 repository: it is not unheard of for code that is known to be broken to
99 be checked in.  Use at your own risk.
102 System-specific Notes
103 ---------------------
105 It has been reported that the XLC 1.2 compiler on AIX 3.2 is buggy such
106 that if you compile make with 'cc -O' on AIX 3.2, it will not work
107 correctly.  It is said that using 'cc' without '-O' does work.
109 The standard /bin/sh on SunOS 4.1.3_U1 and 4.1.4 is broken and cannot be
110 used to configure GNU make.  Please install a different shell such as
111 bash or pdksh in order to run "configure".  See this message for more
112 information:
113   http://mail.gnu.org/archive/html/bug-autoconf/2003-10/msg00190.html
115 One area that is often a problem in configuration and porting is the code
116 to check the system's current load average.  To make it easier to test and
117 debug this code, you can do 'make check-loadavg' to see if it works
118 properly on your system.  (You must run 'configure' beforehand, but you
119 need not build Make itself to run this test.)
121 Another potential source of porting problems is the support for large
122 files (LFS) in configure for those operating systems that provide it.
123 Please report any bugs that you find in this area.  If you run into
124 difficulties, then as a workaround you should be able to disable LFS by
125 adding the '--disable-largefile' option to the 'configure' script.
127 On systems that support micro- and nano-second timestamp values and
128 where stat(2) provides this information, GNU make will use it when
129 comparing timestamps to get the most accurate possible result.  However,
130 note that many current implementations of tools that *set* timestamps do
131 not preserve micro- or nano-second granularity.  This means that "cp -p"
132 and other similar tools (tar, etc.) may not exactly duplicate timestamps
133 with micro- and nano-second granularity on some systems.  If your build
134 system contains rules that depend on proper behavior of tools like "cp
135 -p", you should consider using the .LOW_RESOLUTION_TIME pseudo-target to
136 force make to treat them properly.  See the manual for details.
139 Ports
140 -----
142   - See README.customs for details on integrating GNU make with the
143     Customs distributed build environment from the Pmake distribution.
145   - See readme.vms for details about GNU Make on OpenVMS.
147   - See README.Amiga for details about GNU Make on AmigaDOS.
149   - See README.W32 for details about GNU Make on Windows NT, 95, or 98.
151   - See README.DOS for compilation instructions on MS-DOS and MS-Windows
152     using DJGPP tools.
154     A precompiled binary of the MSDOS port of GNU Make is available as part
155     of DJGPP; see the WWW page http://www.delorie.com/djgpp/ for more
156     information.
158 Please note there are two _separate_ ports of GNU make for Microsoft
159 systems: a native Windows tool built with (for example) MSVC or Cygwin,
160 and a DOS-based tool built with DJGPP.  Please be sure you are looking
161 at the right README!
164 -------------------------------------------------------------------------------
165 Copyright (C) 1988-2012 Free Software Foundation, Inc.
166 This file is part of GNU Make.
168 GNU Make is free software; you can redistribute it and/or modify it under the
169 terms of the GNU General Public License as published by the Free Software
170 Foundation; either version 3 of the License, or (at your option) any later
171 version.
173 GNU Make is distributed in the hope that it will be useful, but WITHOUT ANY
174 WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
175 A PARTICULAR PURPOSE.  See the GNU General Public License for more details.
177 You should have received a copy of the GNU General Public License along with
178 this program.  If not, see <http://www.gnu.org/licenses/>.