如何使用Makefile做到这一点?
if ( file exist in desktop )
do X
else
mkdir folderName
do X
平台linux
答案 0 :(得分:2)
您可以在makefile中定义一个bash脚本函数,如下所示:
define my_func
if [ -e $(FILE) ] \
then \
<do x> \
else \
mkdir $(FOLDER_NAME) \
<do x> \
endif
endef
然后你可以像这样打电话给你的目标:
all:
@$(call my_func)
FILE
包含您要测试存在的文件的路径,FOLDER_NAME
包含您要创建的文件夹的路径(如上面的问题所示)。
答案 1 :(得分:2)
all:
$(if $(wildcard desktop/file),,mkdir foldername)
do X
$(if)
的解释:http://www.gnu.org/software/make/manual/make.html#index-if-628
$(wildcard)
的解释:http://www.gnu.org/software/make/manual/make.html#index-wildcard-620