获取makefile变量的顶级目录部分的最简单代码是什么?例:
BUILD_DIR = dir/subdir/.../sub-a-dub-dir
distclean:
rm -rf <some code which evaluates to "dir" from $(BUILD_DIR)>
PS:我不是说$(dir $(dir $(BUILD_DIR)))
,而是可以获取任何变量值的第一个目录部分的东西。
@ greenmang0:标记您的答案。首先,这是完全错误的(您是否还执行了这些命令?),其次是makefile而不是Bash。
—
2011年
@ l0b0这是一条评论,“错了”并不是举报任何内容的好理由,只需发表评论说出问题所在
—
迈克尔·莫罗泽克
@MichaelMrozek:我将其标记为“非建设性/无关紧要的话题”,两者均适用。
—
l0b0 2011年
我不明白您的问题:“顶级目录部分”是什么意思?您是指第一个部分之前的部分
—
吉尔斯(Gilles)'所以
/
吗?您是否保证参数是相对路径?您是否假设GNU make?
dirname /tmp/foo/bar
将给予/tmp
或dirname foo/bar/baz
将给予foo