1. xemacs
  2. XEmacs

Source

XEmacs / Makefile.in

Diff from to

File Makefile.in

  • Ignore whitespace
 # DIST: make most of the changes to this file you might want, so try
 # DIST: that first.
 
+# 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.
+
 # make all	to compile and build XEmacs.
 # make install	to install it.
 # make TAGS	to update tags tables.
 ### to install files in.
 
 ### This should be the number of the XEmacs version we're building,
-### like `19.13' or `19.14'.
+### like `19.12' or `19.13'.
 version=@version@
 
 ### This should be the name of the configuration we're building XEmacs
 all:	src/paths.h src/Emacs.ad.h ${MAKE_SUBDIR}
 
 # Convenience target for XEmacs beta testers
-beta:		clean all-elc
+beta:	clean all-elc
 
 # Build XEmacs and recompile out-of-date and missing .elc files along
 # the way.
-all-elc:	src/paths.h src/Emacs.ad.h lib-src lwlib dump-elcs src
-	MAKE='$(MAKE)' sh ${srcdir}/lib-src/update-elc.sh
+all-elc all-elcs:  src/paths.h src/Emacs.ad.h lib-src lwlib dump-elcs src
+	sh ${srcdir}/lib-src/update-elc.sh
 
 # Sub-target for all-elc.
-dump-elcs:	FRC.dump-elcs
+dump-elc dump-elcs:  FRC.dump-elcs
 	cd src; $(MAKE) dump-elcs $(MFLAGS) \
 		CC='${CC}' CFLAGS='${CFLAGS}' MAKE='${MAKE}'
 
 autoloads:	src
-	MAKE='$(MAKE)' sh ${srcdir}/lib-src/update-autoloads.sh
+	sh ${srcdir}/lib-src/update-autoloads.sh
 
 # We force the rebuilding of src/paths.h because the user might give
 # different values for the various directories.  Since we use
 
 .RECURSIVE: ${SUBDIR}
 
-${SUBDIR}: ${SUBDIR_MAKEFILES} src/config.h src/puresize_adjust.h FRC
+${SUBDIR}: ${SUBDIR_MAKEFILES} src/config.h FRC
 	cd $@; $(MAKE) all $(MFLAGS) \
 		CC='${CC}' CFLAGS='${CFLAGS}' MAKE='${MAKE}'
 
 src/config.h: ${srcdir}/src/config.h.in
 	./config.status
 
-src/puresize_adjust.h:	${srcdir}/src/puresize.h
-	@echo "Resetting \`src/puresize_adjust.h'."
-	@echo '/* This file is generated by XEmacs, DO NOT MODIFY!!! */' > src/puresize_adjust.h
-	@echo '#define PURESIZE_ADJUSTMENT 0' >> src/puresize_adjust.h
-
-
 # ==================== Installation ====================
 
 ## If we let lib-src do its own installation, that means we
 install: all install-arch-dep install-arch-indep;
 
 install-arch-dep: mkdir
-	(cd lib-src; \
+	(cd lib-src && \
 	  $(MAKE) install $(MFLAGS) prefix=${prefix} \
 	    exec_prefix=${exec_prefix} bindir=${bindir} libdir=${libdir} \
 	    archlibdir=${archlibdir})
 	if [ `(cd ${archlibdir}; /bin/pwd)` != `(cd ./lib-src; /bin/pwd)` ]; \
 	then \
-	   echo "Copying lib-src/DOC-* ..." ; \
-	   (cd ./lib-src; tar -cf - DOC-*)|(cd ${archlibdir}; umask 0; tar -xf - ); \
+	   ${INSTALL_DATA} lib-src/DOC ${archlibdir}/DOC ; \
 	   for subdir in `find ${archlibdir} -type d ! -name RCS ! -name SCCS ! -name CVS -print` ; do \
-	     rm -rf $${subdir}/RCS ; \
-	     rm -rf $${subdir}/CVS ; \
-	     rm -rf $${subdir}/SCCS ; \
-	     rm -f  $${subdir}/\#* ; \
-	     rm -f  $${subdir}/*~ ; \
+	     rm -rf $${subdir}/RCS $${subdir}/CVS $${subdir}/SCCS ; \
+	     rm -f  $${subdir}/\#* $${subdir}/*~ ; \
 	   done ; \
 	else true; fi
 	${INSTALL_PROGRAM} src/xemacs ${bindir}/xemacs-${version}
 	       (cd $${dir}; tar -cf - . )|(cd $${dest};umask 022; tar -xf - );\
 	       chmod 0755 $${dest}; \
 	       for subdir in `find $${dest} -type d ! -name RCS ! -name SCCS ! -name CVS -print` ; do \
-		 rm -rf $${subdir}/RCS ; \
-		 rm -rf $${subdir}/CVS ; \
-		 rm -rf $${subdir}/SCCS ; \
-		 rm -f  $${subdir}/\#* ; \
-		 rm -f  $${subdir}/*~ ; \
+		 rm -rf $${subdir}/RCS $${subdir}/CVS $${subdir}/SCCS ; \
+		 rm -f  $${subdir}/\#* $${subdir}/*~ ; \
 	       done) ; \
 	 done
 	if [ `(cd ${srcdir}/info && /bin/pwd)` != `(cd ${infodir} && /bin/pwd)` ]; \
 	   if [ ! -f ${infodir}/dir ] && [ -f dir ]; then \
 	     ${INSTALL_DATA} ${srcdir}/info/dir ${infodir}/dir ; \
 	   fi ; \
-	   for f in *.info* ; do \
+	   for f in ange-ftp* cc-mode* cl* dired* ediff* external-widget* \
+		    forms* gnus* hyperbole* ilisp* info* internals* \
+		    ispell* lispref* mailcrypt* message* mh-e* \
+                    new-users-guide* oo-browser* pcl-cvs* psgml* rmail* \
+                    standards* supercite* term.* termcap* texinfo* viper* \
+                    vm* w3* xemacs* ; do \
 	     ${INSTALL_DATA} ${srcdir}/info/$$f ${infodir}/$$f ; \
 	     chmod 0644 ${infodir}/$$f; \
-	     gzip -f9 ${infodir}/$$f; \
 	   done); \
 	else true; fi
 	cd ${srcdir}/etc; for page in xemacs etags ctags gnuserv \
 	  ${INSTALL_DATA} ${srcdir}/etc/$${page}.1 ${mandir}/$${page}${manext} ; \
 	  chmod 0644 ${mandir}/$${page}${manext} ; \
 	done
-	@echo "If you would like to save approximately 15M of disk space, do"
-	@echo "make gzip-el"
-	@echo "or you may run"
-	@echo lib-src/gzip-el.sh lispdir " from the command line."
-	@echo "Where lispdir is where the lisp files were installed, i.e.,"
-	@echo "${lispdir}"
-
-gzip-el:
-	lib-src/gzip-el.sh ${lispdir}
 
 MAKEPATH=./lib-src/make-path
 ### Build all the directories we're going to install XEmacs in.	Since
 ### we may be creating several layers of directories (for example,
-### /usr/local/lib/xemacs-19.14/mips-dec-ultrix4.2), we use make-path
+### /usr/local/lib/xemacs-19.13/mips-dec-ultrix4.2), we use make-path
 ### instead of mkdir.  Not all systems' mkdirs have the `-p' flag.
 mkdir: FRC.mkdir
 	${MAKEPATH} ${COPYDESTS} ${lockdir} ${infodir} ${mandir} \
 	(cd lock && rm -f *)
 
 distclean: FRC.distclean
-	-([ ! -d lock ] && mkdir lock)
-	-([ ! -d site-lisp ] && mkdir site-lisp)
 	(cd src      && $(MAKE) $(MFLAGS) distclean)
 	(cd lib-src  && $(MAKE) $(MFLAGS) distclean)
 	(cd lwlib    && $(MAKE) $(MFLAGS) distclean)
 
 TAGS tags:
 	@echo "If you don't have a copy of etags around, then do 'make lib-src' first."
-	@PATH=`pwd`/lib-src:$$PATH ; echo "Using etags from `which etags`."
-	PATH=`pwd`/lib-src:$$PATH ; cd ${srcdir} ; \
-	etags --regex='| /[ 	]*DEFVAR_[A-Z_ 	(]+"\([^\"]+\)"/|' src/*.[ch] ; \
-	for d in `find lisp -name SCCS -prune -o -name RCS -prune -o -type d -print` ; do (cd $$d ; if [ "`echo *.el`" != "*.el" ] ; then etags -a -o ${srcdir}/TAGS *.el ; fi ) ; done ; \
+	@PATH=`pwd`/lib-src:$$PATH HOME=/-=-; export PATH HOME; \
+	  echo "Using etags from `which etags`."
+	PATH=`pwd`/lib-src:$$PATH ; export PATH; cd ${srcdir} ; \
+	etags --regex='/[ 	]*DEF\(VAR\|INE\)_[A-Z_]+[ 	]*([ 	]*"\([^"]+\)"/\2/' src/*.[ch] ; \
+	for d in `find lisp -name SCCS -prune -o -name RCS -prune -o -type d -print` ; do \
+	  (cd $$d ; if [ "`echo *.el`" != "*.el" ] ; then etags -a -o ${srcdir}/TAGS *.el ; fi ) ; \
+	done ; \
 	etags -a lwlib/*.[ch]
 
 check:
-	@echo "We don't have any tests for XEmacs yet."
+	@echo "We don't have any automated tests for XEmacs yet."
 
 dist:
 	cd ${srcdir} && make-dist
 .PHONY: info dvi
 force-info:
 info: force-info
-	(cd ${srcdir}/man && $(MAKE) $(MFLAGS) info)
+	cd ${srcdir}/man && $(MAKE) $(MFLAGS) $@
+dvi:
+	cd ${srcdir}/man && $(MAKE) $(MFLAGS) $@
 
-dvi:
-	(cd ${srcdir}/man && $(MAKE) $(MFLAGS) dvi)
+# Fix up version information in executables (Solaris-only)
+mcs:
+	date=`LANG=C LC_ALL=C date -u '+%e %b %Y'`; \
+	ident="@(#)RELEASE VERSION XEmacs ${version} $${date}"; \
+	for f in `file lib-src/* src/xemacs | grep ELF | sed -e 's/:.*//'`; do \
+	  mcs -da "$${ident} `echo $${f} | sed 's/.*\///'`" $${f}; \
+	done