Return-Path: X-Original-To: notmuch@notmuchmail.org Delivered-To: notmuch@notmuchmail.org Received: from localhost (localhost [127.0.0.1]) by olra.theworths.org (Postfix) with ESMTP id 28228431FAF for ; Sun, 4 Aug 2013 05:36:51 -0700 (PDT) X-Virus-Scanned: Debian amavisd-new at olra.theworths.org X-Spam-Flag: NO X-Spam-Score: -0.799 X-Spam-Level: X-Spam-Status: No, score=-0.799 tagged_above=-999 required=5 tests=[DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, RCVD_IN_DNSWL_LOW=-0.7] autolearn=disabled Received: from olra.theworths.org ([127.0.0.1]) by localhost (olra.theworths.org [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id fb5w8WRBHE1x for ; Sun, 4 Aug 2013 05:36:46 -0700 (PDT) Received: from mail-ea0-f181.google.com (mail-ea0-f181.google.com [209.85.215.181]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (No client certificate requested) by olra.theworths.org (Postfix) with ESMTPS id 388FC431FAE for ; Sun, 4 Aug 2013 05:36:46 -0700 (PDT) Received: by mail-ea0-f181.google.com with SMTP id d10so1132527eaj.12 for ; Sun, 04 Aug 2013 05:36:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=from:to:subject:in-reply-to:references:user-agent:date:message-id :mime-version:content-type; bh=lCtEANNKzKmfPRoeTdqWq6ewuZZ5f1U6yig6gl9ou+8=; b=lWZfgE4HQu6LoaKCcbrZKurlNxFzRRN9WCxDtLlkpZhtMgNAr0cLinr6oQXRCPfxYE 7a0t3SyayI2OT06rCi4/Ql1r4oD8aNKk7UcQIUbO7ZAT6TMec5qWlhV9rkmEuZYWqeh9 fRquvLuZ0TzoOWRUgYzgr4yTZ1U7Z0xE3gT8usYWg3HYWpHuJ49Dt+Ak9D9rZ6ldeIky JZDjGOpdtsc2xa0c7fmBdT/KVfx6zQk/+iI1DshNRj6/CRshBQa/l67WqosUhsBSMgB0 srXrevURIBH5C3fg4d56CGynTKuhyzzhjmODekzHnZUCL71vVJotliqj1UUPmTQ3fAVi vuRQ== X-Received: by 10.15.83.69 with SMTP id b45mr12638780eez.150.1375619803649; Sun, 04 Aug 2013 05:36:43 -0700 (PDT) Received: from rory-Inspiron-3521 (ti-225-82-132.telkomadsl.co.za. [105.225.82.132]) by mx.google.com with ESMTPSA id k7sm9399568eeg.13.2013.08.04.05.36.41 for (version=TLSv1.1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Sun, 04 Aug 2013 05:36:42 -0700 (PDT) Received: from rory-Inspiron-3521 (localhost [127.0.0.1]) by rory-Inspiron-3521 (Postfix) with ESMTP id 43C1E16001C1; Sun, 4 Aug 2013 14:36:38 +0200 (SAST) From: Rory Yorke To: Tomi Ollila , notmuch@notmuchmail.org Subject: Re: [PATCH] man/Makefile.local: allow out-of-tree 'make install'. In-Reply-To: References: <1375522597-23428-1-git-send-email-rory.yorke@gmail.com> User-Agent: Notmuch/0.16 (http://notmuchmail.org) Emacs/24.3.1 (x86_64-pc-linux-gnu) Date: Sun, 04 Aug 2013 14:36:38 +0200 Message-ID: <871u69pr8p.fsf@gmail.com> MIME-Version: 1.0 Content-Type: text/plain X-BeenThere: notmuch@notmuchmail.org X-Mailman-Version: 2.1.13 Precedence: list List-Id: "Use and development of the notmuch mail system." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 04 Aug 2013 12:36:51 -0000 Tomi Ollila writes: > So why $(srcdir)/ prefix is needed only here... Hi, I'm not sure; I'm afraid I just did something that worked for me. It was long enough ago that I don't remember how I came up with this hack. Here's what appears to be some pertinent different behaviour between master and my patch: 1. In empty directory ~/tmp/notmuch-build-master run ~/git/notmuch/configure, with ~/git/notmuch checked out as master: 2. Partial output of make -d -n install is: Considering target file `man/man1/notmuch-tag.1.gz'. File `man/man1/notmuch-tag.1.gz' does not exist. Looking for an implicit rule for `man/man1/notmuch-tag.1.gz'. Trying pattern rule with stem `notmuch-tag.1'. Trying implicit prerequisite `man/man1/notmuch-tag.1'. Found prerequisite `man/man1/notmuch-tag.1' as VPATH `/home/rory/git/notmuch/man/man1/notmuch-tag.1' [many lines omitted] Must remake target `man/man1/notmuch-tag.1.gz'. gzip --stdout /home/rory/git/notmuch/man/man1/notmuch-tag.1 > man/man1/notmuch-tag.1.gz Successfully remade target file `man/man1/notmuch-tag.1.gz'. Considering target file `man/man5/notmuch-hooks.5.gz'. File `man/man5/notmuch-hooks.5.gz' does not exist. Looking for an implicit rule for `man/man5/notmuch-hooks.5.gz'. Trying pattern rule with stem `notmuch-hooks.5'. Trying implicit prerequisite `man/man5/notmuch-hooks.5'. Trying pattern rule with stem `notmuch-hooks.5.gz'. Trying implicit prerequisite `man/man5/notmuch-hooks.5.gz,v'. [many lines omitted] Must remake target `man/man5/notmuch-hooks.5.gz'. make: *** No rule to make target `man/man5/notmuch-hooks.5.gz', needed by `install-man'. Stop. 3. In empty directory ~/tmp/notmuch-build-rory run ~/git/notmuch/configure, with ~/git/notmuch checked out as rory. 4. Partial output of make -d -n install is: Considering target file `/home/rory/git/notmuch/man/man1/notmuch-tag.1.gz'. File `/home/rory/git/notmuch/man/man1/notmuch-tag.1.gz' does not exist. Looking for an implicit rule for `/home/rory/git/notmuch/man/man1/notmuch-tag.1.gz'. Trying pattern rule with stem `notmuch-tag.1'. Trying implicit prerequisite `/home/rory/git/notmuch/man/man1/notmuch-tag.1'. Found an implicit rule for `/home/rory/git/notmuch/man/man1/notmuch-tag.1.gz'. [many lines omitted] Must remake target `/home/rory/git/notmuch/man/man1/notmuch-tag.1.gz'. gzip --stdout /home/rory/git/notmuch/man/man1/notmuch-tag.1 > /home/rory/git/notmuch/man/man1/notmuch-tag.1.gz Successfully remade target file `/home/rory/git/notmuch/man/man1/notmuch-tag.1.gz'. Considering target file `/home/rory/git/notmuch/man/man5/notmuch-hooks.5.gz'. File `/home/rory/git/notmuch/man/man5/notmuch-hooks.5.gz' does not exist. Looking for an implicit rule for `/home/rory/git/notmuch/man/man5/notmuch-hooks.5.gz'. Trying pattern rule with stem `notmuch-hooks.5'. Trying implicit prerequisite `/home/rory/git/notmuch/man/man5/notmuch-hooks.5'. Found an implicit rule for `/home/rory/git/notmuch/man/man5/notmuch-hooks.5.gz'. [many lines omitted] Must remake target `/home/rory/git/notmuch/man/man5/notmuch-hooks.5.gz'. gzip --stdout /home/rory/git/notmuch/man/man5/notmuch-hooks.5 > /home/rory/git/notmuch/man/man5/notmuch-hooks.5.gz The successful build of notmuch-tag.1.gz is *different* -- on master VPATH is used, while with my patch it is not. The rules for man1, man5 and man7 certainly look similar, so it's not clear why the man1 entries work. Perhaps this fragment at the top of man/Makefile.local is there for a similar reason? # this variable seems to be needed to prevent lazy evaluation causing # problems with $(dir) changing values. MAIN_PAGE := $(dir)/man1/notmuch.1 I see the gzipped man files end up in the source tree; I guess ideally they'd be in the build tree? Regards, Rory