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 0162D431FBC for ; Sun, 19 May 2013 04:15:51 -0700 (PDT) X-Virus-Scanned: Debian amavisd-new at olra.theworths.org X-Spam-Flag: NO X-Spam-Score: -2.3 X-Spam-Level: X-Spam-Status: No, score=-2.3 tagged_above=-999 required=5 tests=[RCVD_IN_DNSWL_MED=-2.3] 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 8F1BfQGP+H03 for ; Sun, 19 May 2013 04:15:44 -0700 (PDT) Received: from tempo.its.unb.ca (tempo.its.unb.ca [131.202.1.21]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by olra.theworths.org (Postfix) with ESMTPS id DDBFD431FB6 for ; Sun, 19 May 2013 04:15:43 -0700 (PDT) Received: from tesseract.cs.unb.ca (tesseract.cs.unb.ca [131.202.240.238]) by tempo.its.unb.ca (8.13.8/8.13.8) with ESMTP id r4JBFeIt015376; Sun, 19 May 2013 08:15:40 -0300 Received: from fctnnbsc30w-156034082078.dhcp-dynamic.fibreop.nb.bellaliant.net ([156.34.82.78] helo=zancas.localnet) by tesseract.cs.unb.ca with esmtpsa (TLS1.2:DHE_RSA_AES_128_CBC_SHA1:128) (Exim 4.80) (envelope-from ) id 1Ue1aW-0002xW-1r; Sun, 19 May 2013 08:15:40 -0300 Received: from bremner by zancas.localnet with local (Exim 4.80) (envelope-from ) id 1Ue1aQ-00068o-EC; Sun, 19 May 2013 08:15:34 -0300 From: David Bremner To: Austin Clements , notmuch@notmuchmail.org Subject: Re: [PATCH] emacs: Compute build dependencies to fix byte compile issues In-Reply-To: <1368821611-24110-1-git-send-email-amdragon@mit.edu> References: <1368821611-24110-1-git-send-email-amdragon@mit.edu> User-Agent: Notmuch/0.15.2+84~g12d5e4e (http://notmuchmail.org) Emacs/24.3.1 (x86_64-pc-linux-gnu) Date: Sun, 19 May 2013 08:15:33 -0300 Message-ID: <87y5bbjk4q.fsf@zancas.localnet> MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable X-Spam_bar: - 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, 19 May 2013 11:15:52 -0000 Austin Clements writes: > > This patch addresses these problems by computing make dependency rules > from the (require 'x) forms in the Elisp source files, which we inject > into make's dependency database. this seems to work as advertised. > +;; > +;; Copyright =C2=A9 Austin Clements I guess you need a copyright year? > + ;; Is it a (require 'x) form? > + (when (and (listp form) (=3D (length form) 2) > + (eq (car form) 'require) > + (listp (cadr form)) (=3D (length (cadr form)) 2) > + (eq (car (cadr form)) 'quote) > + (symbolp (cadr (cadr form)))) This might be a corner case, but formally can't the argument to require be a variable or even a function call? Maybe this never happens in practice.