Subject: [PATCH] Make a new fortune dat file in compile time if dat file not exist

From: Juanma Barranquero <[email-masked]>
Date: Fri, 8 Jan 2010 11:12:25 +0100

Package: emacs
Severity: minor
tags: patch
X-Debbugs-CC: Kirill A. Korinskiy <[email-masked]>

---------- Forwarded message ----------
From: Kirill A. Korinskiy <[email-masked]>
Date: Fri, Jan 8, 2010 at 03:20
Subject: [PATCH] Make a new fortune dat file in compile time if dat
file not exist
To: [email-masked]
Cc: "Kirill A. Korinskiy" <[email-masked]>

---
 lisp/play/fortune.el |   24 +++++++++++++++---------
 1 files changed, 15 insertions(+), 9 deletions(-)

diff --git a/lisp/play/fortune.el b/lisp/play/fortune.el
index 3b895c7..0f92085 100644
--- a/lisp/play/fortune.el
+++ b/lisp/play/fortune.el
@@ -245,15 +245,21 @@ the value of `fortune-file'.  This currently
cannot handle directories."
  (let* ((fortune-file (expand-file-name (substitute-in-file-name file)))
        (fortune-dat (expand-file-name
                      (substitute-in-file-name
-                       (concat fortune-file fortune-database-extension)))))
-  (cond ((file-exists-p fortune-file)
-        (if (file-exists-p fortune-dat)
-            (cond ((file-newer-than-file-p fortune-file fortune-dat)
-                   (message "Compiling new fortune database %s" fortune-dat)
-                   (shell-command
-                    (concat fortune-strfile fortune-strfile-options
-                            " " fortune-file
fortune-quiet-strfile-options))))))
-       (t (error "Can't compile fortune file %s" fortune-file)))))
+                       (concat fortune-file fortune-database-extension))))
+        (fortune-file-exist (file-exists-p fortune-file))
+        (fortune-dat-exist (file-exists-p fortune-dat))
+        (fortune-file-newer (file-newer-than-file-p
+                             fortune-file fortune-dat)))
+    (cond
+     (fortune-file-exist
+      (if (or (not fortune-dat-exist)
+             (and fortune-dat-exist
+                  fortune-file-newer))
+         (message "Compiling new fortune database %s" fortune-dat)
+       (shell-command
+        (concat fortune-strfile fortune-strfile-options
+                " " fortune-file fortune-quiet-strfile-options))))
+     (t (error "Can't compile fortune file %s" fortune-file)))))

 ;;; **************
--
1.6.2