head	1.1;
access;
symbols;
locks; strict;
comment	@# @;


1.1
date	2003.07.31.17.37.20;	author shige;	state Exp;
branches;
next	;


desc
@@


1.1
log
@Add elisp/emacsen ports in the ports tree @@ 2003/07/31
@
text
@$FreeBSD$
--- Makefile.orig	Wed Oct 20 20:20:51 1999
+++ Makefile	Tue Jul 10 23:35:24 2001
@@@@ -19,8 +19,8 @@@@
 ## EDIT THE FOLLOWINGS
 ##
 
-PREFIX = /usr/local
-INFODIR = $(PREFIX)/info
+PREFIX?= /usr/local
+INFODIR= $(PREFIX)/info
 
 ##
 ## Compile engines
@@@@ -30,10 +30,10 @@@@
 CFLAGS = -O
 
 #EMACS = emacs
-EMACS = xemacs
+EMACS=	${EMACS_CMD}
 #EMACS = mule
 
-PERL=`which perl`
+PERL?=`which perl`
 #PERL=/usr/local/bin/perl
 
 ##
@@@@ -46,7 +46,7 @@@@
 ## A directory where mew*.el[c] will be installed.
 ##
 
-ELISPDIR  = $(PREFIX)/lib/$(EMACS)/site-lisp
+ELISPDIR= ${PREFIX}/${EMACS_LIBDIR}/site-lisp/mew
 #ELISPDIR = $(PREFIX)/share/emacs/site-lisp
 #ELISPDIR = $(PREFIX)/lib/emacs
 
@@@@ -54,7 +54,10 @@@@
 ## A directory where etc file will be installed.
 ##
 
-ETCDIR = $(PREFIX)/lib/$(EMACS)/etc/Mew
+ETCDIR=	${PREFIX}/${EMACS_LIBDIR}/etc/mew
+
+# For XEmacs packages
+XPKGDIR=	${PREFIX}/${EMACS_PACKAGESDIR}
 
 ################################################################
 ##
@@@@ -72,6 +75,8 @@@@
 	mew-virtual.elc  mew-highlight.elc mew-vars.elc  \
 	mew-addrbook.elc mew.elc
 
+OBJS_PKG=	 auto-autoloads.elc custom-load.elc
+
 SRCS =  mew-attach.el   mew-bq.el      mew-cache.el   \
 	mew-complete.el mew-decode.el  mew-demo.el    \
 	mew-draft.el    mew-encode.el  mew-env.el     \
@@@@ -88,6 +93,8 @@@@
 	mew-temacs.el   mew-xemacs.el  mew-addrbook.el \
 	mew.el
 
+SRCS_PKG=	auto-autoloads.el custom-load.el
+
 TEMPFILE = temp.el
 
 CP = cp
@@@@ -96,14 +103,14 @@@@
 BIN = bin
 
 all: $(OBJS)
+
+$(OBJS): $(TEMPFILE) mew.el
 	@@echo 'Compiling EL files of Mew ... '
 	@@echo 'PLEASE IGNORE WARNINGS IF DISPLAYED. TAKE IT EASY!'
 	$(EMACS) -batch -q -no-site-file -l ./$(TEMPFILE) -f mew-compile
 	cd $(BIN); $(MAKE) CFLAGS="$(CFLAGS)" CC="$(CC)" PERL="$(PERL)"
 	@@echo 'Compiling EL files of Mew ... done'
 
-$(OBJS): $(TEMPFILE) mew.el
-
 $(TEMPFILE):
 	@@echo '(setq load-path (cons "." load-path))' > $(TEMPFILE)
 	@@echo '(defun mew-compile () (mapcar (function (lambda (x) (byte-compile-file x))) (list ' >> $(TEMPFILE)
@@@@ -111,11 +118,11 @@@@
 	@@echo ')))' >> $(TEMPFILE)
 
 install: $(OBJS)
-	-@@if [ ! -d $(ELISPDIR) ]; then \
+	if [ ! -d $(ELISPDIR) ]; then \
 		$(MKDIR) $(ELISPDIR); \
-	fi; \
-	$(CP) $(SRCS) $(ELISPDIR)
-	$(CP) $(OBJS) $(ELISPDIR)
+	fi
+	${BSD_INSTALL_DATA} $(SRCS) $(ELISPDIR)
+	${BSD_INSTALL_DATA} $(OBJS) $(ELISPDIR)
 	cd $(BIN); $(MAKE) install CFLAGS="$(CFLAGS)" CC="$(CC)" BINDIR="$(BINDIR)"
 
 clean:
@@@@ -126,19 +133,69 @@@@
 	cd info; $(MAKE) info EMACS=$(EMACS)
 
 install-info:
-	cd info; $(MAKE) install-info INFODIR=$(INFODIR)
+	${MKDIR} ${INFODIR}
+	cd info; $(MAKE) install-info INFODIR=$(INFODIR) \
+		XEMACS_VER_OVER20="${XEMACS_VER_OVER20}"
 
 jinfo::
 	cd info; $(MAKE) jinfo EMACS=$(EMACS)
 
 install-jinfo:
-	cd info; $(MAKE) install-jinfo INFODIR=$(INFODIR)
+	${MKDIR} ${INFODIR}
+	cd info; $(MAKE) install-jinfo INFODIR=$(INFODIR) \
+		XEMACS_VER_OVER20="${XEMACS_VER_OVER20}"
+
+install-man:
+	${MKDIR} ${MANDIR}
+	cd info; $(MAKE) install-man MANDIR=$(MANDIR)
 
 install-etc:
-	-@@if [ ! -d $(ETCDIR) ]; then \
+	if [ ! -d $(ETCDIR) ]; then \
 		$(MKDIR) $(ETCDIR); \
 	fi; \
-	cd etc; $(CP) -r * $(ETCDIR)/
+	cd etc; $(CP) -R * $(ETCDIR)/
+
+package: ${OBJS} ${OBJS_PKG}
+
+${OBJS_PKG}: ${SRCS_PKG}
+	${EMACS} -vanilla -batch -eval "(push \"./\" load-path)" -l bytecomp \
+		-f batch-byte-compile ${.ALLSRC}
+
+auto-autoloads.el : ${OBJS} _pkg.el
+	${EMACS} -vanilla -batch \
+		-eval "(setq autoload-package-name \"${XEMACS_PKGNAME}\")" \
+		-l autoload -f batch-update-directory .
+	${RM} -f auto-autoloads.el~
+
+custom-load.el : ${OBJS}
+	${EMACS} -vanilla -batch -l cus-dep -f Custom-make-dependencies .
+	if [ ! -f ${.TARGET} ]; then \
+		touch ${.TARGET}; \
+	fi
+
+_pkg.el:
+	@@echo Creating _pkg.el
+	@@echo ";;;###autoload" 				>  _pkg.el
+	@@echo "(package-provide '${XEMACS_PKGNAME}" 	>> _pkg.el
+	@@echo "		 :version $(XEMACS_PKGVER)"	>> _pkg.el
+	@@echo "		 :type 'regular)" 		>> _pkg.el
+
+install-package:
+	${MKDIR} ${XPKGDIR}/pkginfo
+	${MAKE} ELISPDIR=${XPKGDIR}/lisp/mew  	install
+	${BSD_INSTALL_DATA} _pkg.el ${OBJS_PKG} ${SRCS_PKG} ${XPKGDIR}/lisp/mew
+	${MAKE} INFODIR=${XPKGDIR}/info XEMACS_VER_OVER20="yes" \
+						install-info
+	${MAKE} MANDIR=${XPKGDIR}/man/mew    	install-man
+	${MAKE} ETCDIR=${XPKGDIR}/etc/mew    	install-etc
+	(cd ${XPKGDIR}; \
+		ls -d1 lisp/mew/* info/mew.* man/mew/* etc/mew/* \
+			> ${XPKGDIR}/pkginfo/MANIFEST.mew)
+	${ECHO} "pkginfo/MANIFEST.mew" >> ${XPKGDIR}/pkginfo/MANIFEST.mew
+
+install-mule-package: install-package
+	${MAKE} INFODIR=${XPKGDIR}/info XEMACS_VER_OVER20="yes" \
+						install-jinfo
 
 ##
 ## End of Makefile
@
