prefix = @prefix@
datadir = @datadir@
+infodir = @infodir@
lispdir = @lispdir@
srcdir = @srcdir@
EMACS = @EMACS@
XEMACS = @XEMACS@
PACKAGEDIR = @PACKAGEDIR@
+GNUS_PRODUCT_NAME = @GNUS_PRODUCT_NAME@
+
+# It will be used to look for the XEmacs package path if this file is
+# mis-configured (e.g. configured for FSFmacs).
+EXAMINE_PACKAGEDIR = $(XEMACS) -batch -q -no-site-file -eval \
+ "(let (package-dir) \
+ (if (boundp (quote early-packages)) \
+ (let ((dirs (delq nil (append (if early-package-load-path \
+ early-packages) \
+ (if late-package-load-path \
+ late-packages) \
+ (if last-package-load-path \
+ last-packages))))) \
+ (while (and dirs (not package-dir)) \
+ (if (file-directory-p (car dirs)) \
+ (setq package-dir (car dirs) \
+ dirs (cdr dirs)))))) \
+ (princ (or package-dir \"\")))" 2>/dev/null
all: lick info
install: install-lisp install-info
-install-ja: install-lisp install-info install-info-ja
+install-ja: install install-info-ja
install-lisp:
cd lisp && $(MAKE) EMACS="$(EMACS)" lispdir="$(lispdir)" install
install-info:
- cd texi && $(MAKE) EMACS="$(EMACS)" install
+ cd texi && $(MAKE) EMACS="$(EMACS)" infodir="$(infodir) install
install-info-ja:
- cd texi && $(MAKE) EMACS="$(EMACS)" install-ja
-
-# Rule for XEmacs package.
-package: xlick xinfo
- cd lisp && $(MAKE) EMACS="$(XEMACS)" package
-
-install-package: xinfo
- cd lisp && $(MAKE) EMACS="$(XEMACS)" PACKAGEDIR="$(PACKAGEDIR)" \
- install-package
-
-package-ja: xlick xinfo xinfo-ja
- cd lisp && $(MAKE) EMACS="$(XEMACS)" package
-
-install-package-ja: xinfo xinfo-ja
- cd lisp && $(MAKE) EMACS="$(XEMACS)" PACKAGEDIR="$(PACKAGEDIR)" \
- install-package
+ cd texi && $(MAKE) EMACS="$(EMACS)" infodir="$(infodir) install-ja
+
+## Rule for XEmacs package.
+install-package: xlick compose-package remove-extra-files-in-package \
+ install-package-lisp \
+ install-package-info install-package-manifest
+
+install-package-ja: xlick compose-package remove-extra-files-in-package \
+ install-package-lisp \
+ install-package-info install-package-info-ja \
+ install-package-manifest
+
+package: xlick xinfo compose-package
+
+package-ja: xlick xinfo xinfo-ja compose-package
+
+# Sub-rule for XEmacs package.
+install-package-lisp:
+ @if test x$(PACKAGEDIR) = x; then \
+ package_dir=`$(EXAMINE_PACKAGEDIR)`; \
+ else \
+ package_dir="$(PACKAGEDIR)"; \
+ fi; \
+ echo "cd lisp && $(MAKE)" \
+ "lispdir=$$package_dir""/lisp/$(GNUS_PRODUCT_NAME)" \
+ "install-lisp"; \
+ cd lisp && $(MAKE) \
+ lispdir="$$package_dir""/lisp/$(GNUS_PRODUCT_NAME)" \
+ install-lisp
+
+install-package-info:
+ @if test x$(PACKAGEDIR) = x; then \
+ package_dir=`$(EXAMINE_PACKAGEDIR)`; \
+ else \
+ package_dir="$(PACKAGEDIR)"; \
+ fi; \
+ echo "cd texi && $(MAKE) EMACS=$(XEMACS)" \
+ "infodir=$$package_dir""/info install-info"; \
+ cd texi && $(MAKE) EMACS="$(XEMACS)" \
+ infodir="$$package_dir""/info" install-info
+
+install-package-info-ja:
+ @if test x$(PACKAGEDIR) = x; then \
+ package_dir=`$(EXAMINE_PACKAGEDIR)`; \
+ else \
+ package_dir="$(PACKAGEDIR)"; \
+ fi; \
+ echo "cd texi && $(MAKE) EMACS=$(XEMACS)" \
+ "infodir=$$package_dir""/info install-ja-info"; \
+ cd texi && $(MAKE) EMACS="$(XEMACS)" \
+ infodir="$$package_dir""/info" install-ja-info
+
+install-package-manifest:
+ @if test x$(PACKAGEDIR) = x; then \
+ package_dir=`$(EXAMINE_PACKAGEDIR)`; \
+ else \
+ package_dir="$(PACKAGEDIR)"; \
+ fi; \
+ echo "cd lisp && $(MAKE) EMACS=$(XEMACS) PACKAGEDIR=$$package_dir" \
+ "install-package-manifest"; \
+ cd lisp && $(MAKE) EMACS="$(XEMACS)" PACKAGEDIR=$$package_dir \
+ install-package-manifest
+
+remove-extra-files-in-package:
+ @if test x$(PACKAGEDIR) = x; then \
+ package_dir=`$(EXAMINE_PACKAGEDIR)`; \
+ else \
+ package_dir="$(PACKAGEDIR)"; \
+ fi; \
+ echo "cd lisp && $(MAKE) EMACS=$(XEMACS) PACKAGEDIR=$$package_dir" \
+ "remove-extra-files-in-package"; \
+ cd lisp && $(MAKE) EMACS="$(XEMACS)" PACKAGEDIR=$$package_dir \
+ remove-extra-files-in-package
+
+compose-package:
+ cd lisp && $(MAKE) EMACS="$(XEMACS)" compose-package
+##
xlick:
cd lisp && $(MAKE) EMACS="$(XEMACS)" lispdir="$(lispdir)" all