Date: Fri, 6 May 2005 18:30:06 +0000 (UTC) From: Hartmut Brandt <harti@FreeBSD.org> To: src-committers@FreeBSD.org, cvs-src@FreeBSD.org, cvs-all@FreeBSD.org Subject: cvs commit: src/usr.bin/make hash_tables.c main.c parse.c var.c var.h Message-ID: <200505061830.j46IU6vk087269@repoman.freebsd.org>
next in thread | raw e-mail | index | archive | help
harti 2005-05-06 18:30:06 UTC
FreeBSD src repository
Modified files:
usr.bin/make hash_tables.c main.c parse.c var.c var.h
Log:
Introduce a new pseudo-target .EXPORTVAR which allows to put a
make macro into the environment of programs executed by make. This
has approximately the same function as gmake's export directive.
The form of a pseudo target was deliberately choosen to minimize work
for POSIX compatibility (Makefiles are not allowed to use any targets
starting with a dot and consisting only of uppercase letters except those
specified in the standard when they want POSIX compatible behaviour, so
such a Makefile can never contain .EXPORTVAR.)
Change the handling of macros coming from the environment: instead
of asking the environment for each variable we could not find otherwise
put all the environment variables in a special variable environment just
at start up.
This has been tested on the ports cluster by kris.
Submitted by: Max Okumoto <okumoto@ucsd.edu>
Revision Changes Path
1.2 +25 -24 src/usr.bin/make/hash_tables.c
1.136 +4 -1 src/usr.bin/make/main.c
1.101 +5 -1 src/usr.bin/make/parse.c
1.145 +81 -65 src/usr.bin/make/var.c
1.17 +4 -3 src/usr.bin/make/var.h
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200505061830.j46IU6vk087269>
