Make在多个项目Makefile中安装依赖项
我有一个包含多个子项目的Make在多个项目Makefile中安装依赖项,makefile,gnu-make,Makefile,Gnu Make,我有一个包含多个子项目的Makefile,并设置其构建依赖项 现在,我希望能够有选择地进行安装其中的一些子项目,但在安装中包含依赖项。 我该怎么做 假设一个Makefile如下: lib1: lib2: proj1: lib1 proj2: lib2 proj3: lib1 lib2 install_%: $* make -C $* install install: $(addprefix install_,$(SUBDIRS) ) 我希望能够从命令行执行以下操作:
Makefile
,并设置其构建依赖项
现在,我希望能够有选择地进行安装
其中的一些子项目,但在安装中包含依赖项。
我该怎么做
假设一个Makefile
如下:
lib1:
lib2:
proj1: lib1
proj2: lib2
proj3: lib1 lib2
install_%: $*
make -C $* install
install: $(addprefix install_,$(SUBDIRS) )
我希望能够从命令行执行以下操作:
make install SUBDIRS=proj1
或
我的规则将尝试构建和安装“proj3”,但:
- 如果未生成任何库,则将失败
- 即使找到了所需的lib,这些lib也不会随程序一起安装
欢迎提供任何帮助。在依赖项目的makefile中,包括依赖项的makefiles,并编写规则来表示依赖项: proj3/Makefile:
include ../lib1/Makefile
include ../lib2/Makefile
proj3: lib1 lib2
$(CC) ....
install: proj3 install_lib1 install_lib2
cp ...
lib1: # ....
$(CC) ....
install_lib1: # ....
cp ...
lib1/Makefile:
include ../lib1/Makefile
include ../lib2/Makefile
proj3: lib1 lib2
$(CC) ....
install: proj3 install_lib1 install_lib2
cp ...
lib1: # ....
$(CC) ....
install_lib1: # ....
cp ...