xref: /netbsd/usr.bin/make/config.h (revision d16868f7)
1 /*	$NetBSD: config.h,v 1.28 2020/12/11 22:53:08 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  * INCLUDES
77  * LIBRARIES
78  *	These control the handling of the .INCLUDES and .LIBS variables.
79  *
80  *	If INCLUDES is defined, the .INCLUDES variable will be filled
81  *	from the search paths of those suffixes which are marked by
82  *	.INCLUDES dependency lines. Similarly for LIBRARIES and .LIBS.
83  *
84  *	See varname-dot-include.mk and varname-dot-libs.mk for more details.
85  */
86 #define INCLUDES
87 #define LIBRARIES
88 
89 /*
90  * LIBSUFF
91  *	Is the suffix used to denote libraries and is used by the Suff module
92  *	to find the search path on which to seek any -l<xx> targets.
93  */
94 #define LIBSUFF	".a"
95 
96 /*
97  * RECHECK
98  *	If defined, Make_Update will check a target for its current
99  *	modification time after it has been re-made, setting it to the
100  *	starting time of the make only if the target still doesn't exist.
101  *
102  *	Unfortunately, under NFS the modification time often doesn't
103  *	get updated in time, so a target will appear to not have been
104  *	re-made, causing later targets to appear up-to-date.
105  *
106  *	On systems that don't have this problem, you should define this.
107  *	Under NFS you probably should not, unless you aren't exporting jobs.
108  */
109 #define RECHECK
110 
111 /*
112  * POSIX
113  *	Adhere to the POSIX 1003.2 draft for the make(1) program.
114  *	- Use MAKEFLAGS instead of MAKE to pick arguments from the
115  *	  environment.
116  */
117 #define POSIX
118 
119 /*
120  * SYSVINCLUDE
121  *	Recognize system V like include directives [include "filename"]
122  *	(required by POSIX 2018)
123  * SYSVVARSUB
124  *	Recognize system V like ${VAR:x=y} variable substitutions
125  *	(required by POSIX 2018)
126  */
127 #define SYSVINCLUDE
128 #define SYSVVARSUB
129 
130 /*
131  * GMAKEEXPORT
132  *	Recognize gmake like variable export directives [export <VAR>=<VALUE>]
133  */
134 #define GMAKEEXPORT
135 
136 /*
137  * SUNSHCMD
138  *	Recognize SunOS and Solaris:
139  *		VAR :sh= CMD	# Assign VAR to the command substitution of CMD
140  *		${VAR:sh}	# Return the command substitution of the value
141  *				# of ${VAR}
142  */
143 #define SUNSHCMD
144 
145 #if defined(MAKE_NATIVE) && !defined(__ELF__)
146 # ifndef RANLIBMAG
147 #  define RANLIBMAG "__.SYMDEF"
148 # endif
149 #endif
150