Makefile directive interpretation











up vote
0
down vote

favorite












I am trying to reverse this Makefile.



However in the folowing lines:



install-packer: tmp/packer_$(PACKER_VERSION).zip
mkdir -p ~/bin
unzip -o -d ~/bin $<
chmod +x $(PACKER)
@echo Packer $(PACKER_VERSION) was successfully installed!

# Install packer only if it doesn't exist
$(PACKER):
@$(MAKE) install-packer

tmp/packer_$(PACKER_VERSION).zip:
curl -fsSLo $@ 'https://releases.hashicorp.com/packer/$(PACKER_VERSION)/packer_$(PACKER_VERSION)_$(UNAME)_amd64.zip'
@echo Downloaded new Packer version: $(PACKER_VERSION)!


I am unable to understand the following directive/dependency:



# Install packer only if it doesn't exist
$(PACKER):
@$(MAKE) install-packer


How it will




install packer only if it doesn't exist




?










share|improve this question


























    up vote
    0
    down vote

    favorite












    I am trying to reverse this Makefile.



    However in the folowing lines:



    install-packer: tmp/packer_$(PACKER_VERSION).zip
    mkdir -p ~/bin
    unzip -o -d ~/bin $<
    chmod +x $(PACKER)
    @echo Packer $(PACKER_VERSION) was successfully installed!

    # Install packer only if it doesn't exist
    $(PACKER):
    @$(MAKE) install-packer

    tmp/packer_$(PACKER_VERSION).zip:
    curl -fsSLo $@ 'https://releases.hashicorp.com/packer/$(PACKER_VERSION)/packer_$(PACKER_VERSION)_$(UNAME)_amd64.zip'
    @echo Downloaded new Packer version: $(PACKER_VERSION)!


    I am unable to understand the following directive/dependency:



    # Install packer only if it doesn't exist
    $(PACKER):
    @$(MAKE) install-packer


    How it will




    install packer only if it doesn't exist




    ?










    share|improve this question
























      up vote
      0
      down vote

      favorite









      up vote
      0
      down vote

      favorite











      I am trying to reverse this Makefile.



      However in the folowing lines:



      install-packer: tmp/packer_$(PACKER_VERSION).zip
      mkdir -p ~/bin
      unzip -o -d ~/bin $<
      chmod +x $(PACKER)
      @echo Packer $(PACKER_VERSION) was successfully installed!

      # Install packer only if it doesn't exist
      $(PACKER):
      @$(MAKE) install-packer

      tmp/packer_$(PACKER_VERSION).zip:
      curl -fsSLo $@ 'https://releases.hashicorp.com/packer/$(PACKER_VERSION)/packer_$(PACKER_VERSION)_$(UNAME)_amd64.zip'
      @echo Downloaded new Packer version: $(PACKER_VERSION)!


      I am unable to understand the following directive/dependency:



      # Install packer only if it doesn't exist
      $(PACKER):
      @$(MAKE) install-packer


      How it will




      install packer only if it doesn't exist




      ?










      share|improve this question













      I am trying to reverse this Makefile.



      However in the folowing lines:



      install-packer: tmp/packer_$(PACKER_VERSION).zip
      mkdir -p ~/bin
      unzip -o -d ~/bin $<
      chmod +x $(PACKER)
      @echo Packer $(PACKER_VERSION) was successfully installed!

      # Install packer only if it doesn't exist
      $(PACKER):
      @$(MAKE) install-packer

      tmp/packer_$(PACKER_VERSION).zip:
      curl -fsSLo $@ 'https://releases.hashicorp.com/packer/$(PACKER_VERSION)/packer_$(PACKER_VERSION)_$(UNAME)_amd64.zip'
      @echo Downloaded new Packer version: $(PACKER_VERSION)!


      I am unable to understand the following directive/dependency:



      # Install packer only if it doesn't exist
      $(PACKER):
      @$(MAKE) install-packer


      How it will




      install packer only if it doesn't exist




      ?







      makefile






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked 19 hours ago









      pkaramol

      1033




      1033



























          active

          oldest

          votes











          Your Answer








          StackExchange.ready(function() {
          var channelOptions = {
          tags: "".split(" "),
          id: "3"
          };
          initTagRenderer("".split(" "), "".split(" "), channelOptions);

          StackExchange.using("externalEditor", function() {
          // Have to fire editor after snippets, if snippets enabled
          if (StackExchange.settings.snippets.snippetsEnabled) {
          StackExchange.using("snippets", function() {
          createEditor();
          });
          }
          else {
          createEditor();
          }
          });

          function createEditor() {
          StackExchange.prepareEditor({
          heartbeatType: 'answer',
          convertImagesToLinks: true,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: 10,
          bindNavPrevention: true,
          postfix: "",
          imageUploader: {
          brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
          contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
          allowUrls: true
          },
          onDemand: true,
          discardSelector: ".discard-answer"
          ,immediatelyShowMarkdownHelp:true
          });


          }
          });














           

          draft saved


          draft discarded


















          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f1374955%2fmakefile-directive-interpretation%23new-answer', 'question_page');
          }
          );

          Post as a guest





































          active

          oldest

          votes













          active

          oldest

          votes









          active

          oldest

          votes






          active

          oldest

          votes
















           

          draft saved


          draft discarded



















































           


          draft saved


          draft discarded














          StackExchange.ready(
          function () {
          StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f1374955%2fmakefile-directive-interpretation%23new-answer', 'question_page');
          }
          );

          Post as a guest




















































































          Popular posts from this blog

          Список кардиналов, возведённых папой римским Каликстом III

          Deduzione

          Mysql.sock missing - “Can't connect to local MySQL server through socket”