Tue Sep 1 17:40:34 2020 UTC ()
make(1): mark LIBSUFF and RECHECK as independent build options


(rillig)
diff -r1.21 -r1.22 src/usr.bin/make/config.h

cvs diff -r1.21 -r1.22 src/usr.bin/make/config.h (switch to unified diff)

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