Files
emacs.d/elpa/auctex-11.91.0/Makefile.in
Mateus Pinto Rodrigues 58c3bd6728 Initial commit
2017-11-11 15:15:10 -02:00

713 lines
27 KiB
Makefile
Raw Blame History

This file contains invisible Unicode characters
This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# Makefile for AUCTeX
# Maintainer: auctex-devel@gnu.org
# Copyright (C) 2003-2008, 2010, 2013-2015 Free Software
# Foundation, Inc.
# This file is part of AUCTeX.
# AUCTeX 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.
# AUCTeX 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 AUCTeX; see the file COPYING. If not, write to the Free
# Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
# MA 02110-1301, USA.
@SET_MAKE@
prefix = @prefix@$(null)
exec_prefix = @exec_prefix@$(null)
libdir = @libdir@$(null)
packagedatadir = @packagedatadir@$(null)
datarootdir = @datarootdir@$(null)
datadir = @datadir@$(null)
localstatedir = @localstatedir@$(null)
infodir = @infodir@$(null)
lispdir = @lispdir@$(null)
auctexstartfile=@auctexstartfile@
previewstartfile = @previewstartfile@
packagelispdir = @packagelispdir@$(null)
packagedatadir = @packagedatadir@$(null)
packagedir = @packagedir@$(null)
autodir = @autodir@$(null)
preview_enabled=@preview_enabled@
styledir = $(packagedatadir)/style
AUCTEXDATE = @AUCTEXDATE@
AUCTEXVERSION = @AUCTEXVERSION@
INSTALL = @INSTALL@
INSTALL_DATA = @INSTALL_DATA@
MKINSTALLDIRS = ./mkinstalldirs
DESTDIR=
PACKAGE=auctex
PACKAGE_INFO=auctex preview-latex
EMACS=@EMACS@
ELCC=$(EMACS) -batch -q -no-site-file -no-init-file -l lpath.el
AUTOLOAD=--eval '(let ((generated-autoload-file (expand-file-name "$@"))) \
(mapcar (function update-file-autoloads) command-line-args-left) \
(save-buffers-kill-emacs t))'
PREVIEW_AUTOLOAD=--eval '(let ((generated-autoload-file (expand-file-name "$@"))) \
(update-file-autoloads "preview.el")(save-buffers-kill-emacs t))'
# Files and directories excluded from distributed tar ball.
EXCLUDEDFILES=autogen.sh .gitignore doc/.gitignore doc/tex-ref.log \
latex/.gitignore README.GIT tests build-aux
.SUFFIXES: .el .elc .texi
SHELL = /bin/sh
CP = cp -p
CP_A = $(CP) -R
DIST_PREFIX=$(PWD)/auctex-dist
FTPDIR = $(DIST_PREFIX)/ftp
WWWDIR = $(DIST_PREFIX)/www
CTANDIR = $(DIST_PREFIX)/ctan
XEMACS_BUILD_DIR = xemacs-build
PREVIEW_BUILD_DIR = preview-build
COMMITTER="`git config --get user.name`\ \ \<`git config --get user.email`\>"
RPMROOT = /usr/src/redhat
RPM_SIGN = --sign
MULESRC = @MULESRC@
MULEELC = @MULEELC@
AUCSRC = tex.el tex-buf.el tex-style.el plain-tex.el latex.el tex-info.el \
texmathp.el multi-prompt.el tex-mik.el font-latex.el tex-font.el \
context.el context-en.el context-nl.el tex-fold.el \
toolbar-x.el tex-bar.el bib-cite.el tex-ispell.el
AUCELC = $(AUCSRC:.el=.elc)
STYLESRC = style/prosper.el \
style/slides.el style/foils.el style/amstex.el \
style/article.el style/book.el style/letter.el \
style/report.el style/amsart.el style/amsbook.el \
style/epsf.el style/psfig.el style/latexinfo.el \
style/dutch.el style/german.el style/dk.el \
style/j-article.el style/j-book.el style/j-report.el \
style/jarticle.el style/jbook.el style/jreport.el \
style/tarticle.el style/tbook.el style/treport.el \
style/jsarticle.el style/jsbook.el style/jsreport.el \
style/dinbrief.el style/virtex.el style/plfonts.el \
style/plhb.el style/harvard.el style/swedish.el \
style/danish.el style/slovak.el style/czech.el \
style/amsmath.el style/amstext.el style/amsbsy.el \
style/amsopn.el style/amsthm.el style/natbib.el \
style/index.el style/makeidx.el style/multind.el \
style/varioref.el style/fancyref.el style/mdwlist.el \
style/ngerman.el style/graphicx.el style/graphics.el \
style/verbatim.el style/scrbase.el style/scrartcl.el \
style/scrbook.el style/scrreprt.el style/scrlttr2.el \
style/scrpage2.el style/captcont.el style/subfigure.el \
style/paralist.el style/booktabs.el style/emp.el \
style/jura.el style/alphanum.el style/beamer.el \
style/alltt.el style/italian.el style/doc.el \
style/ltxdoc.el style/ltx-base.el style/units.el \
style/nicefrac.el style/url.el style/listings.el \
style/inputenc.el style/frenchb.el style/francais.el \
style/MinionPro.el style/pdfsync.el style/polish.el \
style/polski.el style/icelandic.el style/comment.el \
style/flashcards.el style/pstricks.el style/nomencl.el \
style/hyperref.el style/bulgarian.el style/CJK.el \
style/ruby.el style/CJKutf8.el style/tabularx.el \
style/multido.el style/pst-grad.el style/pst-node.el \
style/pst-plot.el style/pst-slpe.el style/shortvrb.el \
style/austrian.el style/naustrian.el style/french.el \
style/lettrine.el style/multicol.el style/xspace.el \
style/setspace.el style/biblatex.el style/siunitx.el \
style/bm.el style/footmisc.el style/ulem.el \
style/bigdelim.el style/bigstrut.el style/everysel.el \
style/mathtools.el style/ragged2e.el style/amssymb.el \
style/lscape.el style/epigraph.el style/mflogo.el \
style/multirow.el style/imakeidx.el style/afterpage.el \
style/longtable.el style/lipsum.el style/kantlipsum.el \
style/memoir.el style/placeins.el style/nameref.el \
style/fancynum.el style/fancyhdr.el style/filecontents.el \
style/array.el style/kpfonts.el style/acro.el \
style/acronym.el style/xparse.el style/fancyvrb.el \
style/tabulary.el style/fontspec.el style/unicode-math.el \
style/luacode.el style/metalogo.el style/english.el \
style/exercise.el style/plext.el style/cleveref.el \
style/eso-pic.el style/fontaxes.el style/AnonymousPro.el \
style/mdsymbol.el style/MyriadPro.el style/textcomp.el \
style/XCharter.el style/zlmtt.el style/ifluatex.el \
style/luatextra.el style/erewhon.el style/baskervaldx.el \
style/fbb.el style/newtxmath.el style/newtxsf.el \
style/newtxtext.el style/newtxttt.el style/minted.el \
style/wrapfig.el style/relsize.el style/currvita.el \
style/tcolorbox.el style/color.el style/expl3.el \
style/bidibeamer.el style/enumitem.el style/caption.el \
style/geometry.el style/ltablex.el style/ltxtable.el \
style/mn2e.el style/colortbl.el style/attachfile.el \
style/newpxtext.el style/newpxmath.el style/pdfpages.el \
style/mnras.el style/environ.el style/polyglossia.el \
style/vwcol.el style/textpos.el style/transparent.el \
style/fontenc.el style/Alegreya.el style/gloss-italian.el \
style/newfloat.el style/subcaption.el style/AlegreyaSans.el \
style/hologo.el style/theorem.el style/ntheorem.el \
style/splitidx.el style/tikz.el style/xcolor.el \
style/pdflscape.el style/commath.el style/empheq.el \
style/framed.el style/paracol.el style/menukeys.el \
style/bidi.el style/FiraMono.el style/FiraSans.el \
style/bicaption.el style/amsfonts.el style/subfiles.el \
style/dcolumn.el style/mdframed.el style/tcolorboxlib-raster.el \
style/titleps.el style/titlesec.el style/titletoc.el \
style/exam.el style/breqn.el style/sourcecodepro.el \
style/preview.el style/fvextra.el style/jurabib.el \
style/csquotes.el style/babel.el style/dk-bib.el \
style/floatrow.el style/moodle.el style/canadian.el \
style/australian.el style/newzealand.el
STYLEELC = $(STYLESRC:.el=.elc)
ifeq (@preview_enabled@,yes)
PREVIEWSRC = @PLAT_LISP@ preview.el
PREVIEWELC = $(PREVIEWSRC:.el=.elc)
PREVIEWLATEX = test "x$(packagedir)" != xno || $(MAKE) preview-latex.el
TEXMF = (cd latex ; $(MAKE) all)
# Install actions
INS_TEXMF = (cd latex ; $(MAKE) DESTDIR=$(DESTDIR) install)
PREVIEW_INS_STARTUP = test $(packagedir) != no || \
$(INSTALL_DATA) preview-latex.el $(DESTDIR)$(previewstartfile)
else
# Don't do anything with preview if the user doesn't want the
# preview component.
PREVIEWSRC =
PREVIEWELC =
PREVIEWLATEX =
TEXMF =
INS_TEXMF =
PREVIEW_INS_STARTUP =
endif
CLEANFILES = $(AUCELC) $(STYLEELC) $(MULEELC) $(PREVIEWELC) preview-latex.el
DISTCLEANFILES = Makefile tex-site.el tex-site.el.out auctex.el \
auto-loads.el config.* preview.el
DISTTEXTS = FAQ INSTALL INSTALL.windows README TODO PROBLEMS.preview
NOSEARCH = style/.nosearch
all: texmf lisp docs
.PHONY: all lisp info dvi some install install-el install-lisp docs \
install-docs install-auto install-metadata install-startup \
install-man clean distclean maintainer-clean extraclean \
tar-ball-clean check-tag check release-commit dist snapshot \
patch tar-ball rpm-packages wc xemacs-package windows-package \
release-sign release-upload preview-ball uninstall
texmf: latex/Makefile
$(TEXMF)
lisp: tex-site.el $(AUCSRC) $(STYLESRC) $(MULESRC) $(PREVIEWSRC)
$(ELCC) -f batch-byte-compile $(AUCSRC) $(STYLESRC) $(MULESRC) $(PREVIEWSRC)
$(PREVIEWLATEX)
preview-latex.el: preview.el
rm -f preview-latex.el
-$(EMACS) -batch -no-site-file -no-init-file $(PREVIEW_AUTOLOAD) ; \
test -r $@ || { \
echo ";; Auto-generated preview-latex.el" > $@ ; \
echo " " >> $@ ; \
$(EMACS) -batch -no-site-file -no-init-file $(PREVIEW_AUTOLOAD) ; \
}
docs:
cd doc ; $(MAKE) all
info:
cd doc ; $(MAKE) info
dvi:
cd doc ; $(MAKE) dvi
tex-site.el: tex-site.el.out auto-loads.el Makefile
cat tex-site.el.out >$@
test X$(packagedir) != Xno || cat auto-loads.el >>$@
echo "(provide 'tex-site)" >>$@ ; \
test X$(packagedir) != Xno || echo ";;; tex-site.el ends here" >>$@
tex-site.el.out: tex-site.el.in Makefile config.status
./config.status
auctex.el: auctex.el.in config.status
./config.status
latex/Makefile: latex/Makefile.in Makefile config.status
./config.status
configure: configure.ac aclocal.m4
autoconf
Makefile: Makefile.in config.status
./config.status
doc/Makefile: doc/Makefile.in config.status ChangeLog.1
./config.status
config.status: configure
./config.status --recheck
auto-loads.el: $(AUCSRC) $(MULESRC) Makefile
test X$(packagedir) != Xno || { \
rm -f $@ ; \
$(ELCC) $(AUTOLOAD) $(AUCSRC) $(MULESRC) || : ; \
test -r $@ || { \
echo ";; Auto-generated part of tex-site.el" > $@ ; \
echo " " >> $@ ; \
$(ELCC) $(AUTOLOAD) $(AUCSRC) $(MULESRC) ; \
} ; \
}
some: $(AUCELC) $(STYLEELC)
install: install-texmf install-lisp install-docs install-images \
install-startup
$(MAKE) 'DESTDIR=$(DESTDIR)' install-metadata
install-man: doc/Makefile
cd doc && $(MAKE) 'DESTDIR=$(DESTDIR)' install-man
$(INSTALL_DATA) RELEASE $(DESTDIR)$(packagedir)/man/auctex
install-startup:
$(PREVIEWLATEX)
$(PREVIEW_INS_STARTUP)
test $(packagedir) != no || \
$(INSTALL_DATA) auctex.el $(DESTDIR)$(auctexstartfile)
install-texmf:
$(INS_TEXMF)
install-el:
-$(MKINSTALLDIRS) $(DESTDIR)$(lispdir)
rm -f $(DESTDIR)$(packagelispdir)/tex-site.el # Remove old (Git-version) mistakes
test ! -f $(DESTDIR)$(lispdir)/tex-site.el || { \
if grep -q "tex-site.*Don't edit." $(DESTDIR)$(lispdir)/tex-site.el; then \
echo "Overwriting old tex-site.el" ; \
else \
echo "Renaming old tex-site.el to tex-site.el.save" ; \
mv $(DESTDIR)$(lispdir)/tex-site.el $(DESTDIR)$(lispdir)/tex-site.el.save ; \
fi; \
}
if test X$(packagedir) = Xno; \
then $(INSTALL_DATA) tex-site.el $(DESTDIR)$(lispdir) ; \
else rm -f $(DESTDIR)$(lispdir)/tex-site.el ; \
fi
-$(MKINSTALLDIRS) $(DESTDIR)$(packagelispdir)
@: $(MAKE) ; for x in $(AUCSRC) $(MULESRC) $(PREVIEWSRC); do \
echo '$(INSTALL_DATA)' $$x '$(DESTDIR)$(packagelispdir)' ; \
done
@for x in $(AUCSRC) $(MULESRC) $(PREVIEWSRC); do \
$(INSTALL_DATA) $$x $(DESTDIR)$(packagelispdir) ; \
done;
-$(MKINSTALLDIRS) $(DESTDIR)$(styledir)
$(INSTALL_DATA) $(NOSEARCH) $(DESTDIR)$(styledir)
@: $(MAKE) ; for x in $(STYLESRC) ; do \
echo '$(INSTALL_DATA)' $$x '$(DESTDIR)$(styledir)' ; \
done;
@for x in $(STYLESRC) ; do \
$(INSTALL_DATA) $$x $(DESTDIR)$(styledir) ; \
done;
-$(MKINSTALLDIRS) $(DESTDIR)$(autodir)
-$(INSTALL_DATA) $(NOSEARCH) $(DESTDIR)$(autodir)
install-lisp: some install-el
@: $(MAKE) ; for x in $(AUCSRC) $(MULESRC) $(PREVIEWSRC); do \
echo '$(INSTALL_DATA)' $${x}c '$(DESTDIR)$(packagelispdir)' ; \
done
@for x in $(AUCSRC) $(MULESRC) $(PREVIEWSRC); do \
$(INSTALL_DATA) $${x}c $(DESTDIR)$(packagelispdir) ; \
done
@: $(MAKE) ; for x in $(STYLESRC) ; do \
echo '$(INSTALL_DATA)' $${x}c '$(DESTDIR)$(styledir)' ; \
done
@for x in $(STYLESRC) ; do \
$(INSTALL_DATA) $${x}c $(DESTDIR)$(styledir) ; \
done
install-images:
-$(MKINSTALLDIRS) $(DESTDIR)$(packagedatadir)/images
@: $(MAKE) ; for x in images/*.xpm ; do \
echo '$(INSTALL_DATA)' $${x} '$(DESTDIR)$(packagedatadir)/images' ; \
done
@for x in images/*.xpm ; do \
$(INSTALL_DATA) $${x} $(DESTDIR)$(packagedatadir)/images ; \
done
install-docs: doc/Makefile
cd doc ; $(MAKE) DESTDIR=$(DESTDIR) install-auctex
test "x$(preview_enabled)" != xyes || { \
cd doc ; $(MAKE) DESTDIR=$(DESTDIR) install-preview; }
install-auto:
@echo "Use \"M-x TeX-auto-generate-global RET\" instead."
install-metadata:
test "x$(packagedir)" = xno || { \
$(MKINSTALLDIRS) $(DESTDIR)$(packagedir)/pkginfo || : ; \
$(ELCC) -l prv-install -f preview-make-package $(DESTDIR)$(packagedir) "$(PACKAGE)" \"`echo $(AUCTEXDATE)|sed 's/\(.*\)-\(.*\)-\(.*\)/\1.\2\3/'`\" \"$(AUCTEXVERSION)\" tex-site.el && \
cd $(DESTDIR)$(packagedir) && \
find "etc/$(PACKAGE)" "lisp/$(PACKAGE)" -print >"pkginfo/MANIFEST.$(PACKAGE)" && \
for i in $(PACKAGE_INFO); do \
test -r "info/$$i.info" && echo "info/$$i.info" >> "pkginfo/MANIFEST.$(PACKAGE)" ; \
done && \
echo "pkginfo/MANIFEST.$(PACKAGE)" >> "pkginfo/MANIFEST.$(PACKAGE)" ; \
}
uninstall:
rm -rf $(DESTDIR)$(packagelispdir) $(DESTDIR)$(packagedatadir) \
$(DESTDIR)$(autodir)
if test X$(packagedir) = Xno ; then \
rm -f $(DESTDIR)$(lispdir)/tex-site.el \
$(DESTDIR)$(auctexstartfile) ; \
else \
rm -f $(DESTDIR)$(packagedir)/man/auctex/RELEASE \
$(DESTDIR)$(packagedir)/pkginfo/MANIFEST.$(PACKAGE); \
fi
cd doc ; $(MAKE) DESTDIR=$(DESTDIR) uninstall
rm -f $(DESTDIR)$(previewstartfile)
rm -rf $(DESTDIR)$(packagelispdir)
(cd latex ; $(MAKE) DESTDIR=$(DESTDIR) uninstall)
.el.elc:
$(ELCC) -f batch-byte-compile $<
clean: doc/Makefile
rm -f $(CLEANFILES)
cd doc && $(MAKE) clean
distclean: doc/Makefile
rm -f $(CLEANFILES) $(DISTCLEANFILES)
cd doc && $(MAKE) distclean
maintainer-clean: doc/Makefile
rm -f $(DISTTEXTS)
rm -rf autom4te.cache
rm -f $(CLEANFILES) $(DISTCLEANFILES)
cd doc && $(MAKE) maintainer-clean
extraclean: maintainer-clean
rm -f *~ \#*\#
tar-ball-clean: check-tag
rm -rf auctex-$(TAG)/
rm -rf $(XEMACS_BUILD_DIR)/
wc:
wc $(AUCSRC) $(STYLESRC)
# ----------------------------------------------------------------------
# The targets below update the ChangeLog from git log
# and are intended to be used only by the maintainers.
# These rules are adapted from GNU Emacs Makefile.
.PHONY: ChangeLog change-history change-history-commit change-history-nocommit
.PHONY: preferred-branch-is-current unchanged-history-files
CHANGELOG = ChangeLog
auctexlog = build-aux/gitlog-to-auctexlog
# The ChangeLog history files are called ChangeLog.1, ChangeLog.2, ...,
# ChangeLog.$(CHANGELOG_HISTORY_INDEX_MAX). $(CHANGELOG_N) stands for
# the newest (highest-numbered) ChangeLog history file.
CHANGELOG_HISTORY_INDEX_MAX = 1
CHANGELOG_N = ChangeLog.$(CHANGELOG_HISTORY_INDEX_MAX)
# Check that we are in a good state for changing history.
PREFERRED_BRANCH = master
preferred-branch-is-current:
git branch | grep -q '^\* $(PREFERRED_BRANCH)$$'
unchanged-history-files:
x=$$(git diff-files --name-only $(CHANGELOG_N) $(auctexlog)) && \
test -z "$$x"
# Convert git commit log to ChangeLog file. make-dist uses this.
# I guess this is PHONY so it always updates?
ChangeLog:
./$(auctexlog) -o $(CHANGELOG) -n $(CHANGELOG_HISTORY_INDEX_MAX)
# Regular expression that matches the newest commit covered by a ChangeLog.
new_commit_regexp = ^commit [0123456789abcdef]* (inclusive)
# Copy newer commit messages to the start of the ChangeLog history file,
# and consider them to be older.
change-history-nocommit: #preferred-branch-is-current unchanged-history-files
-rm -f ChangeLog.tmp
$(MAKE) ChangeLog CHANGELOG=ChangeLog.tmp
sed '/^This file records repository revisions/,$$d' \
ChangeLog.tmp > $(CHANGELOG_N).tmp
new_commit_line=`grep --text '$(new_commit_regexp)' ChangeLog.tmp` && \
sed 's/$(new_commit_regexp).*/'"$$new_commit_line/" \
$(CHANGELOG_N) >>$(CHANGELOG_N).tmp
rm ChangeLog.tmp
mv $(CHANGELOG_N).tmp $(CHANGELOG_N)
change-history: change-history-nocommit
$(MAKE) $@-commit
# If 'make change-history' fails because the newest ChangeLog history
# file contains invalid text, fix the file by hand and then run
# 'make change-history-commit'.
change-history-commit:
git commit -m'; make $@' $(CHANGELOG_N) $(auctexlog)
# ----------------------------------------------------------------------
# The targets below are concerned with the release process and
# intended to be used only by the maintainers.
# Steps for making a release:
#
# 0) check
# Run tests using ERT tool. Not necessary but strongly suggested before a
# release.
#
# 1) change-history
# Update the ChangeLog file.
#
# 2) release-commit TAG=<tag> COMMITTER=<committer>
# Tag the release.
# Pass `COMMITTER=<committer>' argument only if it is different from
# your git name and email. `<committer>' should be in the form
# "John Doe <john.doe@example.com>"
#
# 3) dist TAG=<tag>
# Create the tar ball and other release files and put them into $FTPDIR.
#
# 4) xemacs-package TAG=<tag>
# Create the precompiled XEmacs package.
#
# 5) windows-package WEMACSVER=<emacs-version> TAG=<tag>
# Create the precompiled AUCTeX package for Windows.
# This requires a compiled Emacs of the same version at location $WEMACS.
# NOTA BENE: you may need to use bash shell for this recipe to work.
#
# 6) release-sign TAG=<tag>
# Sign the tar ball and create directive files for upload. NOTA BENE: you
# may need to use bash shell for this recipe to work.
#
# 7) release-upload
# Upload files to GNU FTP server.
#
# 8) www-doc TAG=<tag>
# Create documentation for AUCTeX home page.
#
# 9) preview-ball TAG=<tag>
# Create preview package. (Not for GNU FTP server but for CTAN.)
dist: check-tag tar-ball
snapshot: dist
check-tag:
@if [ "X$(TAG)" = "X" ]; then echo "*** Error: No TAG ***"; exit 1; fi
check:
cd tests && $(MAKE) check
release-commit: check-tag
@echo "Tagging release $(TAG) in Git ..."
sleep 5
mv $(CHANGELOG_N) ChangeLog.old
mv ChangeLog-preview ChangeLog-preview.old
# Make sure the release ChangeLog entry is encoded with UTF-8.
# This requires the `iconv' program.
echo `date "+%Y-%m-%d "`" ${COMMITTER}" | iconv -t UTF-8 - > $(CHANGELOG_N)
echo >> $(CHANGELOG_N)
echo " * Version" $(TAG) released. >> $(CHANGELOG_N)
echo >> $(CHANGELOG_N)
cp $(CHANGELOG_N) ChangeLog-preview
cat ChangeLog.old >> $(CHANGELOG_N)
cat ChangeLog-preview.old >> ChangeLog-preview
git commit -m '; Release_$(TAG)' -- $(CHANGELOG_N) ChangeLog-preview
git tag release_`echo $(TAG) | sed -e 's/[.]/_/g'`
@echo
@echo "Congratulations! Release $(TAG) of AUCTeX is ready."
@echo "Please, remember to run"
@echo " git push --tags origin master"
@echo "to propagate release commit and tag to the remote repository."
tar-ball: doc/Makefile
test ! -d auctex-$(TAG) || rm -r auctex-$(TAG)
mkdir auctex-$(TAG)
# Use TAG_EXPORT if set (for snapshots)
git archive $${TAG_EXPORT:=`echo release_$(TAG) | sed 's/[.]/_/g'`} | tar -xC auctex-$(TAG)
cd auctex-$(TAG) && AUCTEXVERSION=$(TAG) AUCTEXDATE=$(AUCTEXDATE) ./autogen.sh && rm -rf $(EXCLUDEDFILES)
chmod -R go-w+rX auctex-$(TAG)
rm -rf $(FTPDIR)
mkdir -p $(FTPDIR)
tar -cf - --owner=root --group=root auctex-$(TAG) | gzip --best > $(FTPDIR)/auctex-$(TAG).tar.gz
-zip -r $(FTPDIR)/auctex-$(TAG).zip auctex-$(TAG)
$(CP) auctex-$(TAG)/CHANGES $(FTPDIR)/CHANGES
$(CP) auctex-$(TAG)/RELEASE $(FTPDIR)/RELEASE-$(TAG)
# The following files aren't produced in auctex-$(TAG) since they
# are not in the tarball and should not become part of the patch target.
$(CP) auctex-$(TAG)/doc/version.texi doc/version.texi
cd doc && $(MAKE) extradist
rm -f doc/version.texi
$(CP) doc/auctex.ps doc/auctex.pdf doc/tex-ref.ps doc/tex-ref.pdf $(FTPDIR)
$(CP) $(CHANGELOG_N) $(FTPDIR)
rpm-packages:
rpmbuild -ta $(RPM_SIGN) $(FTPDIR)/auctex-$(TAG).tar.gz
$(CP) $(RPMROOT)/{RPMS/noarch/{auctex-emacs,preview-tetex},SRPMS/auctex}-$(TAG)[.-]* $(FTPDIR)
@echo "If you need to prepare RPM on some other system, you need to add"
@echo "them in $(FTPDIR) before 'make release-sign'."
sleep 2
patch:
diff -u auctex-$(OLD) auctex-$(TAG) | gzip --best \
>$(FTPDIR)/auctex-$(OLD)-to-$(TAG).patch.gz
xemacs-package: check-tag
rm -rf $(XEMACS_BUILD_DIR)
$(CP_A) auctex-$(TAG) $(XEMACS_BUILD_DIR)
cd $(XEMACS_BUILD_DIR) \
&& ./configure INSTALL_INFO=: TEXHASH=: --with-xemacs --with-packagedir=`pwd`/xemacs-package --without-texmf-dir --with-auto-dir=etc/auctex/auto \
&& $(MAKE) all install-man install && cd xemacs-package && tar -cf - --owner=root --group=root . | gzip --best > $(FTPDIR)/auctex-$(TAG)-pkg.tar.gz
# Pre-compiled AUCTeX package for Emacs on Windows
WBUILDDIR=$(PWD)/windows-package
WEMACS=/usr/src/emacs-$(WEMACSVER)/src/emacs
WPACKAGE=auctex-$(TAG)-e$(WEMACSVER)-msw.zip
# Starting from Emacs 24.4, the name of the Windows package and the tree
# structure of the package have been changed. The following variables cater for
# these differences.
ifeq ($(shell echo "$(WEMACSVER)" | grep '\(2[2-3].[1-4]\|24.[1-3]\)' -),$(WEMACSVER))
WEMACSDATAROOTDIR=""
WEMACSEXTRACTDIR=""
WEMACSPACKAGE="emacs-$(WEMACSVER)-bin-i386.zip"
WEMACSSITELISP="site-lisp"
else
WEMACSDATAROOTDIR="share/"
WEMACSEXTRACTDIR="emacs-$(WEMACSVER)"
# And just to add more complexity, the package name changed again with Emacs
# 24.5. Actually, we don't really need to keep track of all these changes as we
# should support only the latest Emacs version, but unless something else
# changes again again in the near future we can keep them (and it's useful to
# reproduce old AUCTeX packages!).
ifeq (24.4,$(WEMACSVER))
WEMACSPACKAGE="emacs-$(WEMACSVER)-bin-i686-pc-mingw32.zip"
else
WEMACSPACKAGE="emacs-$(WEMACSVER)-bin-i686-mingw32.zip"
endif
WEMACSSITELISP="$(WEMACSDATAROOTDIR)/emacs/site-lisp"
endif
WPACKAGEFILES=$(WEMACSSITELISP)/auctex $(WEMACSSITELISP)/site-start.d \
$(WEMACSSITELISP)/site-start.el $(WEMACSSITELISP)/tex-site.el \
var/auctex $(WEMACSDOC) $(WEMACSDATAROOTDIR)doc $(WEMACSDATAROOTDIR)info/dir \
$(WEMACSDATAROOTDIR)info/auctex.info* $(WEMACSDATAROOTDIR)info/preview-latex.info*
windows-package: check-tag
@if [ "X$(WEMACSVER)" = "X" ]; then \
echo "*** Error: No Emacs version (WEMACSVER) ***"; \
exit 1; \
fi
# Make sure the prerequisites are available
test -d $(WBUILDDIR) || mkdir $(WBUILDDIR)
test -f $(WBUILDDIR)/$(WEMACSPACKAGE) \
|| { cd $(WBUILDDIR) \
&& wget http://ftp.gnu.org/gnu/emacs/windows/$(WEMACSPACKAGE); }
test -f $(WBUILDDIR)/auctex-$(TAG).zip \
|| { test -f $(FTPDIR)/auctex-$(TAG).zip \
&& $(CP) $(FTPDIR)/auctex-$(TAG).zip $(WBUILDDIR); } \
|| { cd $(WBUILDDIR) \
&& wget http://ftp.gnu.org/gnu/auctex/auctex-$(TAG).zip; }
# Reset to clean state
cd $(WBUILDDIR) \
&& rm -rf emacs-$(WEMACSVER) \
&& rm -rf auctex-$(TAG) \
&& unzip -d "$(WEMACSEXTRACTDIR)" $(WEMACSPACKAGE) \
&& unzip auctex-$(TAG).zip
rm -f $(WPACKAGE)
# Create site-start.el and site-start.d
cd $(WBUILDDIR)/emacs-$(WEMACSVER)/$(WEMACSSITELISP) \
&& echo -e ";; Load files in \`site-start.d' directory.\
\n(dolist (file (directory-files\
\n (concat (file-name-directory load-file-name) \"site-start.d\")\
\n t \"\\\\\\\\.el\\\\\\\\'\"))\
\n (load file nil t t))" > site-start.el \
&& mkdir site-start.d
# Build and install AUCTeX
cd $(WBUILDDIR)/auctex-$(TAG) \
&& ./configure --prefix=$(WBUILDDIR)/emacs-$(WEMACSVER) \
--without-texmf-dir --with-emacs=$(WEMACS) \
--with-lispdir=$(WBUILDDIR)/emacs-$(WEMACSVER)/$(WEMACSSITELISP) \
--datarootdir=$(WBUILDDIR)/emacs-$(WEMACSVER)/$(WEMACSDATAROOTDIR) \
&& $(MAKE) \
&& sed -i -e 's/"\/[^\n]\+/(expand-file-name "..\/var\/auctex" (file-name-directory load-file-name))/' tex-site.el \
&& $(MAKE) install
# Create the package
test -d $(FTPDIR) || mkdir -p $(FTPDIR)
rm -f $(FTPDIR)/$(WPACKAGE)
cd $(WBUILDDIR)/emacs-$(WEMACSVER) \
&& zip -r $(FTPDIR)/$(WPACKAGE) $(WPACKAGEFILES)
release-sign: check-tag
rm -f $(FTPDIR)/*.{directive,asc,sig}
if [ "x$$GPG_AGENT_INFO" = "x" ]; then \
read -sp "Enter pass phrase: " phrase ; \
gpg_opt="--passphrase-fd 0"; \
else \
gpg_opt=""; phrase=""; \
fi; \
for i in $(FTPDIR)/*; do \
echo "$$phrase" | gpg --detach-sign $$gpg_opt $$i ; \
echo "version: 1.1" >$$i.directive; \
case $$i in *-$(TAG)*) echo "directory: auctex" >>$$i.directive;; \
*) echo "directory: auctex/$(TAG)-extra" >>$$i.directive ;; \
esac ; \
echo "filename: "`basename $$i` >>$$i.directive ; \
echo "$$phrase" | gpg $$gpg_opt --clearsign $$i.directive ; \
done
rm $(FTPDIR)/*.directive
release-upload:
@echo "Uploading everything in FTPDIR to GNU FTP server ..."
@sleep 5
ncftpput ftp-upload.gnu.org /incoming/ftp $(FTPDIR)/*
# AUCTeX and preview-latex manuals for the home page
www-doc: check-tag
rm -rf $(WWWDIR)
mkdir -p $(WWWDIR)/manual
$(CP) auctex-$(TAG)/doc/*.texi $(WWWDIR)/manual
cd $(WWWDIR)/manual \
&& wget -O gendocs.sh 'http://cvs.savannah.gnu.org/viewvc/%2acheckout%2a/texinfo/texinfo/util/gendocs.sh' \
&& wget -O gendocs.sh.patch 'http://git.savannah.gnu.org/gitweb/?p=auctex.git;a=blob_plain;f=gendocs.sh.patch;hb=gendocspatch' \
&& patch <gendocs.sh.patch \
&& chmod u+x gendocs.sh \
&& wget -O gendocs_template 'http://cvs.savannah.gnu.org/viewvc/%2acheckout%2a/texinfo/texinfo/util/gendocs_template' \
&& sed -i -e 's/html_node\/index\.html/%%PACKAGE%%\/index.html/' gendocs_template \
&& mkdir .texinfo \
&& echo -e "emacs split http://www.gnu.org/software/emacs/manual/html_node/emacs/\nemacs mono http://www.gnu.org/software/emacs/manual/html_mono/emacs.html\nreftex split http://www.gnu.org/software/auctex/manual/reftex/\nreftex mono http://www.gnu.org/software/auctex/manual/reftex.html\n" > .texinfo/htmlxref.cnf \
&& ./gendocs.sh --email bug-auctex@gnu.org --texi2html \
--html --use-nodes auctex "AUCTeX Manual" \
&& ./gendocs.sh --email bug-auctex@gnu.org --texi2html \
--html --use-nodes preview-latex "preview-latex Manual"
preview-ball: check-tag
test ! -d $(PREVIEW_BUILD_DIR) || rm -r $(PREVIEW_BUILD_DIR)
mkdir $(PREVIEW_BUILD_DIR)
# Use TAG_EXPORT if set (for snapshots)
git archive $${TAG_EXPORT:=`echo release_$(TAG) | sed 's/[.]/_/g'`} \
latex/ | tar -xC $(PREVIEW_BUILD_DIR) --strip-components=1
cd $(PREVIEW_BUILD_DIR) && $(MAKE) -f ../latex/Makefile preview.ins preview.pdf
chmod -R go-w+rX $(PREVIEW_BUILD_DIR)
test -d $(CTANDIR) || mkdir -p $(CTANDIR)
# CTAN requires a top level directory "preview/" for the archive.
cd $(PREVIEW_BUILD_DIR) && mkdir -p preview && \
cp README preview.dtx preview.ins preview.pdf preview/ && \
tar -cf - --owner=root --group=root preview/ | gzip --best > $(CTANDIR)/preview-$(TAG).tar.gz