PageRenderTime 62ms CodeModel.GetById 34ms RepoModel.GetById 1ms app.codeStats 0ms

/vendor/org-7.4/Makefile

https://github.com/Kaali/vj-emacs
Makefile | 511 lines | 390 code | 75 blank | 46 comment | 7 complexity | f7ac738ae16f70fb9aa97471020c7372 MD5 | raw file
Possible License(s): GPL-2.0
  1. # Makefile - for the org-mode distribution
  2. #
  3. # Maintainer: Carsten Dominik <dominik@science.uva.nl>
  4. # Version: VERSIONTAG
  5. #
  6. # To install org-mode, edit the Makefile, type `make', then `make install'.
  7. # To create the PDF and HTML documentation files, type `make doc'.
  8. ##----------------------------------------------------------------------
  9. ## YOU MUST EDIT THE FOLLOWING LINES
  10. ##----------------------------------------------------------------------
  11. # Name of your emacs binary
  12. EMACS=emacs
  13. # Where local software is found
  14. prefix=/usr/local
  15. # Where local lisp files go.
  16. lispdir = $(prefix)/share/emacs/site-lisp
  17. # Where info files go.
  18. infodir = $(prefix)/share/info
  19. ##----------------------------------------------------------------------
  20. ## YOU MAY NEED TO EDIT THESE
  21. ##----------------------------------------------------------------------
  22. # Using emacs in batch mode.
  23. BATCH=$(EMACS) -batch -q -no-site-file -eval \
  24. "(setq load-path (cons (expand-file-name \"./lisp/\") (cons \"$(lispdir)\" load-path)))"
  25. # Specify the byte-compiler for compiling org-mode files
  26. ELC= $(BATCH) -f batch-byte-compile
  27. # How to make a pdf file from a texinfo file
  28. TEXI2PDF = texi2pdf
  29. # How to create directories
  30. MKDIR = mkdir -p
  31. # How to create the info files from the texinfo file
  32. MAKEINFO = makeinfo
  33. # How to create the HTML file
  34. TEXI2HTML = makeinfo --html --number-sections
  35. TEXI2HTMLNOPSLIT = makeinfo --html --no-split --number-sections
  36. # How to copy the lisp files and elc files to their distination.
  37. CP = cp -p
  38. # Name of the program to install info files
  39. INSTALL_INFO=install-info
  40. ##----------------------------------------------------------------------
  41. ## BELOW THIS LINE ON YOUR OWN RISK!
  42. ##----------------------------------------------------------------------
  43. # The following variables need to be defined by the maintainer
  44. LISPF = org.el \
  45. org-agenda.el \
  46. org-ascii.el \
  47. org-attach.el \
  48. org-archive.el \
  49. org-bbdb.el \
  50. org-beamer.el \
  51. org-bibtex.el \
  52. org-capture.el \
  53. org-clock.el \
  54. org-colview.el \
  55. org-colview-xemacs.el \
  56. org-compat.el \
  57. org-complete.el \
  58. org-crypt.el \
  59. org-ctags.el \
  60. org-datetree.el \
  61. org-docview.el \
  62. org-entities.el \
  63. org-exp.el \
  64. org-exp-blocks.el \
  65. org-docbook.el \
  66. org-faces.el \
  67. org-feed.el \
  68. org-footnote.el \
  69. org-freemind.el \
  70. org-gnus.el \
  71. org-habit.el \
  72. org-html.el \
  73. org-icalendar.el \
  74. org-id.el \
  75. org-indent.el \
  76. org-info.el \
  77. org-inlinetask.el \
  78. org-jsinfo.el \
  79. org-irc.el \
  80. org-latex.el \
  81. org-list.el \
  82. org-mac-message.el \
  83. org-macs.el \
  84. org-mew.el \
  85. org-mhe.el \
  86. org-mks.el \
  87. org-mobile.el \
  88. org-mouse.el \
  89. org-publish.el \
  90. org-plot.el \
  91. org-protocol.el \
  92. org-remember.el \
  93. org-rmail.el \
  94. org-src.el \
  95. org-table.el \
  96. org-taskjuggler.el \
  97. org-timer.el \
  98. org-vm.el \
  99. org-w3m.el \
  100. org-wl.el \
  101. org-xoxo.el \
  102. ob.el \
  103. ob-table.el \
  104. ob-lob.el \
  105. ob-ref.el \
  106. ob-exp.el \
  107. ob-tangle.el \
  108. ob-comint.el \
  109. ob-eval.el \
  110. ob-keys.el \
  111. ob-C.el \
  112. ob-calc.el \
  113. ob-ditaa.el \
  114. ob-haskell.el \
  115. ob-perl.el \
  116. ob-sh.el \
  117. ob-R.el \
  118. ob-dot.el \
  119. ob-mscgen.el \
  120. ob-latex.el \
  121. ob-ledger.el \
  122. ob-python.el \
  123. ob-sql.el \
  124. ob-asymptote.el \
  125. ob-emacs-lisp.el \
  126. ob-matlab.el \
  127. ob-ruby.el \
  128. ob-sqlite.el \
  129. ob-clojure.el \
  130. ob-ocaml.el \
  131. ob-sass.el \
  132. ob-css.el \
  133. ob-gnuplot.el \
  134. ob-octave.el \
  135. ob-screen.el \
  136. ob-plantuml.el \
  137. ob-org.el \
  138. ob-js.el \
  139. ob-scheme.el
  140. LISPFILES0 = $(LISPF:%=lisp/%)
  141. LISPFILES = $(LISPFILES0) lisp/org-install.el
  142. ELCFILES0 = $(LISPFILES0:.el=.elc)
  143. ELCFILES = $(LISPFILES:.el=.elc)
  144. DOCFILES = doc/org.texi doc/org.pdf doc/org doc/dir \
  145. doc/pdflayout.sty doc/.nosearch \
  146. doc/orgguide.texi doc/orgguide.pdf
  147. CARDFILES = doc/orgcard.tex doc/orgcard.pdf doc/orgcard_letter.pdf
  148. TEXIFILES = doc/org.texi
  149. INFOFILES = doc/org
  150. # Package Manager (ELPA)
  151. PKG_TAG = $(shell date +%Y%m%d)
  152. PKG_DOC = "Outline-based notes management and organizer"
  153. PKG_REQ = "nil"
  154. PKG_FILES = $(LISPFILES0) \
  155. doc/dir doc/org \
  156. doc/pdflayout.sty \
  157. doc/org.pdf \
  158. doc/orgguide.pdf \
  159. doc/orgcard.tex \
  160. doc/orgcard.pdf \
  161. doc/orgcard_letter.pdf
  162. .SUFFIXES: .el .elc .texi
  163. SHELL = /bin/sh
  164. # Additional distribution files
  165. DISTFILES_extra= Makefile request-assign-future.txt contrib
  166. default: $(ELCFILES) $(ELCBFILES)
  167. all: $(ELCFILES) $(ELCBFILES) $(INFOFILES)
  168. up2: update
  169. sudo ${MAKE} install
  170. update:
  171. git pull
  172. ${MAKE} clean
  173. ${MAKE} all
  174. compile: $(ELCFILES0) $(ELCBFILES)
  175. install: install-lisp
  176. doc: doc/org.html doc/org.pdf doc/orgcard.pdf doc/orgcard_letter.pdf doc/orgguide.pdf doc/orgcard.txt
  177. p:
  178. ${MAKE} pdf && open doc/org.pdf
  179. g:
  180. ${MAKE} pdf && open doc/orgguide.pdf
  181. install-lisp: $(LISPFILES) $(ELCFILES)
  182. if [ ! -d $(lispdir) ]; then $(MKDIR) $(lispdir); else true; fi ;
  183. $(CP) $(LISPFILES) $(lispdir)
  184. $(CP) $(ELCFILES) $(lispdir)
  185. install-info: $(INFOFILES)
  186. if [ ! -d $(infodir) ]; then $(MKDIR) $(infodir); else true; fi ;
  187. $(CP) $(INFOFILES) $(infodir)
  188. $(INSTALL_INFO) --info-file=$(INFOFILES) --info-dir=$(infodir)
  189. install-info-debian: $(INFOFILES)
  190. $(INSTALL_INFO) --infodir=$(infodir) $(INFOFILES)
  191. autoloads: lisp/org-install.el
  192. lisp/org-install.el: $(LISPFILES0) Makefile
  193. $(BATCH) --eval "(require 'autoload)" \
  194. --eval '(find-file "org-install.el")' \
  195. --eval '(erase-buffer)' \
  196. --eval '(mapc (lambda (x) (generate-file-autoloads (symbol-name x))) (quote ($(LISPFILES0))))' \
  197. --eval '(insert "\n(provide (quote org-install))\n")' \
  198. --eval '(save-buffer)'
  199. mv org-install.el lisp
  200. doc/org: doc/org.texi
  201. (cd doc; $(MAKEINFO) --no-split org.texi -o org)
  202. doc/org.pdf: doc/org.texi
  203. (cd doc; $(TEXI2PDF) org.texi)
  204. doc/orgguide.pdf: doc/orgguide.texi
  205. (cd doc; $(TEXI2PDF) orgguide.texi)
  206. doc/org.html: doc/org.texi
  207. (cd doc; $(TEXI2HTML) --no-split -o org.html org.texi)
  208. UTILITIES/manfull.pl doc/org.html
  209. doc/orgcard.pdf: doc/orgcard.tex
  210. (cd doc; pdftex orgcard.tex)
  211. doc/orgcard.txt: doc/orgcard.tex
  212. (cd doc; perl ../UTILITIES/orgcard2txt.pl orgcard.tex > orgcard.txt)
  213. doc/orgcard_letter.tex: doc/orgcard.tex
  214. perl -pe 's/\\pdflayout=\(0l\)/\\pdflayout=(1l)/' \
  215. doc/orgcard.tex > doc/orgcard_letter.tex
  216. doc/orgcard_letter.pdf: doc/orgcard_letter.tex
  217. (cd doc; pdftex orgcard_letter.tex)
  218. # Below here are special targets for maintenance only
  219. updateweb:
  220. ssh cdominik@orgmode.org 'pull-worg-orgweb.sh && publish-worg-orgweb.sh'
  221. html: doc/org.html
  222. html_manual: doc/org.texi
  223. rm -rf doc/manual
  224. mkdir doc/manual
  225. $(TEXI2HTML) -o doc/manual doc/org.texi
  226. UTILITIES/mansplit.pl doc/manual/*.html
  227. html_guide: doc/orgguide.texi
  228. rm -rf doc/guide
  229. mkdir doc/guide
  230. $(TEXI2HTML) -o doc/guide doc/orgguide.texi
  231. UTILITIES/guidesplit.pl doc/guide/*.html
  232. info: doc/org
  233. pdf: doc/org.pdf doc/orgguide.pdf
  234. card: doc/orgcard.pdf doc/orgcard_letter.pdf doc/orgcard.txt
  235. testrelease:
  236. git checkout -b testrelease maint
  237. git merge -s recursive -X theirs master
  238. UTILITIES/set-version.pl testing
  239. git commit -a -m "Release testing"
  240. make distfile TAG=testversion
  241. make cleanrel
  242. rm -rf org-testversion*
  243. git reset --hard
  244. git checkout master
  245. git branch -D testrelease
  246. # The following target makes a full release fro the stuff that is
  247. # currently on master. Do it like this:
  248. #
  249. # make release TAG=7.01
  250. release:
  251. git checkout maint
  252. git merge -s recursive -X theirs master
  253. UTILITIES/set-version.pl $(TAG)
  254. git commit -a -m "Release $(TAG)"
  255. make relup TAG=$(TAG)
  256. make cleanrel
  257. rm -rf org-$(TAG)
  258. rm -f org-$(TAG)*.zip
  259. rm -f org-$(TAG)*.tar.gz
  260. make pushreleasetag TAG=$(TAG)
  261. git push -f origin maint
  262. git checkout master
  263. git merge -s ours maint
  264. UTILITIES/set-version.pl -o $(TAG)
  265. git commit -a -m "Update website to show $(TAG) as current release"
  266. git push
  267. make updateweb
  268. # The following target makes a release, but from the studd that is on
  269. # maint, not from the stuff that is on master. The idea is that it pushes
  270. # out a minor fix into a minor update, while development on master
  271. # already went full steam ahead. To make a micro-relesse, cherry-pick
  272. # the necessary changes into maint, then run (with proper version number)
  273. # This is just like release, but we skip the step which merges master
  274. # into maint.
  275. #
  276. # make fixrelease TAG=7.01.02
  277. fixrelease:
  278. git checkout maint
  279. git merge -s recursive -X theirs master
  280. UTILITIES/set-version.pl $(TAG)
  281. git commit -a -m "Release $(TAG)"
  282. make relup TAG=$(TAG)
  283. make cleanrel
  284. rm -rf org-$(TAG)
  285. rm org-$(TAG)*.zip
  286. rm org-$(TAG)*.tar.gz
  287. make pushreleasetag TAG=$(TAG)
  288. git push -f origin maint
  289. git checkout master
  290. git merge -s ours maint
  291. UTILITIES/set-version.pl -o $(TAG)
  292. git commit -a -m "Update website to show $(TAG) as current release"
  293. git push
  294. make updateweb
  295. relup:
  296. ${MAKE} makerelease
  297. ${MAKE} upload_release
  298. ${MAKE} upload_manual
  299. distfile:
  300. @if [ "X$(TAG)" = "X" ]; then echo "*** No tag ***"; exit 1; fi
  301. touch doc/org.texi doc/orgcard.tex # force update
  302. ${MAKE} cleancontrib
  303. ${MAKE} info
  304. ${MAKE} doc
  305. ${MAKE} lisp/org-install.el
  306. rm -rf org-$(TAG) org-$(TAG).zip
  307. $(MKDIR) org-$(TAG)
  308. $(MKDIR) org-$(TAG)/doc
  309. $(MKDIR) org-$(TAG)/lisp
  310. cp -r $(LISPFILES) org-$(TAG)/lisp
  311. cp -r $(DOCFILES) $(CARDFILES) org-$(TAG)/doc
  312. cp -r $(DISTFILES_extra) org-$(TAG)/
  313. cp -r README_DIST org-$(TAG)/README
  314. cp -r ORGWEBPAGE/Changes.org org-$(TAG)/
  315. zip -r org-$(TAG).zip org-$(TAG)
  316. gtar zcvf org-$(TAG).tar.gz org-$(TAG)
  317. pkg:
  318. @if [ "X$(PKG_TAG)" = "X" ]; then echo "*** No tag ***"; exit 1; fi
  319. touch doc/org.texi doc/orgcard.tex # force update
  320. ${MAKE} info
  321. ${MAKE} doc
  322. rm -rf org-$(PKG_TAG) org-$(PKG_TAG).tar
  323. $(MKDIR) org-$(PKG_TAG)
  324. cp -r $(PKG_FILES) org-$(PKG_TAG)
  325. echo "(define-package \"org\" \"$(PKG_TAG)\" \"$(PKG_DOC)\" $(PKG_REQ))" > org-$(PKG_TAG)/org-pkg.el
  326. tar cf org-$(PKG_TAG).tar org-$(PKG_TAG) --remove-files
  327. makerelease:
  328. @if [ "X$(TAG)" = "X" ]; then echo "*** No tag ***"; exit 1; fi
  329. ${MAKE} distfile
  330. ${MAKE} doc
  331. UTILITIES/gplmanual.pl
  332. ${MAKE} html_manual
  333. ${MAKE} html_guide
  334. rm -rf RELEASEDIR
  335. $(MKDIR) RELEASEDIR
  336. cp org-$(TAG).zip org-$(TAG).tar.gz RELEASEDIR
  337. cp doc/org.pdf doc/orgcard.pdf doc/org.texi doc/org.html RELEASEDIR
  338. cp doc/org_dual_license.texi RELEASEDIR
  339. cp doc/orgguide.pdf doc/orgcard.txt RELEASEDIR
  340. cp RELEASEDIR/org-$(TAG).zip RELEASEDIR/org.zip
  341. cp RELEASEDIR/org-$(TAG).tar.gz RELEASEDIR/org.tar.gz
  342. upload_release:
  343. rsync -avuz RELEASEDIR/ cdominik@orgmode.org:orgmode.org/
  344. upload_manual:
  345. rsync -avuz --delete doc/manual/ cdominik@orgmode.org:orgmode.org/manual/
  346. rsync -avuz --delete doc/guide/ cdominik@orgmode.org:orgmode.org/guide/
  347. cleanall:
  348. ${MAKE} clean
  349. rm -f lisp/org-install.el
  350. clean:
  351. ${MAKE} cleanelc
  352. ${MAKE} cleandoc
  353. ${MAKE} cleanrel
  354. rm -f *~ */*~ */*/*~
  355. cleancontrib:
  356. find contrib -name \*~ -exec rm {} \;
  357. cleanelc:
  358. rm -f $(ELCFILES)
  359. cleandoc:
  360. (cd doc; rm -f org.pdf org org.html orgcard.pdf)
  361. (cd doc; rm -f *.aux *.cp *.cps *.dvi *.fn *.fns *.ky *.kys *.pg *.pgs)
  362. (cd doc; rm -f *.toc *.tp *.tps *.vr *.vrs *.log *.html *.ps)
  363. (cd doc; rm -f orgcard_letter.tex orgcard_letter.pdf)
  364. (cd doc; rm -rf manual)
  365. cleanrel:
  366. rm -rf RELEASEDIR
  367. rm -rf org-7.*
  368. rm -rf org-7*zip org-7*tar.gz
  369. .el.elc:
  370. $(ELC) $<
  371. push:
  372. git-push git+ssh://repo.or.cz/srv/git/org-mode.git master
  373. pushtag:
  374. git-tag -m "Adding tag" -a $(TAG)
  375. git-push git+ssh://repo.or.cz/srv/git/org-mode.git $(TAG)
  376. pushreleasetag:
  377. git-tag -m "Adding release tag" -a release_$(TAG)
  378. git-push git+ssh://repo.or.cz/srv/git/org-mode.git release_$(TAG)
  379. # Dependencies
  380. lisp/org.elc: lisp/org-macs.el lisp/org-compat.el lisp/org-faces.el
  381. lisp/org-agenda.elc: lisp/org.el
  382. lisp/org-ascii.elc: lisp/org-exp.el
  383. lisp/org-attach.elc: lisp/org.el lisp/org-id.el
  384. lisp/org-archive.elc: lisp/org.el
  385. lisp/org-bbdb.elc: lisp/org.el
  386. lisp/org-beamer.elc: lisp/org.el
  387. lisp/org-bibtex.elc: lisp/org.el
  388. lisp/org-capture.elc: lisp/org.el lisp/org-mks.el
  389. lisp/org-clock.elc: lisp/org.el
  390. lisp/org-colview.elc: lisp/org.el
  391. lisp/org-colview-xemacs.elc: lisp/org.el
  392. lisp/org-compat.elc: lisp/org-macs.el
  393. lisp/org-crypt.elc: lisp/org-crypt.el lisp/org.el
  394. lisp/org-ctags.elc: lisp/org.el
  395. lisp/org-datetree.elc: lisp/org.el
  396. lisp/org-docview.elc: lisp/org.el
  397. lisp/org-entities.elc:
  398. lisp/org-exp.elc: lisp/org.el lisp/org-agenda.el
  399. lisp/org-exp-blocks.elc: lisp/org.el
  400. lisp/org-latex.elc: lisp/org.el lisp/org-exp.el lisp/org-beamer.el
  401. lisp/org-docbook.elc: lisp/org.el lisp/org-exp.el
  402. lisp/org-faces.elc: lisp/org-macs.el lisp/org-compat.el
  403. lisp/org-feed.elc: lisp/org.el
  404. lisp/org-footnotes.elc: lisp/org-macs.el lisp/org-compat.el
  405. lisp/org-freemind.elc: lisp/org.el
  406. lisp/org-gnus.elc: lisp/org.el
  407. lisp/org-html.elc: lisp/org-exp.el
  408. lisp/org-habit.elc: lisp/org.el lisp/org-agenda.el
  409. lisp/org-icalendar.elc: lisp/org-exp.el
  410. lisp/org-id.elc: lisp/org.el
  411. lisp/org-indent.elc: lisp/org.el lisp/org-macs.el lisp/org-compat.el
  412. lisp/org-info.elc: lisp/org.el
  413. lisp/org-inlinetask.elc:
  414. lisp/org-irc.elc: lisp/org.el
  415. lisp/org-jsinfo.elc: lisp/org.el lisp/org-exp.el
  416. lisp/org-list.elc: lisp/org-macs.el lisp/org-compat.el
  417. lisp/org-mac-message.elc: lisp/org.el
  418. lisp/org-macs.elc:
  419. lisp/org-mew.elc: lisp/org.el
  420. lisp/org-mhe.elc: lisp/org.el
  421. lisp/org-mks.elc:
  422. lisp/org-mobile.elc: lisp/org.el
  423. lisp/org-mouse.elc: lisp/org.el
  424. lisp/org-plot.elc: lisp/org.el lisp/org-exp.el lisp/org-table.el
  425. lisp/org-publish.elc:
  426. lisp/org-protocol.elc: lisp/org.el
  427. lisp/org-remember.elc: lisp/org.el
  428. lisp/org-rmail.elc: lisp/org.el
  429. lisp/org-src.elc: lisp/org-macs.el lisp/org-compat.el
  430. lisp/org-table.elc: lisp/org.el
  431. lisp/org-taskjuggler.elc: lisp/org.el lisp/org-exp.el
  432. lisp/org-timer.elc: lisp/org.el
  433. lisp/org-vm.elc: lisp/org.el
  434. lisp/org-w3m.elc: lisp/org.el
  435. lisp/org-wl.elc: lisp/org.el
  436. lisp/org-xoxo.elc: lisp/org-exp.el