Mercurial > hg > xemacs-beta
diff lisp/version.el @ 0:376386a54a3c r19-14
Import from CVS: tag r19-14
author | cvs |
---|---|
date | Mon, 13 Aug 2007 08:45:50 +0200 |
parents | |
children | ac2d302a0011 |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/lisp/version.el Mon Aug 13 08:45:50 2007 +0200 @@ -0,0 +1,107 @@ +;; Record version number of Emacs. +;; Copyright (C) 1985, 1991-1994 Free Software Foundation, Inc. + +;; This file is part of GNU Emacs. + +;; GNU Emacs is free software; you can redistribute it and/or modify +;; it under the terms of the GNU General Public License as published by +;; the Free Software Foundation; either version 2, or (at your option) +;; any later version. + +;; GNU Emacs is distributed in the hope that it will be useful, +;; but WITHOUT ANY WARRANTY; without even the implied warranty of +;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;; GNU General Public License for more details. + +;; You should have received a copy of the GNU General Public License +;; along with GNU Emacs; see the file COPYING. If not, write to +;; the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. + +;;; Synched up with: FSF 19.30. + +;;; Code: + +;; The following line is modified automatically +;; by loading inc-version.el, each time a new Emacs is dumped. +(defconst emacs-version "19.14" "\ +Version numbers of this version of Emacs.") + +(setq emacs-version (purecopy (concat emacs-version " XEmacs Lucid"))) + +(defconst emacs-major-version + (progn (or (string-match "^[0-9]+" emacs-version) + (error "emacs-version unparsable")) + (string-to-int (match-string 0 emacs-version))) + "Major version number of this version of Emacs, as an integer. +Warning, this variable did not exist in Emacs versions earlier than: + FSF Emacs: 19.23 + XEmacs: 19.10") + +(defconst emacs-minor-version + (progn (or (string-match "^[0-9]+\\.\\([0-9]+\\)" emacs-version) + (error "emacs-version unparsable")) + (string-to-int (match-string 1 emacs-version))) + "Minor version number of this version of Emacs, as an integer. +Warning, this variable did not exist in Emacs versions earlier than: + FSF Emacs: 19.23 + XEmacs: 19.10") + +(defconst emacs-build-time (current-time-string) "\ +Time at which Emacs was dumped out.") + +(defconst emacs-build-system (system-name)) + +(defun emacs-version (&optional here) "\ +Return string describing the version of Emacs that is running. +If optional argument HERE is non-nil, insert string at point. +Don't use this function in programs to choose actions according +to the system configuration; look at `system-configuration' instead." + (interactive "P") + (let ((version-string + (format "XEmacs %s [Lucid] (%s) of %s %s on %s" + (substring emacs-version 0 + (string-match " XEmacs" emacs-version)) + system-configuration + (substring emacs-build-time 0 + (string-match " *[0-9]*:" emacs-build-time)) + (substring emacs-build-time + (string-match "[0-9]*$" emacs-build-time)) + emacs-build-system))) + (if here + (insert version-string) + (if (interactive-p) + (message "%s" version-string) + version-string)))) + +;; from emacs-vers.el +(defun emacs-version>= (major &optional minor) + "Return true if the Emacs version is >= to the given MAJOR and MINOR numbers. + +The MAJOR version number argument is required, but the MINOR version number +argument is optional. If the minor version number is not specified (or is the +symbol `nil') then only the major version numbers are considered in the test." + (if (null minor) + (>= emacs-major-version major) + (or (> emacs-major-version major) + (and (= emacs-major-version major) + (>= emacs-minor-version minor)) + ) + )) + +;;; We hope that this alias is easier for people to find. +(define-function 'version 'emacs-version) + +;; Put the emacs version number into the `pure[]' array in a form that +;; `what(1)' can extract from the executable or a core file. We don't +;; actually need this to be pointed to from lisp; pure objects can't +;; be GCed. +(or (memq system-type '(vax-vms windows-nt ms-dos)) + (purecopy (concat "\n@" "(#)" (emacs-version) + "\n@" "(#)" "Configuration: " + system-configuration "\n"))) + +;;Local variables: +;;version-control: never +;;End: + +;;; version.el ends here