Masahiro Yamada
2018-09-13 05:18:32 UTC
Hello,
I wonder why --include-dir does not become
effective in the current Makefile.
Here is the test case.
[ Not working sample ]
-------------(Makefile)--------------
MAKEFLAGS += --include-dir=foo
include inc.mk
all:
@echo hello
-------------(Makefile END)------------
$ mkdir foo
$ touch foo/inc.mk
$ make
Makefile:3: inc.mk: No such file or directory
make: *** No rule to make target 'inc.mk'. Stop.
[ Working sample ]
-------------(Makefile)--------------
MAKEFLAGS += --include-dir=foo
ifneq ($(IN_SUBMAKE),1)
all:
@$(MAKE) IN_SUBMAKE=1
else
include inc.mk
all:
@echo hello
endif
-------------(Makefile END)------------
$ mkdir foo
$ touch foo/inc.mk
$ make
make[1]: Entering directory '/home/masahiro/workspace'
hello
make[1]: Leaving directory '/home/masahiro/workspace'
From the example above, --include-dir is effective
only after diving into sub make.
Is this an intentional behavior?
Is there a way to make it effective in the current make?
I wonder why --include-dir does not become
effective in the current Makefile.
Here is the test case.
[ Not working sample ]
-------------(Makefile)--------------
MAKEFLAGS += --include-dir=foo
include inc.mk
all:
@echo hello
-------------(Makefile END)------------
$ mkdir foo
$ touch foo/inc.mk
$ make
Makefile:3: inc.mk: No such file or directory
make: *** No rule to make target 'inc.mk'. Stop.
[ Working sample ]
-------------(Makefile)--------------
MAKEFLAGS += --include-dir=foo
ifneq ($(IN_SUBMAKE),1)
all:
@$(MAKE) IN_SUBMAKE=1
else
include inc.mk
all:
@echo hello
endif
-------------(Makefile END)------------
$ mkdir foo
$ touch foo/inc.mk
$ make
make[1]: Entering directory '/home/masahiro/workspace'
hello
make[1]: Leaving directory '/home/masahiro/workspace'
From the example above, --include-dir is effective
only after diving into sub make.
Is this an intentional behavior?
Is there a way to make it effective in the current make?
--
Best Regards
Masahiro Yamada
Best Regards
Masahiro Yamada