在makefile中使用cygwin bash函数

时间:2015-06-16 16:51:30

标签: bash makefile cygwin

我在cygwin .bashrc中使用以下bash函数(返回窗口样式路径)

pwd() {
  cygpath -m "`command pwd`"
}
export pwd

所以当我从bash运行pwd时,我得到了windows样式路径中的结果。但是,如果我在Makefile中使用pwd,那么我会得到cygwin样式结果

run:
    echo `pwd`

任何人都可以建议我如何让它在Makefile中运行。

P.S:我不能使用cygpath,这个示例问题只是描述了我的大问题集中的一个问题。

1 个答案:

答案 0 :(得分:0)

我想我理解你的问题。我的调试方式是:

1)从pwd

中删除自定义.bashrc功能

2)重启Cygwin

3)拨打type cygpath并保留输出。

4)拨打pwd并保留输出。

5)调用并保持输出:

cygpath -m `pwd`

6)创建并运行此Makefile

all:
    @echo "type cygpath is: `type cygpath`"

7)3)和6)的输出是否相同?如果是,请转到下一步。

8)创建并运行这个Makefile:

all:
    @echo "pwd is: `pwd`"

8)4)和8)的输出是否相同?如果是,请转到下一步。

9)创建并运行这个Makefile:

all:
    @PWD=`pwd`; echo "Windows cygpath is: `cygpath -m $$PWD`"

10)这就是你想要的吗?