Source-Changes archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

CVS commit: basesrc/usr.bin/make



Module Name:    basesrc
Committed By:   tv
Date:           Wed Oct 31 03:59:43 UTC 2001

Modified Files:
        basesrc/usr.bin/make: Makefile main.c make.h parse.c

Log Message:
Overhaul the initialization and handling of .OBJDIR:

* Replace chdir_verify_path() with Main_SetObjdir(), which can be called
  externally, and can take a "const char *".  (There's a lot of non-const
  "char *" passing around in var.c of what should be const strings....)

* Rewrite the initial "find my .OBJDIR" code to make use of the new
  function.  This still functions as it had in the past, but the comment
  above this block was changed to reflect reality:  if MAKEOBJDIRPREFIX
  or MAKEOBJDIR are set in the environment, then *only that value* is
  tried; make does not fall back to obj.MACHINE, obj, and /usr/obj/`pwd`
  as it would without these env vars set.

* Add a new special target, .OBJDIR:, which when parsed will cause make to
  change to a new object directory and reset .OBJDIR, and PWD in the
  environment.  This will allow some makefiles (mainly, src/tools)
  to override the default objdir semantics in order to add custom logic.


To generate a diff of this commit:
cvs rdiff -r1.24 -r1.25 basesrc/usr.bin/make/Makefile
cvs rdiff -r1.73 -r1.74 basesrc/usr.bin/make/main.c
cvs rdiff -r1.38 -r1.39 basesrc/usr.bin/make/make.h
cvs rdiff -r1.74 -r1.75 basesrc/usr.bin/make/parse.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.




Home | Main Index | Thread Index | Old Index