buildmakefileautotools

How to NOT print in the output a comment in a makefile


I have a makefile that is like this:

install:
    @somecommand

    #some explanation for next command
    @lastcommand

What happens is that the comment #some explanation for next command is being printed when I execute make install. How can I make a comment in a makefile that doesn't get printed? Maybe I'm looking for the unix equivalent for the windowsy echo off?

(Effectively, the opposite of this question.)


Solution

  • Don't indent the comment — when the line starts with a tab, it is a command that is executed by the shell (and the shell treats the comment as a comment).

    Proof of concept (ss.mk):

    all:
        echo "This is the first command"
        # This comment is echoed
    
    # This comment is not echoed
        echo "This is the second command"
    

    Sample output:

    $ make -f ss.mk
    echo "This is the first command"
    This is the first command
    # This comment is echoed
    echo "This is the second command"
    This is the second command
    $