我有两个makefile,directoryA/Makefile
和directoryB/Makefile
。
directoryA/Makefile
取决于相当大且复杂的directoryB/Makefile
目标。
我可以做一个递归制作
$(MAKE) -C directoryB
但这对several reasons来说是不可取的。有两大原因:我必须多次执行makefile,make
无法正确知道何时需要重建目标。
我想使用include
指令。问题有两个:
directoryB/Makefile
中的目标都是相对于该Makefile定义的。
许多命令依赖于工作目录directoryB
。
递归make解决了这两个问题,但有很大的缺点(如前所述)。有没有办法在使用include
时解决这两个问题?
答案 0 :(得分:0)
在没有看到directoryA/Makefile
的情况下很难说,但另一种选择是让它include directoryB/Makefile
,然后
cd directoryB
make -f ../directoryA/Makefile