vm / Makefile

# Makefile for VM lisp code

# This file is part of XEmacs.

# XEmacs 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 2, or (at your option) any
# later version.

# XEmacs 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 XEmacs; see the file COPYING.  If not, write to
# the Free Software Foundation, Inc., 59 Temple Place - Suite 330,
# Boston, MA 02111-1307, USA.

VERSION = 7.07
AUTHOR_VERSION = 7.07
MAINTAINER = Kyle Jones <kyle_jones@wonderworks.com>
PACKAGE = vm
PKG_TYPE = regular
REQUIRES = mail-lib xemacs-base
CATEGORY = standard

# vm-version.elc needs to be first in this list, because load time
# code needs the Emacs/XEmacs MULE/no-MULE feature stuff.
ELCS = vm-version.elc vm-message.elc vm-misc.elc tapestry.elc \
	vm-delete.elc vm-digest.elc vm-easymenu.elc vm-edit.elc \
	vm-folder.elc vm-imap.elc vm-license.elc vm-macro.elc \
	vm-mark.elc vm-menu.elc vm-mime.elc vm-minibuf.elc \
	vm-motion.elc vm-mouse.elc vm-page.elc vm-pop.elc vm-reply.elc \
	vm-save.elc vm-search.elc vm-sort.elc vm-startup.elc \
	vm-summary.elc vm-thread.elc vm-toolbar.elc vm-undo.elc \
	vm-user.elc vm-vars.elc vm-virtual.elc vm-window.elc \
	vm-crypto.elc

EXTRA_SOURCES = vm.el vm.elc vm-autoload.el vm-autoload.elc Makefile-kj \
	README.bytecompile

PRELOADS =-l vm-byteopts.el -l vm-version.el -l vm-message.el \
	-l vm-macro.el -l vm-vars.el

INFO_FILES = $(PACKAGE).info*
HTML_FILES = $(PACKAGE)*.html
HTML_DEP = $(PACKAGE).html
TEXI_FILES = $(PACKAGE).texinfo
DATA_FILES = $(shell echo etc/*.x??)
DATA_DEST = $(PACKAGE)

EXTRA_OBJS = vm-autoload.el* vm.el*

include ../../XEmacs.rules

all:: $(ELCS) vm-autoload.elc vm.elc auto-autoloads.elc $(PACKAGE).info

vm.elc:	vm-autoload.elc $(ELCS)
	@echo "building vm.elc (with all modules set to autoload)..."
	@echo "(defun vm-its-such-a-cruel-world ()" > vm.el
	@echo "   (require 'vm-version)" >> vm.el
	@echo "   (require 'vm-startup)" >> vm.el
	@echo "   (require 'vm-vars)" >> vm.el
	@echo "   (require 'vm-autoload))" >> vm.el
	@echo "(vm-its-such-a-cruel-world)" >> vm.el
	@echo "(fmakunbound 'vm-its-such-a-cruel-world)" >> vm.el
	@$(BOOT_XEMACS) -f batch-byte-compile vm.el

vm-autoload.el: $(ELCS:.elc=.el)
	@echo scanning sources to build autoload definitions...
	@echo "(provide 'vm-autoload)" > vm-autoload.el
	@$(XEMACS) -vanilla -batch -l ./make-autoloads -f print-autoloads \
		$(ELCS:.elc=.el) >> vm-autoload.el

# VM's info file needs to be formatted with texinfmt instead of makeinfo. (??)
# We arrange things so that we do NOT need the packages to be already
# installed when we do this.  After all, we're compiling and installing
# the packages right now and need to be able to bootstrap.
vm.info: vm.texinfo
	$(XEMACS) -vanilla -batch -insert vm.texinfo \
		$(FORMAT_INFO_USING_XEMACS_ARGS)

srckit: srckit-std

binkit: binkit-common
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.