New option `org-export-latex-link-with-unknown-path-format'.

* org-latex.el
(org-export-latex-link-with-unknown-path-format): New option.
(org-export-latex-links): Use it.

Thanks to Sébastien Vauban for a preliminary patch for this.
Merge branch 'master' of orgmode.org:org-mode
Remove a blank line causing a merge conflict with patches I want to apply.
suppress byte-compiler warning about unprefixed global variables from calendar.el

* lisp/org.el: add with-no-warning to defvar for two unprefixed global
  variables from calendar.el (there's nothing else we can do inside
  org until it is fixed in calendar.el).
Use (with-no-warnings ...) construct for `date' and `entry'.
org-e-odt.el: Fix italic style
cleanup in lisp/Makefile, targets; create org-fixup.el, remove version definition

* UTILITIES/org-fixup.el: new file, has functions to create
  org-version.el and org-install.el, now use by the build system.

* lisp/Makefile: delete said definitions, now sourced from toplevel
  make.  "clean" and "cleanall" should do the same thing here, make
  them aliases, ditto for "all" and "compile".  Both autoload files
  must be .PHONY and depend only on each other for correct ordering.
  Make "compile-dirty" actually do that again (i.e. no implied
  "clean", but "cleanauto").  Remove autoload files directly after
  install, so that they will only be present when explicitly requested
  by "autoloads".  Create "org-version.el" before compilation as it is
  mandatory.  Remove $(ORG_MAKE_INSTALL) and $(ORG_MAKE_VERSION),
  source from default.mk/local.mk.

* default.mk: move definitions for $(ORG_MAKE_INSTALL) and
  $(ORG_MAKE_VERSION) here so that they can be more easily configured.
  Remove definition of "org-release" from $(BATCH) and $(BTEST), now
  sourced from "org-version.el".

* targets.mk: target reorganization, introduce "stop" targets to
  prevent cleaning of org-version.el.  Use new targets for "oldorg" to
  make it more robust in case of errors.  New target "cleanutils" to
  remove any "*.elc" files that may have been produced there and add
  this target to "cleanall". Do the same in cleancontrib.
clean up Makefile some more, keep autoloads around

* lisp/Makefile: remove stop targets, make autoloads depend on source
  files again (not .PHONY).  Keep autoload files around after compile,
  but make sure to re-create them before installation and compile.
  Remove autoload files before re-creating them to avoid errors from
  Emacs when saving the buffer.

* targets.mk: remove stop targets and the mess that was necessary to
  support them.

* default.mk: must use $(CURDIR) not $(PWD), $(PWD) is not well
  defined when using sudo.
Makefile: avoid spurious recompilations of documentation

* doc/Makefile: org-version.inc is again dependent on org.texi.  This
  avoids recompilation when nothing has been changed; target "clean"
  still removes orgversion.texi to produce a consistent set of
  documentation and code after a "make clean" on toplevel

* targets.mk: add "doc" as prerequisite to "all" and "compile" to have
  it call "clean" in the doc subdir.
ensure that M-x org-version always delivers something useful

* UTILITIES/org-fixup.el (org-make-org-version): change defconst to
  defun for org-release and org-git-version and close over those
  variables (do not make them global anymore).

* UTILITIES/org-fixup.el (org-fixup): check for org-version.el or try
  to use git to get the version from the worktree (code uses parts of
  the former implementation from org.el).

* lisp/org.el (org-version): use functions instead of global variables
  to get the version strings and remove the defvaralias to
  org-version.  Warn when encountering a mixed installation (org and
  org-install.el should be found in the same directory).

Supported use-cases:

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 generelly is only the case if there is a relatively recent
installation in site-lisp.

1b) Autoload file org-install.el exists in worktree.  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.
XEmacs compatibility improvements

* lisp/org-compat.el (org-find-library-dir): rename
  org-find-library-name (misleading) and implement with a function
  that exists identically in Emacs/XEmacs.

* UTILITIES/org-fixup.el: change calls to org-find-library-dir.
  Simplify invocations of git, use the same arguments as in targets.mk
  and use only functions that work the same in EMacs and XEmacs.

* lisp/org-exp-blocks.el: change calls to org-find-library-dir.

* lisp/org.el: change calls to org-find-library-dir.  Make require for
  noutline fail silently because it is missing from XEmacs.
correct output from "make helpall"

* Makefile: correct definitions to have "make helpall" display the
  output in the way it was intended.  Remove documentation for
  "cleanrel" as it is not intended to be used except on the release
  server; this target may move into server.mk, but for now leave it
  in targets.mk.
clean up server targets in doc/Makefile and make sure they are working

* doc/Makefile: ignore errors from removing directory (may not exist),
  manual depends on 'org-version.inc'.
guard invocation of org-mode and suppress warning from byte-compiler

* lisp/org.el: Add with-not-warnings around call of (org-fixup).
inject version strings into orgguide

* doc/orgguide.texi: Include version strings from "org-version.inc".

* doc/Makefile: Make "org-version.inc" a dependency of "guide".
Remove more autosave cruft with "cleanall"

* targets.mk: Remove more autosave cruft with "cleanall": "#*#" and ".#*".
avoid accumulation of the ".dirty" suffix on $(GITVERSION) during sub-make invocations

* targets.mk: Strip ".dirty" suffix from $(GITVERSION) before
  potentially re-adding it, to avoid accumulation of the suffix during
  sub-make invocations.
Re-introduce server.mk

* UTILITIES/server.mk: Re-introduce, keep in UTILITIES like the other
  server stuff.  Implement "helpserver" and link into "help" and
  "helpall" targets.  Add "reltest" target to clean up the work tree
  and produce release archives, uses internal target "rel-dirty" for
  the actual archive creation.  Warn if $(ORGVERSION) is different
  from $(GITVERSION), as a release should only be made from a revision
  that has an annotated tag.
Remove "release_" prefix from org-version when org-fixup is run

* UTILITIES/org-fixup.el: Remove "release_" prefix from org-version
  when it is established from git.
UTILITIES/server.mk: delete whitespaces.