JDK libraries build question: propagating a new make variable/value
Brad Wetmore
Bradford.Wetmore at Sun.COM
Fri Apr 18 16:05:59 UTC 2008
Many of the common variables used throughout JDK are defined in the
common and shared Makefiles, and then included in the various leaf and
middle makefiles. I'd start by looking at those first. Another tip,
many of the common Makefiles include other common Makefiles, so if one
you need isn't listed, it's very possible that it's referenced by
another one that is. It can take a while to unravel what's included
just by including one top level Makefile.
HTH,
Brad
Steve Bohne wrote:
> This is hopefully an easy question for JDK libraries build experts.
>
> I want to pass along a new make variable/value to all sub-makes during
> the JDK build. Currently each Makefile is edited to pass it to all
> subdirectories. I have to make this change in every Makefile in every
> non-leaf directory:
>
> all optimized debug clean clobber ::
> @for i in $(SUBDIRS) ; do \
> $(ECHO) ">>>Recursively making "$$i" "$@" @ `$(DATE)` ..."; \
> $(CD) $$i; $(MAKE) $@ RELEASE=$(RELEASE) FULL_VERSION=$(FULL_VERSION) \
> + NEW_VAR=$(NEW_VAR) \
> || exit 1; $(CD) ..; \
> $(ECHO) "<<<Finished Recursively making "$$i" "$@" @ `$(DATE)`." ;
> done
>
>
> Is there an easier way that doesn't touch so many Makefiles?
>
> Is there perhaps a Makefile that gets generated during the build and
> included everywhere? Or a way to use MFLAGS/MAKEFLAGS to pass it along?
>
> Any tips are appreciated.
>
> Thanks,
> Steve
More information about the build-dev
mailing list