1*a34d5fb1SAntonio Huete Jimenez /* $NetBSD: config.h,v 1.28 2020/12/11 22:53:08 rillig Exp $ */ 201e196c8SJohn Marino 301e196c8SJohn Marino /* 401e196c8SJohn Marino * Copyright (c) 1988, 1989, 1990 The Regents of the University of California. 501e196c8SJohn Marino * 601e196c8SJohn Marino * This code is derived from software contributed to Berkeley by 701e196c8SJohn Marino * Adam de Boor. 801e196c8SJohn Marino * 901e196c8SJohn Marino * Redistribution and use in source and binary forms, with or without 1001e196c8SJohn Marino * modification, are permitted provided that the following conditions 1101e196c8SJohn Marino * are met: 1201e196c8SJohn Marino * 1. Redistributions of source code must retain the above copyright 1301e196c8SJohn Marino * notice, this list of conditions and the following disclaimer. 1401e196c8SJohn Marino * 2. Redistributions in binary form must reproduce the above copyright 1501e196c8SJohn Marino * notice, this list of conditions and the following disclaimer in the 1601e196c8SJohn Marino * documentation and/or other materials provided with the distribution. 1701e196c8SJohn Marino * 3. Neither the name of the University nor the names of its contributors 1801e196c8SJohn Marino * may be used to endorse or promote products derived from this software 1901e196c8SJohn Marino * without specific prior written permission. 2001e196c8SJohn Marino * 2101e196c8SJohn Marino * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 2201e196c8SJohn Marino * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 2301e196c8SJohn Marino * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 2401e196c8SJohn Marino * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 2501e196c8SJohn Marino * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 2601e196c8SJohn Marino * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 2701e196c8SJohn Marino * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 2801e196c8SJohn Marino * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 2901e196c8SJohn Marino * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 3001e196c8SJohn Marino * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 3101e196c8SJohn Marino * SUCH DAMAGE. 3201e196c8SJohn Marino * 3301e196c8SJohn Marino * from: @(#)config.h 8.1 (Berkeley) 6/6/93 3401e196c8SJohn Marino */ 3501e196c8SJohn Marino 3601e196c8SJohn Marino /* 3701e196c8SJohn Marino * Copyright (c) 1988, 1989 by Adam de Boor 3801e196c8SJohn Marino * Copyright (c) 1989 by Berkeley Softworks 3901e196c8SJohn Marino * All rights reserved. 4001e196c8SJohn Marino * 4101e196c8SJohn Marino * This code is derived from software contributed to Berkeley by 4201e196c8SJohn Marino * Adam de Boor. 4301e196c8SJohn Marino * 4401e196c8SJohn Marino * Redistribution and use in source and binary forms, with or without 4501e196c8SJohn Marino * modification, are permitted provided that the following conditions 4601e196c8SJohn Marino * are met: 4701e196c8SJohn Marino * 1. Redistributions of source code must retain the above copyright 4801e196c8SJohn Marino * notice, this list of conditions and the following disclaimer. 4901e196c8SJohn Marino * 2. Redistributions in binary form must reproduce the above copyright 5001e196c8SJohn Marino * notice, this list of conditions and the following disclaimer in the 5101e196c8SJohn Marino * documentation and/or other materials provided with the distribution. 5201e196c8SJohn Marino * 3. All advertising materials mentioning features or use of this software 5301e196c8SJohn Marino * must display the following acknowledgement: 5401e196c8SJohn Marino * This product includes software developed by the University of 5501e196c8SJohn Marino * California, Berkeley and its contributors. 5601e196c8SJohn Marino * 4. Neither the name of the University nor the names of its contributors 5701e196c8SJohn Marino * may be used to endorse or promote products derived from this software 5801e196c8SJohn Marino * without specific prior written permission. 5901e196c8SJohn Marino * 6001e196c8SJohn Marino * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 6101e196c8SJohn Marino * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 6201e196c8SJohn Marino * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 6301e196c8SJohn Marino * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 6401e196c8SJohn Marino * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 6501e196c8SJohn Marino * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 6601e196c8SJohn Marino * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 6701e196c8SJohn Marino * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 6801e196c8SJohn Marino * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 6901e196c8SJohn Marino * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 7001e196c8SJohn Marino * SUCH DAMAGE. 7101e196c8SJohn Marino * 7201e196c8SJohn Marino * from: @(#)config.h 8.1 (Berkeley) 6/6/93 7301e196c8SJohn Marino */ 7401e196c8SJohn Marino 7501e196c8SJohn Marino /* 7601e196c8SJohn Marino * INCLUDES 7701e196c8SJohn Marino * LIBRARIES 7801e196c8SJohn Marino * These control the handling of the .INCLUDES and .LIBS variables. 79*a34d5fb1SAntonio Huete Jimenez * 8001e196c8SJohn Marino * If INCLUDES is defined, the .INCLUDES variable will be filled 8101e196c8SJohn Marino * from the search paths of those suffixes which are marked by 82*a34d5fb1SAntonio Huete Jimenez * .INCLUDES dependency lines. Similarly for LIBRARIES and .LIBS. 83*a34d5fb1SAntonio Huete Jimenez * 84*a34d5fb1SAntonio Huete Jimenez * See varname-dot-include.mk and varname-dot-libs.mk for more details. 8501e196c8SJohn Marino */ 8601e196c8SJohn Marino #define INCLUDES 8701e196c8SJohn Marino #define LIBRARIES 8801e196c8SJohn Marino 8901e196c8SJohn Marino /* 9001e196c8SJohn Marino * LIBSUFF 9101e196c8SJohn Marino * Is the suffix used to denote libraries and is used by the Suff module 9201e196c8SJohn Marino * to find the search path on which to seek any -l<xx> targets. 93*a34d5fb1SAntonio Huete Jimenez */ 94*a34d5fb1SAntonio Huete Jimenez #define LIBSUFF ".a" 95*a34d5fb1SAntonio Huete Jimenez 96*a34d5fb1SAntonio Huete Jimenez /* 9701e196c8SJohn Marino * RECHECK 9801e196c8SJohn Marino * If defined, Make_Update will check a target for its current 9901e196c8SJohn Marino * modification time after it has been re-made, setting it to the 10001e196c8SJohn Marino * starting time of the make only if the target still doesn't exist. 101*a34d5fb1SAntonio Huete Jimenez * 10201e196c8SJohn Marino * Unfortunately, under NFS the modification time often doesn't 10301e196c8SJohn Marino * get updated in time, so a target will appear to not have been 104*a34d5fb1SAntonio Huete Jimenez * re-made, causing later targets to appear up-to-date. 105*a34d5fb1SAntonio Huete Jimenez * 106*a34d5fb1SAntonio Huete Jimenez * On systems that don't have this problem, you should define this. 107*a34d5fb1SAntonio Huete Jimenez * Under NFS you probably should not, unless you aren't exporting jobs. 10801e196c8SJohn Marino */ 10901e196c8SJohn Marino #define RECHECK 11001e196c8SJohn Marino 11101e196c8SJohn Marino /* 11201e196c8SJohn Marino * POSIX 11301e196c8SJohn Marino * Adhere to the POSIX 1003.2 draft for the make(1) program. 11401e196c8SJohn Marino * - Use MAKEFLAGS instead of MAKE to pick arguments from the 11501e196c8SJohn Marino * environment. 11601e196c8SJohn Marino */ 11701e196c8SJohn Marino #define POSIX 11801e196c8SJohn Marino 11901e196c8SJohn Marino /* 12001e196c8SJohn Marino * SYSVINCLUDE 12101e196c8SJohn Marino * Recognize system V like include directives [include "filename"] 122*a34d5fb1SAntonio Huete Jimenez * (required by POSIX 2018) 12301e196c8SJohn Marino * SYSVVARSUB 12401e196c8SJohn Marino * Recognize system V like ${VAR:x=y} variable substitutions 125*a34d5fb1SAntonio Huete Jimenez * (required by POSIX 2018) 12601e196c8SJohn Marino */ 12701e196c8SJohn Marino #define SYSVINCLUDE 12801e196c8SJohn Marino #define SYSVVARSUB 12901e196c8SJohn Marino 13001e196c8SJohn Marino /* 13101e196c8SJohn Marino * GMAKEEXPORT 13201e196c8SJohn Marino * Recognize gmake like variable export directives [export <VAR>=<VALUE>] 13301e196c8SJohn Marino */ 13401e196c8SJohn Marino #define GMAKEEXPORT 13501e196c8SJohn Marino 13601e196c8SJohn Marino /* 13701e196c8SJohn Marino * SUNSHCMD 13801e196c8SJohn Marino * Recognize SunOS and Solaris: 13901e196c8SJohn Marino * VAR :sh= CMD # Assign VAR to the command substitution of CMD 14001e196c8SJohn Marino * ${VAR:sh} # Return the command substitution of the value 14101e196c8SJohn Marino * # of ${VAR} 14201e196c8SJohn Marino */ 14301e196c8SJohn Marino #define SUNSHCMD 14401e196c8SJohn Marino 14501e196c8SJohn Marino #if defined(MAKE_NATIVE) && !defined(__ELF__) 14601e196c8SJohn Marino # ifndef RANLIBMAG 14701e196c8SJohn Marino # define RANLIBMAG "__.SYMDEF" 14801e196c8SJohn Marino # endif 14901e196c8SJohn Marino #endif 150