From mboxrd@z Thu Jan 1 00:00:00 1970 From: Achim Gratz Subject: Re: M-x org-version RET now produces some sensible in all possible install/use-cases Date: Fri, 18 May 2012 22:14:40 +0200 Message-ID: <871umhcklr.fsf@Rainer.invalid> References: <87k40axa0a.fsf@gnu.org> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 8bit Return-path: Received: from eggs.gnu.org ([208.118.235.92]:40718) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SVTZg-0005jy-7x for emacs-orgmode@gnu.org; Fri, 18 May 2012 16:14:57 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1SVTZd-0004f3-5v for emacs-orgmode@gnu.org; Fri, 18 May 2012 16:14:55 -0400 Received: from plane.gmane.org ([80.91.229.3]:39144) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1SVTZc-0004ek-RQ for emacs-orgmode@gnu.org; Fri, 18 May 2012 16:14:53 -0400 Received: from list by plane.gmane.org with local (Exim 4.69) (envelope-from ) id 1SVTZa-0000K3-Ds for emacs-orgmode@gnu.org; Fri, 18 May 2012 22:14:50 +0200 Received: from pd9eb28e9.dip.t-dialin.net ([217.235.40.233]) by main.gmane.org with esmtp (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Fri, 18 May 2012 22:14:50 +0200 Received: from Stromeko by pd9eb28e9.dip.t-dialin.net with local (Gmexim 0.1 (Debian)) id 1AlnuQ-0007hv-00 for ; Fri, 18 May 2012 22:14:50 +0200 List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org Sender: emacs-orgmode-bounces+geo-emacs-orgmode=m.gmane.org@gnu.org To: emacs-orgmode@gnu.org Bastien writes: > Thanks to patient and hard work of Achim, M-x org-version RET > should now return something sensible in each use-case. There are basically two use-cases, not-installed and installed. Not-installed comes in three flavors, although the first one has some hard to avoid pitfalls and should be considered dangerous. If the autoload files are not or not fully generated, then determining the version is done at runtime like in former org versions and relies on the existence of $(lispdir)/../UTILITIES/org-fixup.el — if that can't be found either, a default "N/A" version string will be output (which should only be possible if somehow the lisp directory from org has been copied by hand someplace else). 1) Org uninstalled (and possibly uncompiled) from Git or tarball. 1a) No org-version.el or org-install.el exists in worktree. Partially supported configuration, org version is determined from git if possible via UTILITIES/org-fixup.el. However, Emacs versions delivered with orgmode will provide autoloads that may or may not work with that version of org (mixed installation). If such a situation is encountered, warn the user. It can work if the autoloads from the installation match the ones that would be generated for the worktree, which generally is only the case if there is a relatively recent installation in site-lisp. 1b) Autoload file org-install.el exists in worktree, but not org-version.el. Fully supported configuration, org version is determined from git if possible via UTILITIES/org-fixup.el. 1c) Both org-version.el or org-install.el exist in worktree. Recommended configuration for 1), org version is taken from org-version.el (git never gets invoked). 2) Org installed. Both org-version.el and org-install.el must exist in install directory. Only supported configuration for 2), org version is taken from org-version.el (git never gets invoked since UTILITIES/org-fixup.el is not available). Any unsupported configuration should still yield a version string, but it will contain "N/A" to alert the user about a botched org installation. If "N/A" or a wrong version number is shown from 'M-x org-version' or the path shown after the Git version is not what it should be or you see a "mixed installation!" there, then please check with 'M-x locate-library' where org, org-install and org-version are found (or that they are _not_ found at all, depending on which use case above you are targeting). If they are found, they must all be found in the same directory. If you have leftover files from an older installation, re-configure load-path so that Emacs doesn't find them, remove them altogether if they are expendable or do a 'make cleanall' if they are in the org directory. From there, pick your use-case and try to stick to it (or at least do another 'make cleanall' before you switch). Regards, Achim. -- +<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+ Samples for the Waldorf Blofeld: http://Synth.Stromeko.net/Downloads.html#BlofeldSamplesExtra