> On Mar 6, 2017, at 8:51 AM, Christian Thalinger <cthalin...@twitter.com> > wrote: > > >> On Mar 3, 2017, at 4:09 PM, David Holmes <david.hol...@oracle.com> wrote: >> >> Hi Christian, >> >> I think you need to pass an absolute directory, in which all the custom >> files, regardless of repo, are located. That is essentially how we use it - >> jdk/make/closed has files included from other repos. Of course that only >> works if names are unique. > > Absolute directory to where? Is > $(CUSTOM_MAKE_DIR)/lib/ServiceabilityLibraries.gmk not under jdk/make/closed?
After reading your message a couple of times :-) I got it. Basically pass /repo/make/closed and have all files there. But why? That doesn’t make any sense since there is a jdk/make/closed directory. > >> >> David >> >> On 4/03/2017 9:11 AM, Rob McKenna wrote: >>> Hi Christian, >>> >>> I'm cc'ing build-dev (and bcc'ing jdk8u-dev) as that may be a more >>> appropriate >>> venue for this discussion. >>> >>> -Rob >>> >>> On 03/03/17 10:19, Christian Thalinger wrote: >>>> At Twitter we are using the custom extension mechanism to separate our >>>> additional code from upstream in order to minimize conflicts. Yesterday I >>>> wanted to add a custom extension for: >>>> >>>> jdk/make/lib/ServiceabilityLibraries.gmk >>>> >>>> which has this include directive: >>>> >>>> # Include custom extensions if available. >>>> -include $(CUSTOM_MAKE_DIR)/lib/ServiceabilityLibraries.gmk >>>> >>>> We are already using the mechanism for top-level make files, e.g. >>>> make/Main.gmk: >>>> >>>> # Include the corresponding custom file, if present. >>>> -include $(CUSTOM_MAKE_DIR)/Main.gmk >>>> >>>> and we a configuring with: >>>> >>>> --with-custom-make-dir=make/closed >>>> >>>> This works fine for make/ but not for jdk/make/: >>>> >>>> $ make jdk CUSTOM_MAKE_DIR=make/closed >>>> … >>>> >>>> ## Starting jdk >>>> lib/ServiceabilityLibraries.gmk:27: >>>> make/closed/lib/ServiceabilityLibraries.gmk: No such file or directory >>>> make[2]: *** No rule to make target >>>> `make/closed/lib/ServiceabilityLibraries.gmk'. Stop. >>>> make[1]: *** [libs-only] Error 2 >>>> make: *** [jdk-only] Error 2 >>>> >>>> (I changed "-include" to “include” to provoke the error.) >>>> >>>> jdk/make/ files expect CUSTOM_MAKE_DIR to be just “closed” but that >>>> doesn’t work for top-level: >>>> >>>> $ make jdk CUSTOM_MAKE_DIR=closed >>>> /Users/cthalinger/twitter8//make/Main.gmk:35: closed/Main.gmk: No such >>>> file or directory >>>> make: *** No rule to make target `closed/Main.gmk'. Stop. >>>> >>>> How is this supposed to work? >