Follow-up Comment #2, bug #38437 (project make): (just paste the mail with solution here for your reference)
Thanks Philip. It works for me, and now I can distribute my makefiles into different path. However, I still hope it can be improved as the expreience of C/C++ tells us it shall be able to. When reading a makefile, the path of this file should be added into the search path automaticallly. 2013/2/28 Philip Guenther <guent...@gmail.com> On Wed, Feb 27, 2013 at 8:55 PM, Jian <invalid.nore...@gnu.org> wrote: ... > Supposing 2 makefiles in dir A: 1.mak, 2.mak, and 1.mak include 2.mak. > Now in dir B, 3.mak includes 'A/1.mak' (will auto include 2.mak). But error > shows that 2.mak cannot be found. > > The make option "-I" can be the workaround like: > cd B > make -f 3.mak -IA > > But it's not acceptable to tell user to uses "-I" to make every time. make > shall be able to find 2.mak. So have 1.mak look for 2.mak in the same directory, by doing something like: # Get the directory part of the path by which 1.mak was included # This should be before any other includes in 1.mak dir_of_1 = $(dir $(lastword $(MAKEFILE_LIST))) ...and then later: # pull in 2.mak in the same directory as this file include ${dir_of_1}2.mak _______________________________________________________ Reply to this item at: <http://savannah.gnu.org/bugs/?38437> _______________________________________________ Message sent via/by Savannah http://savannah.gnu.org/ _______________________________________________ Bug-make mailing list Bug-make@gnu.org https://lists.gnu.org/mailman/listinfo/bug-make