;;; elmo-version.el -- Version information for ELMO.
-;; Copyright 2000 Yuuichi Teranishi <teranisi@gohome.org>
+;; Copyright (C) 2000 Yuuichi Teranishi <teranisi@gohome.org>
+;; Copyright (C) 2000 TAKAHASHI Kaoru <kaoru@kaisei.org>
;; Author: Yuuichi Teranishi <teranisi@gohome.org>
+;; TAKAHASHI Kaoru <kaoru@kaisei.org>
;; Keywords: mail, net news
;; This file is part of ELMO (Elisp Library for Message Orchestration).
;;; Commentary:
;;
+;; Put the following lines to each file of ELMO package.
+;;
+;; (require 'product)
+;; (product-provide (provide FEATURE) (require 'elmo-version))
;;; Code:
;;
(require 'product)
-(provide 'elmo-version) ; have to declare in the top.
+(provide 'elmo-version) ; before product-provide
+;; product-define in the first place
(product-provide 'elmo-version
- (product-define "ELMO" nil '(2 3 91)))
+ ;; Don't forget to check `wl-version.el' and Info.
+ (product-define "ELMO" nil '(2 6 0)))
+
+;; For APEL 10.2 or earlier.
+(defun-maybe product-version-as-string (product)
+ "Return version number of product as a string.
+PRODUCT is a product structure which returned by `product-define'.
+If optional argument UPDATE is non-nil, then regenerate
+`produce-version-string' from `product-version'."
+ (setq product (product-find product))
+ (or (product-version-string product)
+ (and (product-version product)
+ (product-set-version-string product
+ (mapconcat (function int-to-string)
+ (product-version product)
+ ".")))))
;; set version-string
-(if (fboundp 'product-version-as-string)
- (product-version-as-string 'elmo-version)
- (product-string-1 'elmo-version)) ; APEL 10.2 or earlier
+(product-version-as-string 'elmo-version)
(defun elmo-version ()
"Return ELMO version."
(defconst elmo-appname (product-name (product-find 'elmo-version)))
(make-obsolete-variable
'elmo-appname
- "use (product-name (product-find 'elmo-version)) insteaed.")
+ "use (product-name (product-find 'elmo-version)) instead.")
(defconst elmo-version (product-version-string (product-find 'elmo-version)))
(make-obsolete-variable