From 5805109804bc55ef6bf079366dfd24fb928377c3 Mon Sep 17 00:00:00 2001 From: Achim Gratz Date: Wed, 11 Jul 2012 19:32:33 +0200 Subject: [PATCH] Let the user override the version strings produced in org-fixup. * UTILITIES/org-fixup.el (org-fixup): Let the user override the version strings produced in org-fixup whith strings stored in org-fake-release and org-fake-git-version. Skip loading them from a pre-existing org-version.el or trying to determine them from git in this case. This is predominantly useful if Git is not available, but the user wants to install from a Git tarball which is missing a pre-configured org-version.el file. --- UTILITIES/org-fixup.el | 37 +++++++++++++++++++++---------------- 1 file changed, 21 insertions(+), 16 deletions(-) diff --git a/UTILITIES/org-fixup.el b/UTILITIES/org-fixup.el index 1e03801..20613d2 100644 --- a/UTILITIES/org-fixup.el +++ b/UTILITIES/org-fixup.el @@ -140,22 +140,27 @@ (defmacro org-fixup () (dirgit (concat dirorg ".git/" )) (org-version "N/A-fixup") (org-git-version "N/A-fixup !!check installation!!")) - (if (load (concat dirlisp "org-version.el") 'noerror 'nomessage 'nosuffix) - (setq org-version (org-release) - org-git-version (org-git-version)) - (when (and (file-exists-p dirgit) - (executable-find "git")) - (unwind-protect - (progn - (cd dirorg) - (let ((git6 (substring (shell-command-to-string "git describe --abbrev=6 HEAD") 0 -1)) - (git0 (substring (shell-command-to-string "git describe --abbrev=0 HEAD") 0 -1)) - (gitd (string-match "\\S-" (shell-command-to-string "git status -uno --porcelain")))) - (setq org-git-version (concat git6 (when gitd ".dirty"))) - (if (string-match "^release_" git0) - (setq org-version (substring git0 8)) - (setq org-version git0)))) - (cd origin)))) + (if (and (boundp 'org-fake-release) (stringp org-fake-release) + (boundp 'org-fake-git-version) (stringp org-fake-git-version)) + (setq org-version org-fake-release + org-git-version org-fake-git-version) + (if (load (concat dirlisp "org-version.el") 'noerror 'nomessage 'nosuffix) + (setq org-version (org-release) + org-git-version (org-git-version)) + (when (and (file-exists-p dirgit) + (executable-find "git")) + (unwind-protect + (progn + (cd dirorg) + (let ((git6 (substring (shell-command-to-string "git describe --abbrev=6 HEAD") 0 -1)) + (git0 (substring (shell-command-to-string "git describe --abbrev=0 HEAD") 0 -1)) + (gitd (string-match "\\S-" + (shell-command-to-string "git status -uno --porcelain")))) + (setq org-git-version (concat git6 (when gitd ".dirty"))) + (if (string-match "^release_" git0) + (setq org-version (substring git0 8)) + (setq org-version git0)))) + (cd origin))))) `(progn (defun org-release () ,org-version) (defun org-git-version () ,org-git-version) -- 1.7.10.4