Package: emacs;
Reported by: Julien Danjou <julien <at> danjou.info>
Date: Thu, 28 Oct 2010 10:20:02 UTC
Severity: wishlist
Tags: patch
Found in version 24.0.50
Done: Stefan Monnier <monnier <at> iro.umontreal.ca>
Bug is archived. No further changes may be made.
View this message in rfc822 format
From: Julien Danjou <julien <at> danjou.info> To: 7297 <at> debbugs.gnu.org Cc: rfrancoise <at> debian.org Subject: bug#7297: 24.0.50; Split byte-recompile-directory into byte-recompile-file Date: Thu, 28 Oct 2010 12:23:44 +0200
[Message part 1 (text/plain, inline)]
The following set of patches has already been sent to emacs-devel, but since nobody has time to review them I opening a bug report to keep track of their inclusion. The purpose is to have a `byte-recompile-file' function, and patch 2 to 4 makes use of it in several places.
[1.diff (text/x-diff, inline)]
From nobody Thu Oct 28 12:22:09 2010 Return-Path: <emacs-devel-bounces+julien=danjou.info <at> gnu.org> Delivered-To: jd <at> danjou.info Received: by mx1.naquadah.org (Postfix, from userid 8) id 28D605C0F7; Tue, 21 Sep 2010 17:54:19 +0200 (CEST) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on prometheus.naquadah.org X-Spam-Level: X-Spam-Status: No, score=-4.2 required=4.5 tests=BAYES_00,RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from lists.gnu.org (lists.gnu.org [199.232.76.165]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.naquadah.org (Postfix) with ESMTPS id CD90B5C0F2 for <julien <at> danjou.info>; Tue, 21 Sep 2010 17:54:16 +0200 (CEST) Received: from localhost ([127.0.0.1]:45802 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Oy5Ac-0005ms-WF for julien <at> danjou.info; Tue, 21 Sep 2010 11:54:15 -0400 Received: from [140.186.70.92] (port=43172 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Oy4ja-00019s-Bi for emacs-devel <at> gnu.org; Tue, 21 Sep 2010 11:26:20 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from <jdanjou <at> easter-eggs.fr>) id 1Oy4jX-0006bY-St for emacs-devel <at> gnu.org; Tue, 21 Sep 2010 11:26:18 -0400 Received: from coquelicot-s.easter-eggs.com ([213.215.37.94]:36407) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from <jdanjou <at> easter-eggs.fr>) id 1Oy4jX-0006Z9-JW for emacs-devel <at> gnu.org; Tue, 21 Sep 2010 11:26:15 -0400 Received: from cigue.easter-eggs.fr (cigue.easter-eggs.fr [10.0.0.33]) by rose.easter-eggs.fr (Postfix) with ESMTPS id 1F00614142; Tue, 21 Sep 2010 17:26:09 +0200 (CEST) Received: from jdanjou by cigue.easter-eggs.fr with local (Exim 4.72) (envelope-from <jdanjou <at> cigue.easter-eggs.fr>) id 1Oy4jU-0007Qj-K1; Tue, 21 Sep 2010 17:26:12 +0200 From: Julien Danjou <julien <at> danjou.info> To: emacs-devel <at> gnu.org Date: Tue, 21 Sep 2010 17:26:07 +0200 Message-Id: <1285082770-28535-1-git-send-email-julien <at> danjou.info> X-Mailer: git-send-email 1.7.1 X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2) Cc: Julien Danjou <julien <at> danjou.info> Subject: [PATCH 1/4] Split byte-recompile-directory into byte-recompile-file X-BeenThere: emacs-devel <at> gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." <emacs-devel.gnu.org> List-Unsubscribe: <http://lists.gnu.org/mailman/listinfo/emacs-devel>, <mailto:emacs-devel-request <at> gnu.org?subject=unsubscribe> List-Archive: <http://lists.gnu.org/archive/html/emacs-devel> List-Post: <mailto:emacs-devel <at> gnu.org> List-Help: <mailto:emacs-devel-request <at> gnu.org?subject=help> List-Subscribe: <http://lists.gnu.org/mailman/listinfo/emacs-devel>, <mailto:emacs-devel-request <at> gnu.org?subject=subscribe> X-Mailman-Copy: yes Sender: emacs-devel-bounces+julien=danjou.info <at> gnu.org Errors-To: emacs-devel-bounces+julien=danjou.info <at> gnu.org Signed-off-by: Julien Danjou <julien <at> danjou.info> --- lisp/ChangeLog | 5 +++ lisp/emacs-lisp/bytecomp.el | 75 +++++++++++++++++++++++++++++++++---------- 2 files changed, 63 insertions(+), 17 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 3111ade..34a1dfd 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,3 +1,8 @@ +2010-09-21 Julien Danjou <julien <at> danjou.info> + + * emacs-lisp/bytecomp.el (byte-recompile-file): Add this function. + (byte-recompile-directory): Use `byte-recompile-file'. + 2010-09-21 Michael Albinus <michael.albinus <at> gmx.de> * net/ange-ftp.el (ange-ftp-skip-msgs): Add "^504 ..." message. diff --git a/lisp/emacs-lisp/bytecomp.el b/lisp/emacs-lisp/bytecomp.el index aca3a54..e6f55e1 100644 --- a/lisp/emacs-lisp/bytecomp.el +++ b/lisp/emacs-lisp/bytecomp.el @@ -37,6 +37,7 @@ ;; ======================================================================== ;; Entry points: ;; byte-recompile-directory, byte-compile-file, +;; byte-recompile-file, ;; batch-byte-compile, batch-byte-recompile-directory, ;; byte-compile, compile-defun, ;; display-call-tree @@ -1551,23 +1552,10 @@ that already has a `.elc' file." (not (auto-save-file-name-p bytecomp-source)) (not (string-equal dir-locals-file (file-name-nondirectory - bytecomp-source))) - (setq bytecomp-dest - (byte-compile-dest-file bytecomp-source)) - (if (file-exists-p bytecomp-dest) - ;; File was already compiled. - (or bytecomp-force - (file-newer-than-file-p bytecomp-source - bytecomp-dest)) - ;; No compiled file exists yet. - (and bytecomp-arg - (or (eq 0 bytecomp-arg) - (y-or-n-p (concat "Compile " - bytecomp-source "? ")))))) - (progn (if (and noninteractive (not byte-compile-verbose)) - (message "Compiling %s..." bytecomp-source)) - (let ((bytecomp-res (byte-compile-file - bytecomp-source))) + bytecomp-source)))) + (progn (let ((bytecomp-res (byte-recompile-file + bytecomp-source + bytecomp-force bytecomp-arg))) (cond ((eq bytecomp-res 'no-byte-compile) (setq skip-count (1+ skip-count))) ((eq bytecomp-res t) @@ -1595,6 +1583,59 @@ This is normally set in local file variables at the end of the elisp file: ;; Local Variables:\n;; no-byte-compile: t\n;; End: ") ;;;###autoload(put 'no-byte-compile 'safe-local-variable 'booleanp) +(defun byte-recompile-file (bytecomp-filename &optional bytecomp-force bytecomp-arg load) + "Recompile BYTECOMP-FILENAME file if it needs recompilation. +This happens when its `.elc' file is older than itself. + +If the `.elc' file exists and is up-to-date, normally this +function *does not* compile BYTECOMP-FILENAME. However, if the +prefix argument BYTECOMP-FORCE is set, that means do compile +BYTECOMP-FILENAME even if the destination already exists and is +up-to-date. + +If the `.elc' file does not exist, normally this function *does +not* compile BYTECOMP-FILENAME. If BYTECOMP-ARG is 0, that means +compile the file even if it has never been compiled before. +A nonzero BYTECOMP-ARG means ask the user. + +If LOAD is set, `load' the file after compiling. + +The value returned is the value returned by `byte-compile-file', +or 'no-byte-compile if the file did not need recompilation." + (interactive + (let ((bytecomp-file buffer-file-name) + (bytecomp-file-name nil) + (bytecomp-file-dir nil)) + (and bytecomp-file + (eq (cdr (assq 'major-mode (buffer-local-variables))) + 'emacs-lisp-mode) + (setq bytecomp-file-name (file-name-nondirectory bytecomp-file) + bytecomp-file-dir (file-name-directory bytecomp-file))) + (list (read-file-name (if current-prefix-arg + "Byte compile file: " + "Byte recompile file: ") + bytecomp-file-dir bytecomp-file-name nil) + current-prefix-arg))) + (let ((bytecomp-dest + (byte-compile-dest-file bytecomp-filename)) + ;; Expand now so we get the current buffer's defaults + (bytecomp-filename (expand-file-name bytecomp-filename))) + (if (if (file-exists-p bytecomp-dest) + ;; File was already compiled + ;; Compile if forced to, or filename newer + (or bytecomp-force + (file-newer-than-file-p bytecomp-filename + bytecomp-dest)) + (or (eq 0 bytecomp-arg) + (y-or-n-p (concat "Compile " + bytecomp-filename "? ")))) + (progn + (if (and noninteractive (not byte-compile-verbose)) + (message "Compiling %s..." bytecomp-source)) + (byte-compile-file bytecomp-filename load)) + (when load (load bytecomp-filename)) + 'no-byte-compile))) + ;;;###autoload (defun byte-compile-file (bytecomp-filename &optional load) "Compile a file of Lisp code named BYTECOMP-FILENAME into a file of byte code. -- 1.7.1
[2.diff (text/x-diff, inline)]
From nobody Thu Oct 28 12:22:14 2010 Return-Path: <emacs-devel-bounces+julien=danjou.info <at> gnu.org> Delivered-To: jd <at> danjou.info Received: by mx1.naquadah.org (Postfix, from userid 8) id 459015C0F7; Tue, 21 Sep 2010 18:16:23 +0200 (CEST) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on prometheus.naquadah.org X-Spam-Level: X-Spam-Status: No, score=-4.2 required=4.5 tests=BAYES_00,RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from lists.gnu.org (lists.gnu.org [199.232.76.165]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.naquadah.org (Postfix) with ESMTPS id 2AC455C0E7 for <julien <at> danjou.info>; Tue, 21 Sep 2010 18:16:21 +0200 (CEST) Received: from localhost ([127.0.0.1]:49303 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Oy5W0-0000GL-0k for julien <at> danjou.info; Tue, 21 Sep 2010 12:16:20 -0400 Received: from [140.186.70.92] (port=43156 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Oy4jZ-00019U-Q7 for emacs-devel <at> gnu.org; Tue, 21 Sep 2010 11:26:20 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from <jdanjou <at> easter-eggs.fr>) id 1Oy4jX-0006bF-Ov for emacs-devel <at> gnu.org; Tue, 21 Sep 2010 11:26:17 -0400 Received: from coquelicot-s.easter-eggs.com ([213.215.37.94]:36404) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from <jdanjou <at> easter-eggs.fr>) id 1Oy4jX-0006Z6-JY for emacs-devel <at> gnu.org; Tue, 21 Sep 2010 11:26:15 -0400 Received: from cigue.easter-eggs.fr (cigue.easter-eggs.fr [10.0.0.33]) by rose.easter-eggs.fr (Postfix) with ESMTPS id 2EB7314171; Tue, 21 Sep 2010 17:26:09 +0200 (CEST) Received: from jdanjou by cigue.easter-eggs.fr with local (Exim 4.72) (envelope-from <jdanjou <at> cigue.easter-eggs.fr>) id 1Oy4jU-0007Ql-L5; Tue, 21 Sep 2010 17:26:12 +0200 From: Julien Danjou <julien <at> danjou.info> To: emacs-devel <at> gnu.org Date: Tue, 21 Sep 2010 17:26:08 +0200 Message-Id: <1285082770-28535-2-git-send-email-julien <at> danjou.info> X-Mailer: git-send-email 1.7.1 In-Reply-To: <1285082770-28535-1-git-send-email-julien <at> danjou.info> References: <1285082770-28535-1-git-send-email-julien <at> danjou.info> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2) Cc: Julien Danjou <julien <at> danjou.info> Subject: [PATCH 2/4] Use byte-recompile-file in emacs-lisp-byte-compile-and-load X-BeenThere: emacs-devel <at> gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." <emacs-devel.gnu.org> List-Unsubscribe: <http://lists.gnu.org/mailman/listinfo/emacs-devel>, <mailto:emacs-devel-request <at> gnu.org?subject=unsubscribe> List-Archive: <http://lists.gnu.org/archive/html/emacs-devel> List-Post: <mailto:emacs-devel <at> gnu.org> List-Help: <mailto:emacs-devel-request <at> gnu.org?subject=help> List-Subscribe: <http://lists.gnu.org/mailman/listinfo/emacs-devel>, <mailto:emacs-devel-request <at> gnu.org?subject=subscribe> X-Mailman-Copy: yes Sender: emacs-devel-bounces+julien=danjou.info <at> gnu.org Errors-To: emacs-devel-bounces+julien=danjou.info <at> gnu.org Signed-off-by: Julien Danjou <julien <at> danjou.info> --- lisp/ChangeLog | 3 +++ lisp/emacs-lisp/lisp-mode.el | 5 +---- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 34a1dfd..175286b 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,5 +1,8 @@ 2010-09-21 Julien Danjou <julien <at> danjou.info> + * emacs-lisp/lisp-mode.el (emacs-lisp-byte-compile-and-load): Use + `byte-recompile-file'. + * emacs-lisp/bytecomp.el (byte-recompile-file): Add this function. (byte-recompile-directory): Use `byte-recompile-file'. diff --git a/lisp/emacs-lisp/lisp-mode.el b/lisp/emacs-lisp/lisp-mode.el index e4330e4..ef639d6 100644 --- a/lisp/emacs-lisp/lisp-mode.el +++ b/lisp/emacs-lisp/lisp-mode.el @@ -407,10 +407,7 @@ All commands in `lisp-mode-shared-map' are inherited by this map.") (if (and (buffer-modified-p) (y-or-n-p (format "Save buffer %s first? " (buffer-name)))) (save-buffer)) - (let ((compiled-file-name (byte-compile-dest-file buffer-file-name))) - (if (file-newer-than-file-p compiled-file-name buffer-file-name) - (load-file compiled-file-name) - (byte-compile-file buffer-file-name t)))) + (byte-recompile-file buffer-file-name nil 0 t)) (defcustom emacs-lisp-mode-hook nil "Hook run when entering Emacs Lisp mode." -- 1.7.1
[3.diff (text/x-diff, inline)]
From nobody Thu Oct 28 12:22:24 2010 Return-Path: <emacs-devel-bounces+julien=danjou.info <at> gnu.org> Delivered-To: jd <at> danjou.info Received: by mx1.naquadah.org (Postfix, from userid 8) id 5D7F35C0F5; Tue, 21 Sep 2010 17:30:37 +0200 (CEST) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on prometheus.naquadah.org X-Spam-Level: X-Spam-Status: No, score=-4.2 required=4.5 tests=BAYES_00,RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from lists.gnu.org (lists.gnu.org [199.232.76.165]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.naquadah.org (Postfix) with ESMTPS id 3441F5C0EA for <julien <at> danjou.info>; Tue, 21 Sep 2010 17:30:35 +0200 (CEST) Received: from localhost ([127.0.0.1]:49308 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Oy4nh-00025y-OL for julien <at> danjou.info; Tue, 21 Sep 2010 11:30:33 -0400 Received: from [140.186.70.92] (port=43158 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Oy4jZ-00019X-QX for emacs-devel <at> gnu.org; Tue, 21 Sep 2010 11:26:20 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from <jdanjou <at> easter-eggs.fr>) id 1Oy4jX-0006bR-QG for emacs-devel <at> gnu.org; Tue, 21 Sep 2010 11:26:17 -0400 Received: from coquelicot-s.easter-eggs.com ([213.215.37.94]:36406) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from <jdanjou <at> easter-eggs.fr>) id 1Oy4jX-0006Z8-JZ for emacs-devel <at> gnu.org; Tue, 21 Sep 2010 11:26:15 -0400 Received: from cigue.easter-eggs.fr (cigue.easter-eggs.fr [10.0.0.33]) by rose.easter-eggs.fr (Postfix) with ESMTPS id 320A614172; Tue, 21 Sep 2010 17:26:09 +0200 (CEST) Received: from jdanjou by cigue.easter-eggs.fr with local (Exim 4.72) (envelope-from <jdanjou <at> cigue.easter-eggs.fr>) id 1Oy4jU-0007Qo-Li; Tue, 21 Sep 2010 17:26:12 +0200 From: Julien Danjou <julien <at> danjou.info> To: emacs-devel <at> gnu.org Date: Tue, 21 Sep 2010 17:26:09 +0200 Message-Id: <1285082770-28535-3-git-send-email-julien <at> danjou.info> X-Mailer: git-send-email 1.7.1 In-Reply-To: <1285082770-28535-1-git-send-email-julien <at> danjou.info> References: <1285082770-28535-1-git-send-email-julien <at> danjou.info> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2) Cc: Julien Danjou <julien <at> danjou.info> Subject: [PATCH 3/4] Use byte-recompile-file in cedet/project-compile-target X-BeenThere: emacs-devel <at> gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." <emacs-devel.gnu.org> List-Unsubscribe: <http://lists.gnu.org/mailman/listinfo/emacs-devel>, <mailto:emacs-devel-request <at> gnu.org?subject=unsubscribe> List-Archive: <http://lists.gnu.org/archive/html/emacs-devel> List-Post: <mailto:emacs-devel <at> gnu.org> List-Help: <mailto:emacs-devel-request <at> gnu.org?subject=help> List-Subscribe: <http://lists.gnu.org/mailman/listinfo/emacs-devel>, <mailto:emacs-devel-request <at> gnu.org?subject=subscribe> X-Mailman-Copy: yes Sender: emacs-devel-bounces+julien=danjou.info <at> gnu.org Errors-To: emacs-devel-bounces+julien=danjou.info <at> gnu.org Signed-off-by: Julien Danjou <julien <at> danjou.info> --- lisp/ChangeLog | 2 ++ lisp/cedet/semantic/ede-grammar.el | 5 +---- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 175286b..4f0aaac 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,5 +1,7 @@ 2010-09-21 Julien Danjou <julien <at> danjou.info> + * cedet/semantic/ede-grammar.el: Use `byte-recompile-file'. + * emacs-lisp/lisp-mode.el (emacs-lisp-byte-compile-and-load): Use `byte-recompile-file'. diff --git a/lisp/cedet/semantic/ede-grammar.el b/lisp/cedet/semantic/ede-grammar.el index 184e23c..ac99588 100644 --- a/lisp/cedet/semantic/ede-grammar.el +++ b/lisp/cedet/semantic/ede-grammar.el @@ -133,10 +133,7 @@ Lays claim to all -by.el, and -wy.el files." (save-excursion (semantic-grammar-create-package)) (save-buffer) - (let ((cf (concat (semantic-grammar-package) ".el"))) - (if (or (not (file-exists-p cf)) - (file-newer-than-file-p src cf)) - (byte-compile-file cf))))) + (byte-recompile-file (concat (semantic-grammar-package) ".el") nil 0)) (oref obj source))) (message "All Semantic Grammar sources are up to date in %s" (object-name obj))) -- 1.7.1
[4.diff (text/x-diff, inline)]
From nobody Thu Oct 28 12:22:27 2010 Return-Path: <emacs-devel-bounces+julien=danjou.info <at> gnu.org> Delivered-To: jd <at> danjou.info Received: by mx1.naquadah.org (Postfix, from userid 8) id 5417C5C0F6; Tue, 21 Sep 2010 17:56:25 +0200 (CEST) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on prometheus.naquadah.org X-Spam-Level: X-Spam-Status: No, score=-4.2 required=4.5 tests=BAYES_00,RCVD_IN_DNSWL_MED autolearn=ham version=3.3.1 Received: from lists.gnu.org (lists.gnu.org [199.232.76.165]) (using TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)) (No client certificate requested) by mx1.naquadah.org (Postfix) with ESMTPS id 335575C0F2 for <julien <at> danjou.info>; Tue, 21 Sep 2010 17:56:23 +0200 (CEST) Received: from localhost ([127.0.0.1]:40222 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Oy5Cf-0006m3-EW for julien <at> danjou.info; Tue, 21 Sep 2010 11:56:21 -0400 Received: from [140.186.70.92] (port=43154 helo=eggs.gnu.org) by lists.gnu.org with esmtp (Exim 4.43) id 1Oy4jZ-00019P-NL for emacs-devel <at> gnu.org; Tue, 21 Sep 2010 11:26:24 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.69) (envelope-from <jdanjou <at> easter-eggs.fr>) id 1Oy4jX-0006bM-QI for emacs-devel <at> gnu.org; Tue, 21 Sep 2010 11:26:17 -0400 Received: from coquelicot-s.easter-eggs.com ([213.215.37.94]:36405) by eggs.gnu.org with esmtp (Exim 4.69) (envelope-from <jdanjou <at> easter-eggs.fr>) id 1Oy4jX-0006Z7-Ja for emacs-devel <at> gnu.org; Tue, 21 Sep 2010 11:26:15 -0400 Received: from cigue.easter-eggs.fr (cigue.easter-eggs.fr [10.0.0.33]) by rose.easter-eggs.fr (Postfix) with ESMTPS id 38C341427B; Tue, 21 Sep 2010 17:26:09 +0200 (CEST) Received: from jdanjou by cigue.easter-eggs.fr with local (Exim 4.72) (envelope-from <jdanjou <at> cigue.easter-eggs.fr>) id 1Oy4jU-0007Qr-MN; Tue, 21 Sep 2010 17:26:12 +0200 From: Julien Danjou <julien <at> danjou.info> To: emacs-devel <at> gnu.org Date: Tue, 21 Sep 2010 17:26:10 +0200 Message-Id: <1285082770-28535-4-git-send-email-julien <at> danjou.info> X-Mailer: git-send-email 1.7.1 In-Reply-To: <1285082770-28535-1-git-send-email-julien <at> danjou.info> References: <1285082770-28535-1-git-send-email-julien <at> danjou.info> X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2) Cc: Julien Danjou <julien <at> danjou.info> Subject: [PATCH 4/4] (project-compile-target) use byte-recompile-file X-BeenThere: emacs-devel <at> gnu.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "Emacs development discussions." <emacs-devel.gnu.org> List-Unsubscribe: <http://lists.gnu.org/mailman/listinfo/emacs-devel>, <mailto:emacs-devel-request <at> gnu.org?subject=unsubscribe> List-Archive: <http://lists.gnu.org/archive/html/emacs-devel> List-Post: <mailto:emacs-devel <at> gnu.org> List-Help: <mailto:emacs-devel-request <at> gnu.org?subject=help> List-Subscribe: <http://lists.gnu.org/mailman/listinfo/emacs-devel>, <mailto:emacs-devel-request <at> gnu.org?subject=subscribe> X-Mailman-Copy: yes Sender: emacs-devel-bounces+julien=danjou.info <at> gnu.org Errors-To: emacs-devel-bounces+julien=danjou.info <at> gnu.org Signed-off-by: Julien Danjou <julien <at> danjou.info> --- lisp/ChangeLog | 3 +++ lisp/cedet/ede/proj-elisp.el | 7 ++----- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/lisp/ChangeLog b/lisp/ChangeLog index 4f0aaac..d96fafc 100644 --- a/lisp/ChangeLog +++ b/lisp/ChangeLog @@ -1,5 +1,8 @@ 2010-09-21 Julien Danjou <julien <at> danjou.info> + * cedet/ede/proj-elisp.el (project-compile-target): Use + `byte-recompile-file'. + * cedet/semantic/ede-grammar.el: Use `byte-recompile-file'. * emacs-lisp/lisp-mode.el (emacs-lisp-byte-compile-and-load): Use diff --git a/lisp/cedet/ede/proj-elisp.el b/lisp/cedet/ede/proj-elisp.el index ecdefb2..21322df 100644 --- a/lisp/cedet/ede/proj-elisp.el +++ b/lisp/cedet/ede/proj-elisp.el @@ -131,11 +131,8 @@ Bonus: Return a cons cell: (COMPILED . UPTODATE)." (let* ((fsrc (expand-file-name src dir)) (elc (concat (file-name-sans-extension fsrc) ".elc")) ) - (if (or (not (file-exists-p elc)) - (file-newer-than-file-p fsrc elc)) - (progn - (setq comp (1+ comp)) - (byte-compile-file fsrc)) + (if (eq (byte-recompile-file fsrc nil 0)) t) + (setq comp (1+ comp)) (setq utd (1+ utd))))) (oref obj source)) (message "All Emacs Lisp sources are up to date in %s" (object-name obj)) -- 1.7.1
[Message part 6 (text/plain, inline)]
-- Julien Danjou // ᐰ <julien <at> danjou.info> http://julien.danjou.info
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.