Macos 检查Makefile中是否存在目录

Macos 检查Makefile中是否存在目录,macos,makefile,Macos,Makefile,如果我的Makefile在OS X上不存在,我希望它创建一个目录。否则我会使用mkdir-p,但它会删除目录中已经包含的任何内容,我不希望这样。以下是我迄今为止所尝试的: all: DIR=../../aether3d_build ifneq ("$(wildcard $(DIR))","") mkdir $(DIR) endif 它会导致以下错误: DIR=../../aether3d_build ifneq ("","") /

如果我的Makefile在OS X上不存在,我希望它创建一个目录。否则我会使用
mkdir-p
,但它会删除目录中已经包含的任何内容,我不希望这样。以下是我迄今为止所尝试的:

all:
        DIR=../../aether3d_build
        ifneq ("$(wildcard $(DIR))","")
        mkdir $(DIR)
        endif
它会导致以下错误:

DIR=../../aether3d_build
ifneq ("","")
/bin/sh: -c: line 0: syntax error near unexpected token `"",""'
/bin/sh: -c: line 0: `ifneq ("","")'

mkdir-p
不会删除任何内容
ifneq
是一个生成级别的构造,而不是shell,它超出了配方行。您需要在那里进行shell测试
[-d“$$DIR”]| | mkdir“$DIR”
,但正如我从
mkdir-p开始时所说的那样,它实际上是您想要的,因为它不做您认为它会做的事情。感谢您提供的信息,问题是,我有两个Makefiles将内容复制到构建目录中,另一个将目录的相对路径错了一个“./”。