add lisp packages
This commit is contained in:
176
lisp/org/mk/default.mk
Normal file
176
lisp/org/mk/default.mk
Normal file
@@ -0,0 +1,176 @@
|
||||
##----------------------------------------------------------------------
|
||||
## NEVER EDIT THIS FILE, PUT ANY ADAPTATIONS INTO local.mk
|
||||
##-8<-------------------------------------------------------------------
|
||||
## CHECK AND ADAPT THE FOLLOWING DEFINITIONS
|
||||
##----------------------------------------------------------------------
|
||||
|
||||
# Name of your emacs binary
|
||||
EMACS = emacs
|
||||
|
||||
# Where local software is found
|
||||
prefix = /usr/share
|
||||
|
||||
# Where local lisp files go.
|
||||
lispdir= $(prefix)/emacs/site-lisp/org
|
||||
|
||||
# Where local data files go.
|
||||
datadir = $(prefix)/emacs/etc/org
|
||||
|
||||
# Where info files go.
|
||||
infodir = $(prefix)/info
|
||||
|
||||
# Define if you only need info documentation, the default includes html and pdf
|
||||
#ORG_MAKE_DOC = info # html pdf
|
||||
|
||||
# Define which git branch to switch to during update. Does not switch
|
||||
# the branch when undefined.
|
||||
GIT_BRANCH =
|
||||
|
||||
# Define if you want to include some (or all) files from contrib/lisp
|
||||
# just the filename please (no path prefix, no .el suffix), maybe with globbing
|
||||
#ORG_ADD_CONTRIB = ox-* # e.g. the contributed exporter
|
||||
|
||||
# Where to create temporary files for the testsuite
|
||||
# respect TMPDIR if it is already defined in the environment
|
||||
TMPDIR ?= /tmp
|
||||
testdir = $(TMPDIR)/tmp-orgtest
|
||||
|
||||
# Configuration for testing
|
||||
# add options before standard load-path
|
||||
BTEST_PRE =
|
||||
# add options after standard load path
|
||||
BTEST_POST =
|
||||
# -L <path-to>/ert # needed for Emacs23, Emacs24 has ert built in
|
||||
# -L <path-to>/ess # needed for running R tests
|
||||
# -L <path-to>/htmlize # need at least version 1.34 for source code formatting
|
||||
BTEST_OB_LANGUAGES = awk C fortran maxima lilypond octave perl python vala
|
||||
# R # requires ESS to be installed and configured
|
||||
# ruby # requires inf-ruby to be installed and configured
|
||||
# extra packages to require for testing
|
||||
BTEST_EXTRA =
|
||||
# ess-site # load ESS for R tests
|
||||
##->8-------------------------------------------------------------------
|
||||
## YOU MAY NEED TO ADAPT THESE DEFINITIONS
|
||||
##----------------------------------------------------------------------
|
||||
|
||||
# How to run tests
|
||||
req-ob-lang = --eval '(require '"'"'ob-$(ob-lang))'
|
||||
lst-ob-lang = ($(ob-lang) . t)
|
||||
req-extra = --eval '(require '"'"'$(req))'
|
||||
BTEST_RE ?= \\(org\\|ob\\)
|
||||
BTEST_LOAD = \
|
||||
--eval '(add-to-list '"'"'load-path (concat default-directory "lisp"))' \
|
||||
--eval '(add-to-list '"'"'load-path (concat default-directory "testing"))'
|
||||
BTEST_INIT = $(BTEST_PRE) $(BTEST_LOAD) $(BTEST_POST)
|
||||
|
||||
BTEST = $(BATCH) $(BTEST_INIT) \
|
||||
-l org-batch-test-init \
|
||||
--eval '(setq \
|
||||
org-batch-test t \
|
||||
org-babel-load-languages \
|
||||
(quote ($(foreach ob-lang,\
|
||||
$(BTEST_OB_LANGUAGES) emacs-lisp shell org,\
|
||||
$(lst-ob-lang)))) \
|
||||
org-test-select-re "$(BTEST_RE)" \
|
||||
)' \
|
||||
-l org-loaddefs.el \
|
||||
-l cl -l testing/org-test.el \
|
||||
-l ert -l org -l ox -l ol \
|
||||
$(foreach req,$(BTEST_EXTRA),$(req-extra)) \
|
||||
--eval '(org-test-run-batch-tests org-test-select-re)'
|
||||
|
||||
# Running a plain emacs with no config and this Org mode loaded. This
|
||||
# should be useful for manual testing and verification of problems.
|
||||
NOBATCH = $(EMACSQ) $(BTEST_INIT) -l org -f org-version
|
||||
|
||||
# start Emacs with no user and site configuration
|
||||
# EMACSQ = -vanilla # XEmacs
|
||||
EMACSQ = $(EMACS) -Q
|
||||
|
||||
# Using emacs in batch mode.
|
||||
BATCH = $(EMACSQ) -batch \
|
||||
--eval '(setq vc-handled-backends nil org-startup-folded nil)'
|
||||
|
||||
# Emacs must be started in toplevel directory
|
||||
BATCHO = $(BATCH) \
|
||||
--eval '(add-to-list '"'"'load-path "./lisp")'
|
||||
|
||||
# How to generate local.mk
|
||||
MAKE_LOCAL_MK = $(BATCHO) \
|
||||
--eval '(load "org-compat.el")' \
|
||||
--eval '(load "../mk/org-fixup.el")' \
|
||||
--eval '(org-make-local-mk)'
|
||||
|
||||
# Emacs must be started in lisp directory
|
||||
BATCHL = $(BATCH) \
|
||||
--eval '(add-to-list '"'"'load-path ".")'
|
||||
|
||||
# How to generate org-loaddefs.el
|
||||
MAKE_ORG_INSTALL = $(BATCHL) \
|
||||
--eval '(load "org-compat.el")' \
|
||||
--eval '(load "../mk/org-fixup.el")' \
|
||||
--eval '(org-make-org-loaddefs)'
|
||||
|
||||
# How to generate org-version.el
|
||||
MAKE_ORG_VERSION = $(BATCHL) \
|
||||
--eval '(load "org-compat.el")' \
|
||||
--eval '(load "../mk/org-fixup.el")' \
|
||||
--eval '(org-make-org-version "$(ORGVERSION)" "$(GITVERSION)")'
|
||||
|
||||
# How to byte-compile the whole source directory
|
||||
ELCDIR = $(BATCHL) \
|
||||
--eval '(batch-byte-recompile-directory 0)'
|
||||
|
||||
# How to byte-compile a single file
|
||||
ELC = $(BATCHL) \
|
||||
--eval '(batch-byte-compile)'
|
||||
|
||||
# How to make a pdf file from a texinfo file
|
||||
TEXI2PDF = texi2pdf --batch --clean --expand
|
||||
|
||||
# How to make a pdf file from a tex file
|
||||
PDFTEX = pdftex
|
||||
|
||||
# How to create directories with leading path components
|
||||
# MKDIR = mkdir -m 755 -p # try this if you have no install
|
||||
MKDIR = install -m 755 -d
|
||||
|
||||
# How to create the info files from the texinfo file
|
||||
MAKEINFO = makeinfo
|
||||
|
||||
# How to create the HTML file
|
||||
TEXI2HTML = makeinfo --html --number-sections
|
||||
|
||||
# How to find files
|
||||
FIND = find
|
||||
|
||||
# How to remove files
|
||||
RM = rm -f
|
||||
|
||||
# How to remove files recursively
|
||||
RMR = rm -fr
|
||||
|
||||
# How to change file permissions
|
||||
# currently only needed for git-annex due to its "lockdown" feature
|
||||
CHMOD = chmod
|
||||
|
||||
# How to copy the lisp files and elc files to their destination.
|
||||
# CP = cp -p # try this if you have no install
|
||||
CP = install -m 644 -p
|
||||
|
||||
# How to obtain administrative privileges
|
||||
# leave blank if you don't need this
|
||||
# SUDO =
|
||||
SUDO = sudo
|
||||
|
||||
# Name of the program to install info files
|
||||
# INSTALL_INFO = ginstall-info # Debian: avoid harmless warning message
|
||||
INSTALL_INFO = install-info
|
||||
|
||||
# target method for 'compile'
|
||||
ORGCM = dirall
|
||||
# ORGCM = dirall # 1x slowdown compared to default compilation method
|
||||
# ORGCM = single # 4x one Emacs process per compilation
|
||||
# ORGCM = source # 5x ditto, but remove compiled file immediately
|
||||
# ORGCM = slint1 # 3x possibly elicit more warnings
|
||||
# ORGCM = slint2 # 7x possibly elicit even more warnings
|
||||
200
lisp/org/mk/org-fixup.el
Normal file
200
lisp/org/mk/org-fixup.el
Normal file
@@ -0,0 +1,200 @@
|
||||
;;; org-fixup.el --- make life easier for folks without GNU make
|
||||
;;
|
||||
;; Author: Achim Gratz
|
||||
;; Keywords: orgmode
|
||||
;; Homepage: https://orgmode.org
|
||||
;;
|
||||
;; This file is not part of GNU Emacs.
|
||||
;;
|
||||
;; GNU Emacs is free software; you can redistribute it and/or modify
|
||||
;; it under the terms of the GNU General Public License as published by
|
||||
;; the Free Software Foundation; either version 3, or (at your option)
|
||||
;; any later version.
|
||||
|
||||
;; GNU Emacs is distributed in the hope that it will be useful,
|
||||
;; but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
;; GNU General Public License for more details.
|
||||
|
||||
;; You should have received a copy of the GNU General Public License
|
||||
;; along with GNU Emacs; see the file COPYING. If not, write to the
|
||||
;; Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
|
||||
;; Boston, MA 02110-1301, USA.
|
||||
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
|
||||
;;
|
||||
;;; Commentary:
|
||||
|
||||
(require 'autoload)
|
||||
(require 'org-compat "org-compat.el")
|
||||
|
||||
(defun org-make-manuals ()
|
||||
"Generate the Texinfo files out of Org manuals."
|
||||
(require 'ox-texinfo)
|
||||
(dolist (manual '("../doc/org-manual.org" "../doc/org-guide.org"))
|
||||
(find-file manual)
|
||||
(org-texinfo-export-to-texinfo)))
|
||||
|
||||
(defun org-make-org-version (org-release org-git-version)
|
||||
"Make the file org-version.el in the current directory.
|
||||
This function is internally used by the build system and should
|
||||
be used by foreign build systems or installers to produce this
|
||||
file in the installation directory of Org mode. Org will not
|
||||
work correctly if this file is not present (except directly from
|
||||
the Git work tree)."
|
||||
(with-temp-buffer
|
||||
(insert "\
|
||||
;;; org-version.el --- autogenerated file, do not edit
|
||||
;;
|
||||
;;; Code:
|
||||
;;;\#\#\#autoload
|
||||
\(defun org-release ()
|
||||
\"The release version of Org.
|
||||
Inserted by installing Org mode or when a release is made.\"
|
||||
(let ((org-release \"" org-release "\"))
|
||||
org-release))
|
||||
;;;\#\#\#autoload
|
||||
\(defun org-git-version ()
|
||||
\"The Git version of Org mode.
|
||||
Inserted by installing Org or when a release is made.\"
|
||||
(let ((org-git-version \"" org-git-version "\"))
|
||||
org-git-version))
|
||||
\f\n\(provide 'org-version\)
|
||||
\f\n;; Local Variables:\n;; version-control: never
|
||||
;; no-byte-compile: t
|
||||
;; coding: utf-8\n;; End:\n;;; org-version.el ends here\n")
|
||||
(let ((inhibit-read-only t))
|
||||
(write-file "org-version.el"))))
|
||||
|
||||
(defun org-make-org-loaddefs ()
|
||||
"Make the file org-loaddefs.el in the current directory.
|
||||
This function is internally used by the build system and should
|
||||
be used by foreign build systems or installers to produce this
|
||||
file in the installation directory of Org mode. Org will not
|
||||
work correctly if this file is not up-to-date."
|
||||
(with-temp-buffer
|
||||
(set-visited-file-name "org-loaddefs.el")
|
||||
(insert ";;; org-loaddefs.el --- autogenerated file, do not edit\n;;\n;;; Code:\n")
|
||||
(let ((files (directory-files default-directory
|
||||
nil "^\\(org\\|ob\\|ox\\)\\(-.*\\)?\\.el$")))
|
||||
(mapc (lambda (f) (generate-file-autoloads f)) files))
|
||||
(insert "\f\n(provide 'org-loaddefs)\n")
|
||||
(insert "\f\n;; Local Variables:\n;; version-control: never\n")
|
||||
(insert ";; no-byte-compile: t\n;; no-update-autoloads: t\n")
|
||||
(insert ";; coding: utf-8\n;; End:\n;;; org-loaddefs.el ends here\n")
|
||||
(let ((inhibit-read-only t))
|
||||
(save-buffer))))
|
||||
|
||||
(defun org-make-autoloads (&optional compile force)
|
||||
"Make the files org-loaddefs.el and org-version.el in the install directory.
|
||||
Finds the install directory by looking for library \"org\".
|
||||
Optionally byte-compile lisp files in the install directory or
|
||||
force re-compilation. This function is provided for easier
|
||||
manual install when the build system can't be used."
|
||||
(let ((origin default-directory)
|
||||
(dirlisp (org-find-library-dir "org")))
|
||||
(unwind-protect
|
||||
(progn
|
||||
(cd dirlisp)
|
||||
(org-fixup)
|
||||
(org-make-org-version (org-release) (org-git-version))
|
||||
(org-make-org-loaddefs)
|
||||
(when compile (byte-recompile-directory dirlisp 0 force)))
|
||||
(cd origin))))
|
||||
|
||||
(defun org-make-autoloads-compile ()
|
||||
"Call org-make-autoloads with compile argument.
|
||||
Convenience function for easier invocation from command line."
|
||||
(org-make-autoloads 'compile nil))
|
||||
|
||||
(defun org-make-autoloads-compile-force ()
|
||||
"Call org-make-autoloads with compile force arguments.
|
||||
Convenience function for easier invocation from command line."
|
||||
(org-make-autoloads 'compile 'force))
|
||||
|
||||
;; Internal functions
|
||||
|
||||
(defun org-make-local-mk ()
|
||||
"Internal function for the build system."
|
||||
(let ((default "mk/default.mk")
|
||||
(local "local.mk"))
|
||||
(unwind-protect
|
||||
(with-temp-buffer
|
||||
(insert-file-contents default)
|
||||
(goto-char (point-min))
|
||||
(when (search-forward "-8<-" nil t)
|
||||
(forward-line 1)
|
||||
(delete-region (point-min) (point)))
|
||||
(when (search-forward "->8-" nil t)
|
||||
(forward-line 0)
|
||||
(delete-region (point) (point-max)))
|
||||
(goto-char (point-min))
|
||||
(insert "
|
||||
# Remove \"oldorg:\" to switch to \"all\" as the default target.
|
||||
# Change \"oldorg:\" to an existing target to make that target the default,
|
||||
# or define your own target here to become the default target.
|
||||
oldorg: # do what the old Makefile did by default.
|
||||
|
||||
##----------------------------------------------------------------------
|
||||
")
|
||||
(goto-char (point-max))
|
||||
(insert "\
|
||||
# See default.mk for further configuration options.
|
||||
")
|
||||
(let ((inhibit-read-only t))
|
||||
(write-file local)))
|
||||
nil)))
|
||||
|
||||
(defun org-make-letterformat (a4name lettername)
|
||||
"Internal function for the build system."
|
||||
(unwind-protect
|
||||
(with-temp-buffer
|
||||
(insert-file-contents a4name)
|
||||
(goto-char (point-min))
|
||||
(while (search-forward "\\pdflayout=(0l)" nil t)
|
||||
(replace-match "\\pdflayout=(1l)" nil t))
|
||||
(let ((inhibit-read-only t))
|
||||
(write-file lettername)))
|
||||
nil))
|
||||
|
||||
;; redefine version functions
|
||||
|
||||
(defmacro org-fixup ()
|
||||
(let* ((origin default-directory)
|
||||
(dirlisp (org-find-library-dir "org"))
|
||||
(dirorg (concat dirlisp "../" ))
|
||||
(dirgit (concat dirorg ".git/" ))
|
||||
(org-version "N/A-fixup")
|
||||
(org-git-version "N/A-fixup !!check installation!!"))
|
||||
(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") "-git"))
|
||||
(if (string-match "^release_" git0)
|
||||
(setq org-version (substring git0 8))
|
||||
(setq org-version git0))))
|
||||
(cd origin)))))
|
||||
(message "org-fixup.el: redefined Org version")
|
||||
`(progn
|
||||
(defun org-release () ,org-version)
|
||||
(defun org-git-version () ,org-git-version))))
|
||||
|
||||
(provide 'org-fixup)
|
||||
|
||||
;; Local Variables:
|
||||
;; no-byte-compile: t
|
||||
;; coding: utf-8
|
||||
;; End:
|
||||
;;; org-fixup.el ends here
|
||||
168
lisp/org/mk/targets.mk
Normal file
168
lisp/org/mk/targets.mk
Normal file
@@ -0,0 +1,168 @@
|
||||
.EXPORT_ALL_VARIABLES:
|
||||
.NOTPARALLEL: .PHONY
|
||||
# Additional distribution files
|
||||
DISTFILES_extra= Makefile request-assign-future.txt contrib etc
|
||||
|
||||
LISPDIRS = lisp
|
||||
OTHERDIRS = doc etc
|
||||
CLEANDIRS = contrib testing mk
|
||||
SUBDIRS = $(OTHERDIRS) $(LISPDIRS)
|
||||
INSTSUB = $(SUBDIRS:%=install-%)
|
||||
ORG_MAKE_DOC ?= info html pdf
|
||||
|
||||
ifneq ($(wildcard .git),)
|
||||
GITVERSION ?= $(shell git describe --match release\* --abbrev=6 HEAD)
|
||||
ORGVERSION ?= $(subst release_,,$(shell git describe --match release\* --abbrev=0 HEAD))
|
||||
GITSTATUS ?= $(shell git status -uno --porcelain)
|
||||
else
|
||||
-include mk/version.mk
|
||||
GITVERSION ?= N/A
|
||||
ORGVERSION ?= N/A
|
||||
endif
|
||||
DATE = $(shell date +%Y-%m-%d)
|
||||
YEAR = $(shell date +%Y)
|
||||
ifneq ($(GITSTATUS),)
|
||||
GITVERSION := $(GITVERSION:.dirty=).dirty
|
||||
endif
|
||||
|
||||
.PHONY: all oldorg update update2 up0 up1 up2 single $(SUBDIRS) \
|
||||
check test install $(INSTSUB) \
|
||||
info html pdf card refcard doc docs \
|
||||
autoloads cleanall clean $(CLEANDIRS:%=clean%) \
|
||||
clean-install cleanelc cleandirs cleanaddcontrib \
|
||||
cleanlisp cleandoc cleandocs cleantest \
|
||||
compile compile-dirty uncompiled \
|
||||
config config-test config-exe config-all config-eol config-version \
|
||||
vanilla
|
||||
|
||||
CONF_BASE = EMACS DESTDIR ORGCM ORG_MAKE_DOC
|
||||
CONF_DEST = lispdir infodir datadir testdir
|
||||
CONF_TEST = BTEST_PRE BTEST_POST BTEST_OB_LANGUAGES BTEST_EXTRA BTEST_RE
|
||||
CONF_EXEC = CP MKDIR RM RMR FIND CHMOD SUDO PDFTEX TEXI2PDF TEXI2HTML MAKEINFO INSTALL_INFO
|
||||
CONF_CALL = BATCH BATCHL ELC ELCDIR NOBATCH BTEST MAKE_LOCAL_MK MAKE_ORG_INSTALL MAKE_ORG_VERSION
|
||||
config-eol:: EOL = \#
|
||||
config-eol:: config-all
|
||||
config config-all::
|
||||
$(info )
|
||||
$(info ========= Emacs executable and Installation paths)
|
||||
$(foreach var,$(CONF_BASE),$(info $(var) = $($(var))$(EOL)))
|
||||
$(foreach var,$(CONF_DEST),$(info $(var) = $(DESTDIR)$($(var))$(EOL)))
|
||||
$(info ========= Additional files from contrib/lisp)
|
||||
$(info $(notdir \
|
||||
$(wildcard \
|
||||
$(addsuffix .el, \
|
||||
$(addprefix contrib/lisp/, \
|
||||
$(basename \
|
||||
$(notdir $(ORG_ADD_CONTRIB))))))))
|
||||
config-test config-all::
|
||||
$(info )
|
||||
$(info ========= Test configuration)
|
||||
$(foreach var,$(CONF_TEST),$(info $(var) = $($(var))$(EOL)))
|
||||
config-exe config-all::
|
||||
$(info )
|
||||
$(info ========= Executables used by make)
|
||||
$(foreach var,$(CONF_EXEC),$(info $(var) = $($(var))$(EOL)))
|
||||
config-cmd config-all::
|
||||
$(info )
|
||||
$(info ========= Commands used by make)
|
||||
$(foreach var,$(CONF_CALL),$(info $(var) = $($(var))$(EOL)))
|
||||
config config-test config-exe config-all config-version::
|
||||
$(info ========= Org version)
|
||||
$(info make: Org mode version $(ORGVERSION) ($(GITVERSION) => $(lispdir)))
|
||||
@echo ""
|
||||
|
||||
oldorg: compile info # what the old makefile did when no target was specified
|
||||
uncompiled: cleanlisp autoloads # for developing
|
||||
refcard: card
|
||||
update update2:: up0 all
|
||||
|
||||
single: ORGCM=single
|
||||
single: compile
|
||||
|
||||
.PRECIOUS: local.mk
|
||||
local.mk:
|
||||
$(info ======================================================)
|
||||
$(info = Invoke "make help" for a synopsis of make targets. =)
|
||||
$(info = Created a default local.mk template. =)
|
||||
$(info = Setting "oldorg" as the default target. =)
|
||||
$(info = Please adapt local.mk to your local setup! =)
|
||||
$(info ======================================================)
|
||||
-@$(MAKE_LOCAL_MK)
|
||||
|
||||
all compile::
|
||||
$(foreach dir, doc lisp, $(MAKE) -C $(dir) clean;)
|
||||
compile compile-dirty::
|
||||
$(MAKE) -C lisp $@
|
||||
all clean-install::
|
||||
$(foreach dir, $(SUBDIRS), $(MAKE) -C $(dir) $@;)
|
||||
|
||||
vanilla:
|
||||
-@$(NOBATCH) &
|
||||
|
||||
check test:: compile
|
||||
check test test-dirty::
|
||||
-$(MKDIR) $(testdir)
|
||||
TMPDIR=$(testdir) $(BTEST)
|
||||
ifeq ($(TEST_NO_AUTOCLEAN),) # define this variable to leave $(testdir) around for inspection
|
||||
$(MAKE) cleantest
|
||||
endif
|
||||
|
||||
up0:: cleanaddcontrib
|
||||
up0 up1 up2::
|
||||
git checkout $(GIT_BRANCH)
|
||||
git remote update
|
||||
git pull
|
||||
up1 up2:: all
|
||||
$(MAKE) test-dirty
|
||||
up2 update2::
|
||||
$(SUDO) $(MAKE) install
|
||||
|
||||
install: $(INSTSUB)
|
||||
|
||||
install-info: install-doc
|
||||
|
||||
doc docs: $(ORG_MAKE_DOC)
|
||||
|
||||
info html pdf card:
|
||||
$(MAKE) -C doc $@
|
||||
|
||||
$(INSTSUB):
|
||||
$(MAKE) -C $(@:install-%=%) install
|
||||
|
||||
autoloads: lisp
|
||||
$(MAKE) -C $< $@
|
||||
|
||||
cleandirs:
|
||||
$(foreach dir, $(SUBDIRS), $(MAKE) -C $(dir) cleanall;)
|
||||
|
||||
clean: cleanlisp cleandoc
|
||||
|
||||
cleanall: cleandirs cleantest cleanaddcontrib
|
||||
-$(FIND) . \( -name \*~ -o -name \*# -o -name .#\* \) -exec $(RM) {} +
|
||||
-$(FIND) $(CLEANDIRS) \( -name \*~ -o -name \*.elc \) -exec $(RM) {} +
|
||||
|
||||
$(CLEANDIRS:%=clean%):
|
||||
-$(FIND) $(@:clean%=%) \( -name \*~ -o -name \*.elc \) -exec $(RM) {} +
|
||||
|
||||
cleanelc:
|
||||
$(MAKE) -C lisp $@
|
||||
|
||||
cleanaddcontrib:
|
||||
-$(RM) $(wildcard $(addprefix lisp/,$(notdir $(wildcard contrib/lisp/*.el))))
|
||||
|
||||
cleanlisp: cleanaddcontrib
|
||||
cleanlisp cleandoc:
|
||||
$(MAKE) -C $(@:clean%=%) clean
|
||||
|
||||
cleandocs:
|
||||
$(MAKE) -C doc clean
|
||||
-$(FIND) doc -name \*~ -exec $(RM) {} \;
|
||||
|
||||
cleantest:
|
||||
# git-annex creates non-writable directories so that the files within
|
||||
# them can't be removed; if rm fails, try to recover by making all
|
||||
# directories writable
|
||||
-$(RMR) $(testdir) || { \
|
||||
$(FIND) $(testdir) -type d -exec $(CHMOD) u+w {} + && \
|
||||
$(RMR) $(testdir) ; \
|
||||
}
|
||||
2
lisp/org/mk/version.mk
Normal file
2
lisp/org/mk/version.mk
Normal file
@@ -0,0 +1,2 @@
|
||||
ORGVERSION ?= 9.3.6
|
||||
GITVERSION ?= 9.3.6-dist
|
||||
Reference in New Issue
Block a user