summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAchim Gratz <Stromeko@Stromeko.DE>2012-07-11 19:32:33 +0200
committerBastien Guerry <bzg@altern.org>2012-07-11 22:20:52 +0200
commitb050afa06f26bd73be5db6d051369f286c5a4ed4 (patch)
treeed5cfd16ef454f7a1387ebffd1d0cadcfdfbdb16
parentbe56d706aebab0c3d0d372354f699b6f3d1893ff (diff)
downloadorg-mode-b050afa06f26bd73be5db6d051369f286c5a4ed4.tar.gz
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.
-rw-r--r--UTILITIES/org-fixup.el37
1 files 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 @@ oldorg: # do what the old Makfile did by default
(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)