Using make target name in generated prerequisite

2019-09-02 04:08发布

All I am wanting to do something along the lines of...

some_file.out : ..... ver_$(basename $@).ver:
   .....

The $@ does not expand as expected but only in the rule header. Inside the body of the rule all uses of ver_$(basename $@).ver expand as desired. How would I modify this to make it work as desired?

1条回答
Fickle 薄情
2楼-- · 2019-09-02 04:57

You have ellipses eliding too many important parts of your example to provide a full solution. However, one option is to use static pattern rules, like this:

some_file.out : %.out : ver_%.ver
        ...

If that isn't sufficient you can use secondary expansion, but that's a bigger hammer.

查看更多
登录 后发表回答