Commit Graph

10275 Commits

Author SHA1 Message Date
Achim Gratz 72d7c95469 initialize Babel languages and provide possibility to load extra packages for testing
* default.mk: Run emacs without a site-file.  BTEST_EXTRA
             redefined to hold names of extra packages to require for
             testing.  BTEST_PRE and BTEST_POST allow additional
             options to be injected around setup of standard load path
             for testing.  BTEST_OB_LANGUAGES holds the names of Babel
             languages to required.  R is not added to the list since
             it requires ess to be installed and configured.  All
             variables can be overridden in local.mk as before.
2012-04-20 21:04:13 +02:00
Achim Gratz d5914ad47f make sure org-install.el does not get compiled
lisp/Makefile: add local variable section to org-install.el so
     that it is never compiled
2012-04-20 21:04:13 +02:00
Achim Gratz 3bbd458780 add cleaning of temporary test files (with option to keep them)
default.mk: add $(testdir) definition based on $(TMPDIR), which
    defaults to "/tmp" if not already defined

    targets.mk(check): call test suite with TMPDIR=$(testdir) and remove
    direactory after successful run of testsuite.  Do not remove
    temporary test files if $(TEST_NO_AUTOCLEAN) is set to a non-empty
    value.

    targets.mk(cleandirs): refactor the first part of what cleanall
    had been doing.

    targets.mk(cleanall): run cleantest and cleandirs, then remove
    backup files.

    targets.mk(cleanlisp): remove backup files.

    targets.mk(cleandoc): remove backup files.

    targets.mk(cleanall): run cleantest and cleandirs, then remove
    backup files.

    targets.mk(cleantest): removal of temporary test files.
2012-04-20 21:04:13 +02:00
Achim Gratz 035f24673b introduce "check" as alias for "test" to comply with GNU Makefile conventions
Makefile: change test to check in help text

	  targets.mk: add check as alias for test
2012-04-20 21:04:13 +02:00
Achim Gratz 353a0c519b introduce $(SUDO) to make install with administrative privileges customizable
defaults.mk: define SUDO to map to sudo, add comment to define
	blank if administrative privileges are not needed (already root on
	Linux or Administrator on Windows)

	targets.mk: use newly defined $(SUDO) uinstead of plain sudo,
	replaces some braces with parentheses
2012-04-20 21:04:12 +02:00
Achim Gratz 41624c1809 ignore *.t2d directories in doc/, adapt some comments, implement missing targets
.gitignore: also ignore *.t2d directories in doc/ that texi2pdf
	might produce when run in tidy mode

	default.mk: correct some comments

	targets.mk: implement missing clean targets and add aliases for
	them
2012-04-20 21:04:12 +02:00
Achim Gratz b9c72bebe4 make sure org-release is defined in batch mode
default.mk: make sure org-release is defined when starting emacs
	in batch mode.  Add a suffix to see if this definition leaks into
	the installed version someplace.  When running from an installed
	version, this definition is pulled in from org-install.el.
2012-04-20 21:04:12 +02:00
Achim Gratz 4a7ed95010 introduce new make target "test"
Makefile: add help for target "test"

	default.mk: more sane location for local data, add $(BTEST) that
	will run the test in batch mode.  Some tests require non-standard
	packages, introduce $(BTEST_EXTRA) in order to add options so they
	can be found.

	targets.mk: new target "test" that implies "all" and then runs all
	test. Hidden target "test-dirty" runs tests without doing
	compilation.
2012-04-20 21:04:12 +02:00
Achim Gratz b323d9e5c3 move schema files to etc/ and modify makefile to install them into $(datadir)
etc/Makefile: add "schema" to $(ETCDIRS)

	contrib/odt/etc/schema/od-manifest-schema-v1.2-cs01.rnc: move to etc/schema/od-manifest-schema-v1.2-cs01.rnc

	contrib/odt/etc/schema/od-schema-v1.2-cs01.rnc: move to etc/schema/od-schema-v1.2-cs01.rn

	contrib/odt/etc/schema/schemas.xml: move to etc/schema/schemas.xml
2012-04-20 21:04:12 +02:00
Achim Gratz a5ed8c65a0 Remove maint.mk and maint-targets.mk from repository
maint.mk and maint-targets.mk are removed from the repository as
	they are only used on the server by Bastien
2012-04-20 21:04:11 +02:00
Achim Gratz 3661de9368 The default target should be "all"
Makefile: "all" should be the default target
2012-04-20 21:04:11 +02:00
Achim Gratz 6ec5f30165 Do not croak when git is not available
targets.mk: if no .git directory is present, assume that Git is
	not available.  Make ORGVERSION, GITVERSION and GITSTATUS
	customizable from local.mk (override from command line is also
	possible and probably easier)
2012-04-20 21:04:11 +02:00
Achim Gratz 24fa46a9e5 more robust shell code for install/clean-install
{etc,lisp}/Makefile: use shell instead of make for looping, make
	code more robust
2012-04-20 21:04:11 +02:00
Achim Gratz 6a3ec67abd Introduce $(datadir), prefix all installation paths with $(DESTDIR)
Makefile: remove includes for maintainer targets, these will go
	into local.mk on the server

	default.mk: introduce $(datadir) to replace $(etcdir) in etc/Makefile

	doc/Makefile: replace $etcdir) with $(datadir)

	lisp/Makefile: record ODT styles location as defconst in org-install

	{doc,etc,lisp}/Makefile: prefix all installation targets with $(DESTDIR)
2012-04-20 21:04:11 +02:00
Achim Gratz 0081071a52 create Makefile for etc/, some additions to .gitignore
* etc/Makefile: create, activate subdir "styles" for ODT exporter
	* .gitignore: ignore doc/git-describe.texi and .gitattributes
2012-04-20 21:04:10 +02:00
Achim Gratz 1e343f7f3b update target descriptions, target "all" now automatically cleans .elc before compilation
* targets.mk: target "all" for lisp directory does now the same as
	"compile", i.e. it cleans .elc file first
	* Makefile: describe all targets and re-arrange the target groups
2012-04-20 21:04:10 +02:00
Achim Gratz 510a51310b use batch-byte-recompile-directory instead of batch-byte-compile
* lisp/Makefile: use batch-byte-recompile-directory instead of
	batch-byte-compile; remove pattern rule for compiling single file
	from source
	* lisp/Makefile: add compile-dirty to list of phony targets
2012-04-20 21:04:10 +02:00
Achim Gratz cb8600b1ba show installation path or org-install.el to avoid mishaps with multiple installations
* lisp/org.el (org-version): show the full path to org-install.el
	in the version string to avoid confusion if multiple installations
	exist or a previously loaded org-install.el has already defined a
	version string that is now out of date.
2012-04-20 21:04:10 +02:00
Achim Gratz 6da2d089b0 move all version strings into org-install.el
* targets.mk: check for release and git version and record this
	into environment variables for use in sub-make invocations; add
	new target "compile-dirty" that does not invoke "make clean" first
	* doc/Makefile, lisp/Makefile: remove git version check, since
	they are now provided by first-level make
	* lisp/Makefile: add insertion of version information into
	org-install.el, have org-install.el depend on LISPF rather than
	LISPC so that autoloads can be produced without compiling
	everything and remove insertion into org.el and re-compilation
	during install; add new target "compile-dirty" to support
	invocation from first-level make
	* lisp/org.el (org-version): remove determination of version
	information, show "N/A" if the information is not provided via
	org-install.el
2012-04-20 21:04:10 +02:00
Achim Gratz 306c748f63 inject git-describe version and date into org manual
* doc/Makefile: introduce target for git-describe.texi, which is an
	  automatically generated file that records the output of git-describe
	  and date; remove this file during make clean
	* doc/org.texi: remove @set for VERSION and DATE and do an @include
	  git-describe.texi instead
2012-04-20 21:04:09 +02:00
Achim Gratz c74d93b8c6 remove dependencies.mk since it is not needed any more
* lisp/dependencies.mk: remove file
	* lisp/Makefile: remove dependency on dependencies.mk

Rationale: since we will always start with a "make clean", the
dependencies file has become obsolete.  The dependencies had not
been updated for a long time anyway and there seems to be no way
to produce them automatically.
2012-04-20 21:04:09 +02:00
Achim Gratz 465adbdae3 Always "make clean" for lisp files before compiling them
* Makefile: prepend "make clean" in lisp directory when compiling

Rationale: Emacs prefers the compiled lisp files even if the source is newer.
In case of circular dependencies or if the dependencies file is not correct,
the compiled files might not reflect the sources.  Since there is no canonical
way to remove all compiled files which are stale (it can be hacked, but it is
really ugly), it seems more prudent to just always remove the compiled files
before starting the compilation.  Most folks already already do that anyway.
2012-04-20 21:04:09 +02:00
Achim Gratz 236b79da67 prepare for additional subdirs for "install"
* targets.mk: modify install target to be based on pattern
          match so that additional SUBDIRS will be automatically
          processed
2012-04-20 21:04:09 +02:00
Achim Gratz 8bbf77a748 finish cleanup on infodir, some refinements on rules
* doc/Makefile: cleanall additionally removes the directories for
	manual and guide; fix the dir file in infodir after removal of org
	documentation

	* lisp/Makefile: remove debug statement
2012-04-20 21:04:08 +02:00
Achim Gratz 501f9b1741 use sed instead of perl, add target clean-install
* Makefile, lisp/Makefile, doc/Makefile: add target clean-install
	to remove files in install-directories

	* default.mk: add customization variable $(SED)

	* doc/Makefile: do not remove dir while cleaning

	* lisp/Makefile: use sed instead of perl to weave git-status into
	org.el and ignore any errors while doing it.  Keep git status in
	$(GITSTATUS) to make it more clear what happens in the check.
2012-04-20 21:04:08 +02:00
Achim Gratz 00d357ab98 keep Emacs' Changelog clean
* UTILITIES/make_emacs_changelog: remove UTILITIES/ and all
	Makefiles from Emacs' Changelog
2012-04-20 21:04:08 +02:00
Achim Gratz f29ef857ae inject git-describe version into org.el during install
* lisp/org.el (org-git-version): placeholder for recording the Git
	version of org during install
	* lisp/org.el (org-version): initialize local git-version with
	placeholder and fall through using it when org is not installed in
	a Git repository
2012-04-20 21:04:08 +02:00
Achim Gratz a5cb04dcd8 hand off ./doc to sub-make
* Makefile: use info function for output and call shell only once
* default.mk: add PDFTEX and RMR variables for customization
* lisp/Makefile: add target 'all' and create $(lispdir) if necessary
* maint-targets.mk: invoke sub-make for HTML manuals
* maint.mk: remove unsused VARIABLES
* targets.mk: invoke sub-make for ./doc and clean up some targets
2012-04-20 21:04:07 +02:00
Achim Gratz ac3162b4f0 activate local.mk and hand off ./lisp to a sub-make
* Makefile: add an optional include local.mk
* default.mk: install lisp files into org subfolder by default
* lisp/Makefile: new file to handle all make targets within lisp
* lisp/dependencies.mk: dependencies, should rather be auto-generated
* maint.mk: remove obsolete variable definitions
* targets.mk: hand off to sub-make in ./lisp, remove unused targets
2012-04-20 21:04:07 +02:00
Achim Gratz 77f0e50787 shuffle targets to their correct place, harden recipes
* Makefile: declare phony targets, remove help text for install-info-debian
* default.mk: add variable for FIND and RM
* targets.mk, maint-targets.mk: shuffle targets to where they belong, declare
  phony targets, work around a texi2dvi bug, use pattern rules, use targets for
  dependencies instead of repeating them verbatim
2012-04-20 21:04:07 +02:00
Achim Gratz 2386380c72 change defaults to something that should work on most Linux systems and Cygwin
* default.mk: change prefix to /usr/share and do some formatting

This change establishes the baseline installation path that should work
out-of-the-box on Linux and Cygwin when the install is done system-wide (which
needs administrator privileges).
2012-04-20 21:04:07 +02:00
Achim Gratz b0ebd4365e Split off Makefile into several parts, included from master Makefile
* Makefile: just keep help target (now also default for no target)
  and include all other parts from here.
* default.mk: user editable variables with their default values
* maint.mk: definitions by maintainer, should not be touched by user
* targets.mk: user callable targets
* maint-targets.mk: targets for maintenance, should not be called by user
* dependencies.mk: keep order during compile (could become auto-generated)

This is the first in a series of patches that restructures the Makefile to
achieve easier customization and separation of different concerns (mainly user
vs. maintenance of the distribution).  This first patch simply establishes a
set of files without changing anything else to provide a clean starting point.
It uses GNU make extensions since Makefile already depends on GNU make anyway.
2012-04-20 21:04:07 +02:00
Eric Schulte 66ae794a66 contrib/org-docco.org -- docco side-by-side HTML export of annotated source code
for an example of the code output see
  http://eschulte.github.com/org-docco/org-docco.html
2012-04-20 12:21:50 -04:00
Jambunathan K 3f427d92c8 Merge remote-tracking branch 'origin/hotfix-7.8.06' 2012-04-20 23:15:06 +05:30
Jambunathan K 7d4e7a8763 org-odt.el: Fix handling of internal links
* lisp/org-odt.el (org-odt-format-org-link): Pay no heed to
whether the internal links destined for headlines provide a
description or not.  In fact, the `org-store-link' and
`org-insert-link' create internal links which do have a
description.

This fixes an issue where internal links terminating at an
invisible target (that is bound to a headline) was badly
rendered.  Refer following thread:
http://lists.gnu.org/archive/html/emacs-orgmode/2012-04/msg00757.html
2012-04-20 22:46:09 +05:30
Jambunathan K 030d1e5e62 * etc/styles/README: Update Copyright year 2012-04-20 22:45:59 +05:30
Jambunathan K 47175c99e9 OrgOdtStyles.xml: Fix indentation issues with description lists
* etc/styles/OrgOdtStyles.xml (OrgDescriptionList): Modify
style.  With this change, in a description list, if the
description paragraph spawns multiple lines then it will
correctly indented.
2012-04-20 22:45:50 +05:30
Bastien Guerry 6f78edd68c Revert "Time specifications: Allow specifying relative times"
This reverts commit 001bcb9645.
2012-04-20 14:23:06 +02:00
Bastien Guerry e449f12d6f Remove contrib/doc/fr-latex.tex as this is now on Worg.
See http://orgmode.org/worg/code/latex/fr-orgcard.tex
and http://orgmode.org/worg/images/bzg/fr-orgcard.pdf
2012-04-20 13:30:06 +02:00
Bastien Guerry 41939cb04b org-clock.el (org-program-exists): Fix docstring.
* org-clock.el (org-program-exists): Fix docstring.

Thanks to Sébastien Vauban for reporting this.
2012-04-20 13:20:42 +02:00
Bastien Guerry d89823a75b org-clock.el: New option `org-clock-file-time-cell-format'.
* org-clock.el (org-clock-file-time-cell-format): New option.
(org-clocktable-write-default): Use it.
2012-04-20 13:06:46 +02:00
Adam Spiers 1685087f5f org.el: Display a message when no clock is active.
* org-clock.el (org-clock-modify-effort-estimate): Display a
message when no clock is currently active.

TINYCHANGE
2012-04-20 12:41:11 +02:00
Bastien Guerry 9f5699e1aa org.el: New face `org-date-selected' for the selected calendar day.
* org-faces.el (org-date-selected): New face.

* org.el (org-date-ovl): Use `org-date-selected'.

This fixes a problem with bold faces enlarging the calendar window
unduely.  See http://patchwork.newartisans.com/patch/1286/
2012-04-20 12:38:07 +02:00
Ilya Shlyakhter 001bcb9645 Time specifications: Allow specifying relative times
* org.el (org-parse-time-string): Allow strings supported by tags/properties
matcher (eg <now>, <yesterday>, <-7d>) if the time starts with < and ends
with >.  This means that e.g. in the clocktable parameters you can specify
:tstart "<-1w>" :tend "<now>".

TINYCHANGE
2012-04-20 12:20:27 +02:00
Toby S. Cubitt f426dadef0 Agenda: Add new todo-unblocked and nottodo-unblocked skip conditions
* lisp/org-agenda.el (org-agenda-skip-if, org-agenda-skip-if-todo):
Add new todo-unblocked and nottodo-unblocked skip conditions.  These
match as for todo and nottodo, but only for unblocked todo items.

TINYCHANGE

This patch adds two new tests to `org-agenda-skip-if': 'todo-unblocked
and 'nottodo-unblocked.  These match like 'todo and 'nottodo, but only on
unblocked todo items.  This type of test is useful when compiling custom
agenda views containing lists of currently actionable todo items.

Whilst it's possible to code such tests in `org-agenda-custom-commands'
directly (well, Elisp is Turing-complete: you can in principle code
anything!), it's far less convenient than a simple `org-agenda-skip-if'
test which can reuse much of the existing machinery.

Note that the attached patch applies on top of my other "Fix
org-agenda-skip-if bug" patch, though this new feature is independent of
that bug-fix.
2012-04-20 12:12:42 +02:00
George Kettleborough 37fafb7b9e Option for clock and timer to be displayed in frame-title
* org-clock.el: New option `org-clock-clocked-in-display' to control
whether the current clock is displayed in the mode line and/or frame
title.

* org-timer.el: New option `org-timer-display' to control whether
the current timer is displayed in the mode line and/or frame title.

This allows the clock and timer to be displayed in the frame title instead of,
or as well as, the mode line.  This is useful for people with limited space in
the mode line but with ample space in the frame title.
2012-04-20 11:56:34 +02:00
Sebastien Vauban 0c43ba2e8d org.el: Add autoload cookie for `org-update-all-dblocks'.
* org.el (org-update-all-dblocks): Autoload function.

TINYCHANGE
2012-04-20 11:46:41 +02:00
Jérémie Courrèges-Anglas 6010e18ce4 org-latex.el: Append final newline to export buffer.
* lisp/org-latex.el: Ensure a final newline is appended to the export buffer.

TINYCHANGE
2012-04-20 11:46:36 +02:00
Harri Kiiskinen d87ec54d4b org-protocol.el: New option `org-protocol-data-separator'.
* org-protocol.el: New option.
(org-protocol-store-link, org-protocol-do-capture): Use it.

TINYCHANGE
2012-04-20 11:46:28 +02:00
Christoph Dittmann f2e40fe153 Make [fragile] work with overlay specifications.
* org-beamer.el (org-beamer-auto-fragile-frames): Make
[fragile] work with overlay specifications.

If the BEAMER_envargs property contains optional parameters together
with an overlay specification like [option]<1-2>, the exporter turns
the start of the frame into \begin{frame}<1-2>[option].  If then
[fragile] needs to be added, this becomes
\begin{frame}[fragile]<1-2>[option] and causes a LaTeX error.

With this patch [fragile] is added in a way such that the line becomes
\begin{frame}<1-2>[fragile,option].

TINYCHANGE
2012-04-20 11:46:22 +02:00