Makefile:$ @〜是什么意思?

时间:2015-07-05 06:27:25

标签: makefile

我正在处理一个旧的makefile,它包含以下代码片段以生成共享库:

lib$(LIBNAME).so.$(SOLIBREV): $(OBJS)
    $(RM) $@~
    @SONAME=`echo $@ | sed 's/\.[^\.]*$$//'`; set -x; \
    $(CC) -o ./$@~ -shared -Wl,-soname,$$SONAME $(OBJS) $(SOEXTRALIBS) -lc;
    $(MV) $@~ $@
    $(MV) $@ lib$(LIBNAME).so

现在我需要修改它。我知道$ @指定目标,但是“$ @〜”中的波浪号有什么意义?

顺便说一句,SOLIBREV代表so-library-revision。

1 个答案:

答案 0 :(得分:3)

这并不意味着什么特别的。只有$@后跟文字~。文件名上的~后缀通常用于临时文件,因此此配方使用以目标命名但后缀为~的临时文件。