unofficial mirror of bug-gnu-emacs@gnu.org 
 help / color / mirror / code / Atom feed
* bug#7297: 24.0.50; Split byte-recompile-directory into byte-recompile-file
@ 2010-10-28 10:23 Julien Danjou
  2010-10-31 19:26 ` Stefan Monnier
  0 siblings, 1 reply; 2+ messages in thread
From: Julien Danjou @ 2010-10-28 10:23 UTC (permalink / raw)
  To: 7297; +Cc: rfrancoise

[-- Attachment #1: Type: text/plain, Size: 277 bytes --]


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.


[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 1.diff --]
[-- Type: text/x-diff, Size: 8163 bytes --]

From nobody Thu Oct 28 12:22:09 2010
Return-Path: <emacs-devel-bounces+julien=danjou.info@gnu.org>
Delivered-To: jd@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@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@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@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@easter-eggs.fr>) id 1Oy4jX-0006bY-St
	for emacs-devel@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@easter-eggs.fr>) id 1Oy4jX-0006Z9-JW
	for emacs-devel@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@cigue.easter-eggs.fr>)
	id 1Oy4jU-0007Qj-K1; Tue, 21 Sep 2010 17:26:12 +0200
From: Julien Danjou <julien@danjou.info>
To: emacs-devel@gnu.org
Date: Tue, 21 Sep 2010 17:26:07 +0200
Message-Id: <1285082770-28535-1-git-send-email-julien@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@danjou.info>
Subject: [PATCH 1/4] Split byte-recompile-directory into byte-recompile-file
X-BeenThere: emacs-devel@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@gnu.org?subject=unsubscribe>
List-Archive: <http://lists.gnu.org/archive/html/emacs-devel>
List-Post: <mailto:emacs-devel@gnu.org>
List-Help: <mailto:emacs-devel-request@gnu.org?subject=help>
List-Subscribe: <http://lists.gnu.org/mailman/listinfo/emacs-devel>,
	<mailto:emacs-devel-request@gnu.org?subject=subscribe>
X-Mailman-Copy: yes
Sender: emacs-devel-bounces+julien=danjou.info@gnu.org
Errors-To: emacs-devel-bounces+julien=danjou.info@gnu.org

Signed-off-by: Julien Danjou <julien@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@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@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



[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #3: 2.diff --]
[-- Type: text/x-diff, Size: 4419 bytes --]

From nobody Thu Oct 28 12:22:14 2010
Return-Path: <emacs-devel-bounces+julien=danjou.info@gnu.org>
Delivered-To: jd@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@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@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@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@easter-eggs.fr>) id 1Oy4jX-0006bF-Ov
	for emacs-devel@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@easter-eggs.fr>) id 1Oy4jX-0006Z6-JY
	for emacs-devel@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@cigue.easter-eggs.fr>)
	id 1Oy4jU-0007Ql-L5; Tue, 21 Sep 2010 17:26:12 +0200
From: Julien Danjou <julien@danjou.info>
To: emacs-devel@gnu.org
Date: Tue, 21 Sep 2010 17:26:08 +0200
Message-Id: <1285082770-28535-2-git-send-email-julien@danjou.info>
X-Mailer: git-send-email 1.7.1
In-Reply-To: <1285082770-28535-1-git-send-email-julien@danjou.info>
References: <1285082770-28535-1-git-send-email-julien@danjou.info>
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2)
Cc: Julien Danjou <julien@danjou.info>
Subject: [PATCH 2/4] Use byte-recompile-file in
	emacs-lisp-byte-compile-and-load
X-BeenThere: emacs-devel@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@gnu.org?subject=unsubscribe>
List-Archive: <http://lists.gnu.org/archive/html/emacs-devel>
List-Post: <mailto:emacs-devel@gnu.org>
List-Help: <mailto:emacs-devel-request@gnu.org?subject=help>
List-Subscribe: <http://lists.gnu.org/mailman/listinfo/emacs-devel>,
	<mailto:emacs-devel-request@gnu.org?subject=subscribe>
X-Mailman-Copy: yes
Sender: emacs-devel-bounces+julien=danjou.info@gnu.org
Errors-To: emacs-devel-bounces+julien=danjou.info@gnu.org

Signed-off-by: Julien Danjou <julien@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@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



[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #4: 3.diff --]
[-- Type: text/x-diff, Size: 4334 bytes --]

From nobody Thu Oct 28 12:22:24 2010
Return-Path: <emacs-devel-bounces+julien=danjou.info@gnu.org>
Delivered-To: jd@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@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@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@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@easter-eggs.fr>) id 1Oy4jX-0006bR-QG
	for emacs-devel@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@easter-eggs.fr>) id 1Oy4jX-0006Z8-JZ
	for emacs-devel@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@cigue.easter-eggs.fr>)
	id 1Oy4jU-0007Qo-Li; Tue, 21 Sep 2010 17:26:12 +0200
From: Julien Danjou <julien@danjou.info>
To: emacs-devel@gnu.org
Date: Tue, 21 Sep 2010 17:26:09 +0200
Message-Id: <1285082770-28535-3-git-send-email-julien@danjou.info>
X-Mailer: git-send-email 1.7.1
In-Reply-To: <1285082770-28535-1-git-send-email-julien@danjou.info>
References: <1285082770-28535-1-git-send-email-julien@danjou.info>
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2)
Cc: Julien Danjou <julien@danjou.info>
Subject: [PATCH 3/4] Use byte-recompile-file in cedet/project-compile-target
X-BeenThere: emacs-devel@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@gnu.org?subject=unsubscribe>
List-Archive: <http://lists.gnu.org/archive/html/emacs-devel>
List-Post: <mailto:emacs-devel@gnu.org>
List-Help: <mailto:emacs-devel-request@gnu.org?subject=help>
List-Subscribe: <http://lists.gnu.org/mailman/listinfo/emacs-devel>,
	<mailto:emacs-devel-request@gnu.org?subject=subscribe>
X-Mailman-Copy: yes
Sender: emacs-devel-bounces+julien=danjou.info@gnu.org
Errors-To: emacs-devel-bounces+julien=danjou.info@gnu.org

Signed-off-by: Julien Danjou <julien@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@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



[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #5: 4.diff --]
[-- Type: text/x-diff, Size: 4406 bytes --]

From nobody Thu Oct 28 12:22:27 2010
Return-Path: <emacs-devel-bounces+julien=danjou.info@gnu.org>
Delivered-To: jd@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@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@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@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@easter-eggs.fr>) id 1Oy4jX-0006bM-QI
	for emacs-devel@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@easter-eggs.fr>) id 1Oy4jX-0006Z7-Ja
	for emacs-devel@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@cigue.easter-eggs.fr>)
	id 1Oy4jU-0007Qr-MN; Tue, 21 Sep 2010 17:26:12 +0200
From: Julien Danjou <julien@danjou.info>
To: emacs-devel@gnu.org
Date: Tue, 21 Sep 2010 17:26:10 +0200
Message-Id: <1285082770-28535-4-git-send-email-julien@danjou.info>
X-Mailer: git-send-email 1.7.1
In-Reply-To: <1285082770-28535-1-git-send-email-julien@danjou.info>
References: <1285082770-28535-1-git-send-email-julien@danjou.info>
X-detected-operating-system: by eggs.gnu.org: GNU/Linux 2.6 (newer, 2)
Cc: Julien Danjou <julien@danjou.info>
Subject: [PATCH 4/4] (project-compile-target) use byte-recompile-file
X-BeenThere: emacs-devel@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@gnu.org?subject=unsubscribe>
List-Archive: <http://lists.gnu.org/archive/html/emacs-devel>
List-Post: <mailto:emacs-devel@gnu.org>
List-Help: <mailto:emacs-devel-request@gnu.org?subject=help>
List-Subscribe: <http://lists.gnu.org/mailman/listinfo/emacs-devel>,
	<mailto:emacs-devel-request@gnu.org?subject=subscribe>
X-Mailman-Copy: yes
Sender: emacs-devel-bounces+julien=danjou.info@gnu.org
Errors-To: emacs-devel-bounces+julien=danjou.info@gnu.org

Signed-off-by: Julien Danjou <julien@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@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



[-- Attachment #6: Type: text/plain, Size: 81 bytes --]



-- 
Julien Danjou
// ᐰ <julien@danjou.info>   http://julien.danjou.info

^ permalink raw reply related	[flat|nested] 2+ messages in thread

* bug#7297: 24.0.50; Split byte-recompile-directory into byte-recompile-file
  2010-10-28 10:23 bug#7297: 24.0.50; Split byte-recompile-directory into byte-recompile-file Julien Danjou
@ 2010-10-31 19:26 ` Stefan Monnier
  0 siblings, 0 replies; 2+ messages in thread
From: Stefan Monnier @ 2010-10-31 19:26 UTC (permalink / raw)
  To: Julien Danjou; +Cc: rfrancoise

> 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.

Thanks, installed in trunk.


        Stefan





^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2010-10-31 19:26 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-10-28 10:23 bug#7297: 24.0.50; Split byte-recompile-directory into byte-recompile-file Julien Danjou
2010-10-31 19:26 ` Stefan Monnier

Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).