aboutsummaryrefslogtreecommitdiff
path: root/usr.bin/make/Makefile
Commit message (Collapse)AuthorAgeFilesLines
...
* Put variable assignments on .MAKEFLAGS and .MFLAGS targets intoHartmut Brandt2004-08-121-1/+1
| | | | | | | | | | | | the .MAKEFLAGS variable so that these are also passed to sub-makes. This makes the handling of variables in the command environment more consistent. PR: bin/68853 Submitted by: Martin Kamerhofer <data@sbox.tugraz.at> Notes: svn path=/head/; revision=133562
* Put variable assignments from the command line into the MAKEFLAGSHartmut Brandt2004-08-031-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | variable as required by POSIX. This causes such variables to be pushed into all sub-makes called by the make (except when the MAKEFLAGS variable is explicitely changed in the sub-make's environment). This makes them also mostly un-overrideable in sub-makes except on the sub-make's command line. Therefor specifying 'make CC=icc' will cause icc to be used as C compiler in all sub-makes no matter what the Makefiles itself try to do to the CC variable. This patch also corrects the handling of the MFLAGS variable. MFLAGS contains all the command line flags but not the command line variable assignments. The evaluation of the .MFLAGS or .MAKEFLAGS target now changes both MFLAGS and MAKEFLAGS (they used to change MAKEFLAGS only). Makefiles can use MFLAGS for their own purposes given that they do not except MFLAGS to be undefined at the beginning and that they don't evaluate .MFLAGS or .MAKEFLAGS. MFLAGS should be removed for POSIX compliance, but it is unfortunately heavily used by the X makefiles. This has been extensively tested by port builds (thanks to portmgr), new worlds and kernels. PR: standards/57295 (1st part above) Submitted by: James E. Flemer <jflemer@alum.rpi.edu> Approved by: portmgr Obtained from: NetBSD (1st part above) MFC after: 4 weeks Notes: svn path=/head/; revision=133085
* Implement POSIX's '+' flag for command lines. This flag causes a lineHartmut Brandt2004-07-291-1/+1
| | | | | | | | | | | | | | | | | | to be executed even when -n is given on the command line to make. This is very handy for calls to submakes. This is slightly changed from the original patch as obtained from NetBSD. The NetBSD variant prints lines which have both '+' and '@' when -n is specified. The commited version always obeys '@'. Bump MAKE_VERSION so Makefiles can use this conditionally. PR: standards/66357 (partly) Submitted by: Mark Baushke <mdb@juniper.net> Obtained from: NetBSD Notes: svn path=/head/; revision=132839
* Split var.c into var.c and var_modify.c and move all the modification funcsJuli Mallett2002-10-281-1/+1
| | | | | | | | | | | to var_modify.c, for readability. constify some low hanging fruit (string manipulation functions) and the upper layers appropriately. No longer use the private strstr(3) implementation, while changing string code. Tested by: lots of successful make buildworld. Notes: svn path=/head/; revision=106106
* Move utilitarian routines to util.c, which isn't the same as the oldJuli Mallett2002-10-101-1/+1
| | | | | | | | | compatability-geared util.c. These are things like message printers and the PrintAddr function for traversing lists. Other general-purpose utilities inside make(1) can go here, in time. Notes: svn path=/head/; revision=104818
* Give make(1) the ability to use KQUEUE to wait for worker processesPoul-Henning Kamp2002-10-041-0/+3
| | | | | | | | | | | | instead of polling for them. Unfortunately we cannot enable it yet because it panics the kernel somewhere in kqueue. Submitted by: Stefan Farfeleder <e0026813@stud3.tuwien.ac.at> Notes: svn path=/head/; revision=104475
* Move common use of if (DEBUG(FOO)) printf... to DEBUGF(FOO, ...), usingJuli Mallett2002-09-171-1/+1
| | | | | | | | | | | | variable length arguments to a macro. Bump version as this makes DEBUG statements *always* go to stderr rather than sometimes stdout. There are a few stragglers, which I will take care of as soon as I can. Mostly these relate to the need-for-death-of some of the remote job code. Nearby stylistic nits and XXX added/fixed where appropriate. Notes: svn path=/head/; revision=103508
* Deal with bootstrapping from an old -current (almost exactly a year old)Peter Wemm2002-08-311-0/+3
| | | | | | | | | | which fails the make tests (doesn't understand ${notdef:U}) and therefore fails on __FBSDID in usr.bin/make/*. -DBOOTSTRAPPING is no help here since this is before we are using the new share/mk/* files, and it would conflict with the builtin -DBOOTSTRAPPING support later.. so use a different flag. Notes: svn path=/head/; revision=102692
* Add a -C ala GNU make(1) for Makefiles which are too lazy to use $(MAKE) andJuli Mallett2002-08-251-1/+1
| | | | | | | | | | | this particular GNU flag. It changes into the given directory for the operation in question. This just goes into said directory at the time of parsing the argument for getopt(3). Submitted by: Rachel Hestilow <rachel@jerkcity.com> Notes: svn path=/head/; revision=102393
* Back out the ``run shell from $PATH'' change; this was an overkillRuslan Ermilov2002-05-241-1/+1
| | | | | | | | | and is insecure. Requested by: bde Notes: svn path=/head/; revision=97251
* Do not run shell from /bin, run it from $PATH.Ruslan Ermilov2002-05-221-1/+1
| | | | | | | Bump MAKE_VERSION to 5200205221. Notes: svn path=/head/; revision=97122
* Added the MAKE_VERSION global that could be useful in determiningRuslan Ermilov2002-05-221-0/+4
| | | | | | | | | | | | | | | if a given make(1) is feature-compatible with a set of makefiles. When merged, this will be used to replace the ugly upgrade_checks hacks in src/Makefile. Version has the RYYYYMMDDX format, where R is from RELENG_<R> and X allows for 10 distinguishable changes per day. Discussed with: bde Notes: svn path=/head/; revision=97121
* Fix copyrights, and undo SCS ID damage.David E. O'Brien2002-04-131-0/+1
| | | | Notes: svn path=/head/; revision=94589
* o unifdef -D__STDC__Warner Losh2002-03-231-1/+1
| | | | | | | | o remove badly bit-rotted compat file that likely won't work on the systems it purports to support. Notes: svn path=/head/; revision=93056
* By default build make(1) as a static binary. It costs only 100k of additionalMaxim Sobolev2001-05-181-0/+2
| | | | | | | | | | disk space, buf provides measureable speed increase for make-intensive operations, such as pkg_version(1), `make world' and so on. MFC after: 1 week Notes: svn path=/head/; revision=76801
* Remove GCC-ism (-Wall).Will Andrews2001-04-261-1/+1
| | | | | | | Submitted by: bde Notes: svn path=/head/; revision=76012
* Add -Wall.Ruslan Ermilov2001-04-251-1/+1
| | | | Notes: svn path=/head/; revision=75976
* with my mentor hat on...Bill Fumerola2001-03-151-2/+0
| | | | | | | | | remove the concept of a 'maintainer' of our make. there really isn't a need for any one committer to hold an exclusive lock or serve as a filter for this code. Notes: svn path=/head/; revision=74294
* Assume MAINTAINER. I will be taking the job of merging NetBSD/OpenBSDWill Andrews2000-09-291-0/+2
| | | | | | | | | | improvements (including :C & :L, among others). After that, I'll be coming up with other ways to improve make(1). Discussed in spirit with: peter Notes: svn path=/head/; revision=66465
* Allow use of the ${MAKE_SHELL} variable to specify alternate shells forBrian Feldman2000-08-161-0/+16
| | | | | | | | make(1) to use. Setting it to "sh" and "ksh" are the only values which work right ATM; I wouldn't expect "csh" to get you far ;) Notes: svn path=/head/; revision=64739
* Remove CROSS_MAKE_FLAGS.Marcel Moolenaar1999-11-151-1/+1
| | | | Notes: svn path=/head/; revision=53186
* $Id$ -> $FreeBSD$Peter Wemm1999-08-281-1/+1
| | | | Notes: svn path=/head/; revision=50477
* Per requests from the community, commit rudimentary cross compilationWarner Losh1999-07-071-2/+2
| | | | | | | | | | | | | | | support. I've been building world with these changes for months w/o ill effect. I've also managed to build the cross tool chain for MIPS with these patches. Please note that the extent to which these patches work is largely dictated by how well our tool chains support the cross compilation. Building alpha binaries on i386 doesn't work. Supposedly building i386 binaries on alpha does work, but I've not verified it with these patches, however. Notes: svn path=/head/; revision=48654
* Revert $FreeBSD$ to $Id$Peter Wemm1997-02-221-1/+1
| | | | Notes: svn path=/head/; revision=23006
* Make the long-awaited change from $Id$ to $FreeBSD$Jordan K. Hubbard1997-01-141-1/+1
| | | | | | | | | | | This will make a number of things easier in the future, as well as (finally!) avoiding the Id-smashing problem which has plagued developers for so long. Boy, I'm glad we're not using sup anymore. This update would have been insane otherwise. Notes: svn path=/head/; revision=21673
* Correct problem with traversing into PSD.doc directory,Steve Price1996-10-061-5/+1
| | | | | | | | | | these files are actually installed/built as part of src/share/doc/psd/12.make. Oops. :) Pointed out by: Peter Wemm and Bruce Evans Notes: svn path=/head/; revision=18751
* Correct merge bogon: You want to descend into PSD.doc for both `all' andJordan K. Hubbard1996-10-061-2/+2
| | | | | | | | `install' cases or there's never anything made to install, and you blow up in the install. :-) Notes: svn path=/head/; revision=18749
* Merge in NetBSD's changes to make(1). Changes include:Steve Price1996-10-061-4/+8
| | | | | | | | | | | | | | | | | | | - Add the .PHONY, .PARALLEL, and .WAIT directives - Added the -B and -m commandline flags - misc. man page cleanups - numerous job-related enhancements - removed unused header file (bit.h) - add util.c for functions not found in other envs. - and a few coordinated whitespace changes Special thanks to Christos Zoulas <christos@netbsd.org> for help in the merge. A 'diff -ur' between Net and FreeBSD now only contains sccsid-related diffs. :) Obtained from: NetBSD, christos@netbsd.org, and me Notes: svn path=/head/; revision=18730
* Stop using gnumalloc.Poul-Henning Kamp1995-09-221-4/+1
| | | | Notes: svn path=/head/; revision=10953
* Allow additional parsing of SYSV/GNU make "include" directive, it coversAndrey A. Chernov1995-06-161-2/+2
| | | | | | | 90% of problems in ports Makefiles Notes: svn path=/head/; revision=9242
* Bring in a number of changes from NetBSD's make, fixing quite a fewJordan K. Hubbard1995-01-231-2/+3
| | | | | | | | | | | | | | | problems in the process: 1. Quoting should work properly now. In particular, Chet's reported bash make problem has gone away. 2. A lot of memory that just wasn't being free'd after use is now freed. This should cause make to take up a LOT less memory when dealing with archive targets. 3. Give proper credit to Adam de Boor in a number of files. Obtained from: NetBSD (and Adam de Boor) Notes: svn path=/head/; revision=5814
* Use gnumalloc.David Greenman1994-08-291-0/+3
| | | | Notes: svn path=/head/; revision=2390
* BSD 4.4 Lite Usr.bin SourcesRodney W. Grimes1994-05-271-0/+14
Notes: svn path=/cvs2svn/branches/CHRISTOS/; revision=1590