xref: /minix3/usr.bin/make/config.h (revision 2e2caf591948f38f31c4e679c6277d2cb999cee7)
1*2e2caf59SThomas Veerman /*	$NetBSD: config.h,v 1.21 2012/03/31 00:12:24 christos Exp $	*/
2*2e2caf59SThomas Veerman 
3*2e2caf59SThomas Veerman /*
4*2e2caf59SThomas Veerman  * Copyright (c) 1988, 1989, 1990 The Regents of the University of California.
5*2e2caf59SThomas Veerman  *
6*2e2caf59SThomas Veerman  * This code is derived from software contributed to Berkeley by
7*2e2caf59SThomas Veerman  * Adam de Boor.
8*2e2caf59SThomas Veerman  *
9*2e2caf59SThomas Veerman  * Redistribution and use in source and binary forms, with or without
10*2e2caf59SThomas Veerman  * modification, are permitted provided that the following conditions
11*2e2caf59SThomas Veerman  * are met:
12*2e2caf59SThomas Veerman  * 1. Redistributions of source code must retain the above copyright
13*2e2caf59SThomas Veerman  *    notice, this list of conditions and the following disclaimer.
14*2e2caf59SThomas Veerman  * 2. Redistributions in binary form must reproduce the above copyright
15*2e2caf59SThomas Veerman  *    notice, this list of conditions and the following disclaimer in the
16*2e2caf59SThomas Veerman  *    documentation and/or other materials provided with the distribution.
17*2e2caf59SThomas Veerman  * 3. Neither the name of the University nor the names of its contributors
18*2e2caf59SThomas Veerman  *    may be used to endorse or promote products derived from this software
19*2e2caf59SThomas Veerman  *    without specific prior written permission.
20*2e2caf59SThomas Veerman  *
21*2e2caf59SThomas Veerman  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
22*2e2caf59SThomas Veerman  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
23*2e2caf59SThomas Veerman  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
24*2e2caf59SThomas Veerman  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
25*2e2caf59SThomas Veerman  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
26*2e2caf59SThomas Veerman  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
27*2e2caf59SThomas Veerman  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
28*2e2caf59SThomas Veerman  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
29*2e2caf59SThomas Veerman  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
30*2e2caf59SThomas Veerman  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
31*2e2caf59SThomas Veerman  * SUCH DAMAGE.
32*2e2caf59SThomas Veerman  *
33*2e2caf59SThomas Veerman  *	from: @(#)config.h	8.1 (Berkeley) 6/6/93
34*2e2caf59SThomas Veerman  */
35*2e2caf59SThomas Veerman 
36*2e2caf59SThomas Veerman /*
37*2e2caf59SThomas Veerman  * Copyright (c) 1988, 1989 by Adam de Boor
38*2e2caf59SThomas Veerman  * Copyright (c) 1989 by Berkeley Softworks
39*2e2caf59SThomas Veerman  * All rights reserved.
40*2e2caf59SThomas Veerman  *
41*2e2caf59SThomas Veerman  * This code is derived from software contributed to Berkeley by
42*2e2caf59SThomas Veerman  * Adam de Boor.
43*2e2caf59SThomas Veerman  *
44*2e2caf59SThomas Veerman  * Redistribution and use in source and binary forms, with or without
45*2e2caf59SThomas Veerman  * modification, are permitted provided that the following conditions
46*2e2caf59SThomas Veerman  * are met:
47*2e2caf59SThomas Veerman  * 1. Redistributions of source code must retain the above copyright
48*2e2caf59SThomas Veerman  *    notice, this list of conditions and the following disclaimer.
49*2e2caf59SThomas Veerman  * 2. Redistributions in binary form must reproduce the above copyright
50*2e2caf59SThomas Veerman  *    notice, this list of conditions and the following disclaimer in the
51*2e2caf59SThomas Veerman  *    documentation and/or other materials provided with the distribution.
52*2e2caf59SThomas Veerman  * 3. All advertising materials mentioning features or use of this software
53*2e2caf59SThomas Veerman  *    must display the following acknowledgement:
54*2e2caf59SThomas Veerman  *	This product includes software developed by the University of
55*2e2caf59SThomas Veerman  *	California, Berkeley and its contributors.
56*2e2caf59SThomas Veerman  * 4. Neither the name of the University nor the names of its contributors
57*2e2caf59SThomas Veerman  *    may be used to endorse or promote products derived from this software
58*2e2caf59SThomas Veerman  *    without specific prior written permission.
59*2e2caf59SThomas Veerman  *
60*2e2caf59SThomas Veerman  * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND
61*2e2caf59SThomas Veerman  * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
62*2e2caf59SThomas Veerman  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
63*2e2caf59SThomas Veerman  * ARE DISCLAIMED.  IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE
64*2e2caf59SThomas Veerman  * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
65*2e2caf59SThomas Veerman  * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
66*2e2caf59SThomas Veerman  * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
67*2e2caf59SThomas Veerman  * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
68*2e2caf59SThomas Veerman  * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
69*2e2caf59SThomas Veerman  * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
70*2e2caf59SThomas Veerman  * SUCH DAMAGE.
71*2e2caf59SThomas Veerman  *
72*2e2caf59SThomas Veerman  *	from: @(#)config.h	8.1 (Berkeley) 6/6/93
73*2e2caf59SThomas Veerman  */
74*2e2caf59SThomas Veerman 
75*2e2caf59SThomas Veerman /*
76*2e2caf59SThomas Veerman  * DEFMAXJOBS
77*2e2caf59SThomas Veerman  * DEFMAXLOCAL
78*2e2caf59SThomas Veerman  *	These control the default concurrency. On no occasion will more
79*2e2caf59SThomas Veerman  *	than DEFMAXJOBS targets be created at once (locally or remotely)
80*2e2caf59SThomas Veerman  *	DEFMAXLOCAL is the highest number of targets which will be
81*2e2caf59SThomas Veerman  *	created on the local machine at once. Note that if you set this
82*2e2caf59SThomas Veerman  *	to 0, nothing will ever happen...
83*2e2caf59SThomas Veerman  */
84*2e2caf59SThomas Veerman #define DEFMAXJOBS	4
85*2e2caf59SThomas Veerman #define DEFMAXLOCAL	1
86*2e2caf59SThomas Veerman 
87*2e2caf59SThomas Veerman /*
88*2e2caf59SThomas Veerman  * INCLUDES
89*2e2caf59SThomas Veerman  * LIBRARIES
90*2e2caf59SThomas Veerman  *	These control the handling of the .INCLUDES and .LIBS variables.
91*2e2caf59SThomas Veerman  *	If INCLUDES is defined, the .INCLUDES variable will be filled
92*2e2caf59SThomas Veerman  *	from the search paths of those suffixes which are marked by
93*2e2caf59SThomas Veerman  *	.INCLUDES dependency lines. Similarly for LIBRARIES and .LIBS
94*2e2caf59SThomas Veerman  *	See suff.c for more details.
95*2e2caf59SThomas Veerman  */
96*2e2caf59SThomas Veerman #define INCLUDES
97*2e2caf59SThomas Veerman #define LIBRARIES
98*2e2caf59SThomas Veerman 
99*2e2caf59SThomas Veerman /*
100*2e2caf59SThomas Veerman  * LIBSUFF
101*2e2caf59SThomas Veerman  *	Is the suffix used to denote libraries and is used by the Suff module
102*2e2caf59SThomas Veerman  *	to find the search path on which to seek any -l<xx> targets.
103*2e2caf59SThomas Veerman  *
104*2e2caf59SThomas Veerman  * RECHECK
105*2e2caf59SThomas Veerman  *	If defined, Make_Update will check a target for its current
106*2e2caf59SThomas Veerman  *	modification time after it has been re-made, setting it to the
107*2e2caf59SThomas Veerman  *	starting time of the make only if the target still doesn't exist.
108*2e2caf59SThomas Veerman  *	Unfortunately, under NFS the modification time often doesn't
109*2e2caf59SThomas Veerman  *	get updated in time, so a target will appear to not have been
110*2e2caf59SThomas Veerman  *	re-made, causing later targets to appear up-to-date. On systems
111*2e2caf59SThomas Veerman  *	that don't have this problem, you should defined this. Under
112*2e2caf59SThomas Veerman  *	NFS you probably should not, unless you aren't exporting jobs.
113*2e2caf59SThomas Veerman  */
114*2e2caf59SThomas Veerman #define	LIBSUFF	".a"
115*2e2caf59SThomas Veerman #define	RECHECK
116*2e2caf59SThomas Veerman 
117*2e2caf59SThomas Veerman /*
118*2e2caf59SThomas Veerman  * POSIX
119*2e2caf59SThomas Veerman  *	Adhere to the POSIX 1003.2 draft for the make(1) program.
120*2e2caf59SThomas Veerman  *	- Use MAKEFLAGS instead of MAKE to pick arguments from the
121*2e2caf59SThomas Veerman  *	  environment.
122*2e2caf59SThomas Veerman  *	- Allow empty command lines if starting with tab.
123*2e2caf59SThomas Veerman  */
124*2e2caf59SThomas Veerman #define POSIX
125*2e2caf59SThomas Veerman 
126*2e2caf59SThomas Veerman /*
127*2e2caf59SThomas Veerman  * SYSVINCLUDE
128*2e2caf59SThomas Veerman  *	Recognize system V like include directives [include "filename"]
129*2e2caf59SThomas Veerman  * SYSVVARSUB
130*2e2caf59SThomas Veerman  *	Recognize system V like ${VAR:x=y} variable substitutions
131*2e2caf59SThomas Veerman  */
132*2e2caf59SThomas Veerman #define SYSVINCLUDE
133*2e2caf59SThomas Veerman #define SYSVVARSUB
134*2e2caf59SThomas Veerman 
135*2e2caf59SThomas Veerman /*
136*2e2caf59SThomas Veerman  * GMAKEEXPORT
137*2e2caf59SThomas Veerman  *	Recognize gmake like variable export directives [export <VAR>=<VALUE>]
138*2e2caf59SThomas Veerman  */
139*2e2caf59SThomas Veerman #define GMAKEEXPORT
140*2e2caf59SThomas Veerman 
141*2e2caf59SThomas Veerman /*
142*2e2caf59SThomas Veerman  * SUNSHCMD
143*2e2caf59SThomas Veerman  *	Recognize SunOS and Solaris:
144*2e2caf59SThomas Veerman  *		VAR :sh= CMD	# Assign VAR to the command substitution of CMD
145*2e2caf59SThomas Veerman  *		${VAR:sh}	# Return the command substitution of the value
146*2e2caf59SThomas Veerman  *				# of ${VAR}
147*2e2caf59SThomas Veerman  */
148*2e2caf59SThomas Veerman #define SUNSHCMD
149*2e2caf59SThomas Veerman 
150*2e2caf59SThomas Veerman /*
151*2e2caf59SThomas Veerman  * USE_IOVEC
152*2e2caf59SThomas Veerman  *	We have writev(2)
153*2e2caf59SThomas Veerman  */
154*2e2caf59SThomas Veerman #define USE_IOVEC
155*2e2caf59SThomas Veerman 
156*2e2caf59SThomas Veerman #if defined(MAKE_NATIVE) && !defined(__ELF__)
157*2e2caf59SThomas Veerman # ifndef RANLIBMAG
158*2e2caf59SThomas Veerman #  define RANLIBMAG "__.SYMDEF"
159*2e2caf59SThomas Veerman # endif
160*2e2caf59SThomas Veerman #endif
161