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