cvs commit: src/usr.bin/make hash_tables.c main.c parse.c var.c var.h

Hartmut Brandt harti at FreeBSD.org
Fri May 6 11:30:06 PDT 2005


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 at 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


More information about the cvs-all mailing list