diff Makefile.in.in @ 398:74fd4e045ea6 r21-2-29

Import from CVS: tag r21-2-29
author cvs
date Mon, 13 Aug 2007 11:13:30 +0200
parents 6719134a07c2
children 2f8bb876ab1d
line wrap: on
line diff
--- a/Makefile.in.in	Mon Aug 13 11:12:06 2007 +0200
+++ b/Makefile.in.in	Mon Aug 13 11:13:30 2007 +0200
@@ -49,6 +49,9 @@
 ## make extraclean
 ##      Still more severe - delete backup and autosave files, too.
 
+#define NOT_C_CODE
+#include "src/config.h"
+
 #ifdef USE_GNU_MAKE
 RECURSIVE_MAKE=$(MAKE)
 #else
@@ -60,7 +63,9 @@
 LANG = C
 LC_ALL = C
 RM = rm -f
+MAKEPATH=./lib-src/make-path
 pwd = /bin/pwd
+TAR = tar
 
 ## ==================== Things `configure' Might Edit ====================
 
@@ -93,6 +98,14 @@
 ## not need to change them.  This defaults to /usr/local.
 prefix=@prefix@
 
+## Variable data (as per each program update) goes here
+## The default is ${PROGNAME}
+inststaticdir=@inststaticdir@
+
+## Static data (constant across program updates) goes here
+## The default is ${PROGNAME}-${version}
+instvardir=@instvardir@
+
 ## Like `prefix', but used for architecture-specific files.
 exec_prefix=@exec_prefix@
 
@@ -191,6 +204,9 @@
 ## currently being edited.
 lockdir=@lockdir@
 
+## Where to put the DOC file.
+docdir=@docdir@
+
 ## Where to put executables to be run by XEmacs rather than
 ## the user.  This path usually includes the XEmacs version
 ## and configuration name, so that multiple configurations
@@ -213,7 +229,10 @@
 MAKE_SUBDIR = @MAKE_SUBDIR@
 
 ## Subdirectories that can be made recursively.
-SUBDIR = ${MAKE_SUBDIR} man
+SUBDIR = ${MAKE_SUBDIR} man  
+
+## Subdirectories that must be cleaned on distclean
+SUBDIR_DISTCLEAN = ${SUBDIR} modules/sample modules/ldap modules/zlib modules/base64
 
 ## The makefiles of the directories in ${MAKE_SUBDIR}.
 SUBDIR_MAKEFILES = @SUBDIR_MAKEFILES@
@@ -228,7 +247,7 @@
 ## instead, we have written out explicit code in the `install' targets.
 COPYDIR = ${srcdir}/etc ${srcdir}/lisp
 COPYDESTS = ${etcdir} ${lispdir}
-GENERATED_HEADERS = src/paths.h src/Emacs.ad.h src/puresize-adjust.h src/config.h lwlib/config.h src/sheap-adjust.h
+GENERATED_HEADERS = src/paths.h src/Emacs.ad.h src/config.h lwlib/config.h src/sheap-adjust.h
 GENERATED_LISP = lisp/finder-inf.el
 
 all: ${PROGNAME} all-elc info
@@ -242,7 +261,7 @@
 .PHONY: ${SUBDIR} all beta all-elc all-elcs dump-elc dump-elcs autoloads finder
 
 ## Convenience target for XEmacs beta testers
-beta: clean all-elc finder
+beta: clean all-elc finder info
 
 ## Convenience target for XEmacs maintainers
 ## This would run `make-xemacsdist' if I were really confident that everything
@@ -256,30 +275,31 @@
 ## - src/depend from src/*.[ch]
 .PHONY: config configure depend
 config: configure depend
-configure: ${srcdir}/configure
-${srcdir}/configure: ${srcdir}/configure.in
+configure: ${srcdir}/configure ${srcdir}/lib-src/config.values.in
+
+${srcdir}/configure : ${srcdir}/configure.in
 	cd ${srcdir} && autoconf
-	cd ${srcdir} && /bin/sh lib-src/config.values.sh
 
-depend ${srcdir}/src/depend:
-	cd ${srcdir}/src && \
-		perl ./make-src-depend > depend.tmp && \
-		$(RM) depend && mv depend.tmp depend
+${srcdir}/lib-src/config.values.in : ${srcdir}/configure
+	cd ${srcdir} && $(SHELL) lib-src/config.values.sh
+
+depend ${srcdir}/src/depend :
+	cd ${srcdir}/src && $(RECURSIVE_MAKE) depend
 
 ## Build XEmacs and recompile out-of-date and missing .elc files along
 ## the way.
 all-elc all-elcs: lib-src lwlib dump-elcs src
-	MAKE='$(MAKE)' EMACS='./src/$(PROGNAME)' sh ${srcdir}/lib-src/update-elc.sh
+	MAKE='$(MAKE)' EMACS='./src/$(PROGNAME)' $(SHELL) ${srcdir}/lib-src/update-elc.sh
 
 ## Sub-target for all-elc.
 dump-elc dump-elcs: ${GENERATED_HEADERS} FRC.dump-elcs
 	cd ./src && $(RECURSIVE_MAKE) dump-elcs
 
 autoloads: src
-	MAKE='$(MAKE)' EMACS='./src/$(PROGNAME)' sh ${srcdir}/lib-src/update-autoloads.sh
+	MAKE='$(MAKE)' EMACS='./src/$(PROGNAME)' $(SHELL) ${srcdir}/lib-src/update-autoloads.sh
 
 custom-loads:
-	MAKE='$(MAKE)' EMACS='./src/$(PROGNAME)' sh ${srcdir}/lib-src/update-custom.sh
+	MAKE='$(MAKE)' EMACS='./src/$(PROGNAME)' $(SHELL) ${srcdir}/lib-src/update-custom.sh
 
 finder: src
 	@echo "Building finder database ..."
@@ -306,15 +326,9 @@
 	@(echo "/*	Do not edit this file!" ; \
 	  echo "  	Automatically generated from ${srcdir}/etc/Emacs.ad" ; \
 	  echo " */" ; \
-	  /bin/sh ${srcdir}/lib-src/ad2c ${srcdir}/etc/Emacs.ad ) > \
+	  $(SHELL) ${srcdir}/lib-src/ad2c ${srcdir}/etc/Emacs.ad ) > \
 	  src/Emacs.ad.h
 
-src/puresize-adjust.h:	${srcdir}/src/puresize.h
-	@echo "Resetting \`src/puresize-adjust.h'."; \
-	(echo "/*	Do not edit this file!" ; \
-	 echo "  	Automatically generated by XEmacs */" ; \
-	 echo "#define PURESIZE_ADJUSTMENT 0") > $@
-
 src/sheap-adjust.h:
 	@echo "Resetting \`src/sheap-adjust.h'."; \
 	(echo "/*	Do not edit this file!" ; \
@@ -399,21 +413,30 @@
 	   if test -f ../Installation; then \
 		${INSTALL_DATA} ../Installation ${archlibdir}/Installation; \
 	   fi; \
-	   for f in DOC config.values; do \
-		${INSTALL_DATA} lib-src/$${f} ${archlibdir}/$${f}; \
-	   done ; \
+	   ${INSTALL_DATA} lib-src/config.values ${docdir}/config.values; \
+	   ${INSTALL_DATA} lib-src/DOC ${docdir}/DOC; \
 	   for subdir in `find ${archlibdir} -type d ! -name RCS ! -name SCCS ! -name CVS -print` ; \
 	     do (cd $${subdir} && $(RM) -r RCS CVS SCCS \#* *~) ; done ; \
 	else true; fi
+#ifdef WINDOWSNT
+	${INSTALL_PROGRAM} src/${PROGNAME} ${bindir}/${PROGNAME}
+	-chmod 0755 ${bindir}/${PROGNAME}
+#else
 	${INSTALL_PROGRAM} src/${PROGNAME} ${bindir}/${PROGNAME}-${version}
 	-chmod 0755 ${bindir}/${PROGNAME}-${version}
+# ifdef __CYGWIN32__
+	cd ${bindir} && $(RM) ./${PROGNAME} && ${LN_S} ${PROGNAME}-${version}.exe ./${PROGNAME}
+# else
 	cd ${bindir} && $(RM) ./${PROGNAME} && ${LN_S} ${PROGNAME}-${version} ./${PROGNAME}
+# endif /* __CYGWIN32__ */
+#endif /* WINDOWSNT */
 	if test "${prefix}" != "${exec_prefix}"; then \
+	  $(MAKEPATH) ${exec_prefix}/lib/${instvardir}; \
 	  for dir in \
-		lib/${PROGNAME} \
-	 	lib/${PROGNAME}-${version}/etc \
-		lib/${PROGNAME}-${version}/info \
-		lib/${PROGNAME}-${version}/lisp; do \
+		lib/${inststaticdir} \
+	 	lib/${instvardir}/etc \
+		lib/${instvardir}/info \
+		lib/${instvardir}/lisp; do \
 	    if test ! -d ${exec_prefix}/$${dir}; then \
 	      $(LN_S) ${prefix}/$${dir} ${exec_prefix}/$${dir}; fi; \
 	  done; \
@@ -438,8 +461,8 @@
 	     -a "`(cd $${dir} && $(pwd))`" != \
 		"`(cd $${dest} && $(pwd))`" \
 	   && (echo "Copying $${dir}..." ; \
-	       (cd $${dir} && tar -cf - . ) | \
-		(cd $${dest} && umask 022 && tar -xf - );\
+	       (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 \
 		 (cd $${subdir} && $(RM) -r RCS CVS SCCS \#* *~) ; \
@@ -455,7 +478,6 @@
 	    chmod 0644 ${infodir}/$${file}; \
 	  done ; \
 	fi
-	## Note it's `xemacs' not ${PROGNAME}
 	cd ${srcdir}/etc && \
 	  for page in xemacs etags ctags gnuserv gnuclient gnuattach gnudoit; do \
 	    ${INSTALL_DATA} ${srcdir}/etc/$${page}.1 ${mandir}/$${page}${manext} ; \
@@ -469,15 +491,14 @@
 	@echo "${lispdir}"
 
 gzip-el:
-	${srcdir}/lib-src/gzip-el.sh ${lispdir}
+	$(SHELL) ${srcdir}/lib-src/gzip-el.sh ${lispdir}
 
-MAKEPATH=./lib-src/make-path
 ## Build all the directories to install XEmacs in.
 ## Since we may be creating several layers of directories,
 ## (e.g. /usr/local/lib/${PROGNAME}-20.5/sparc-sun-solaris2.6), we use
 ## make-path instead of mkdir.  Not all mkdirs have the `-p' flag.
 mkdir: FRC.mkdir
-	${MAKEPATH} ${COPYDESTS} ${lockdir} ${infodir} ${archlibdir} \
+	${MAKEPATH} ${COPYDESTS} ${lockdir} ${docdir} ${infodir} ${archlibdir} \
 	  ${mandir} ${bindir} ${datadir} ${libdir} ${pkgdir} \
 	  ${sitelispdir} ${moduledir} ${sitemoduledir}
 	-chmod 0777 ${lockdir}
@@ -549,10 +570,10 @@
 	$(RM) config.status config.log confdefs.h config-tmp-* build-install Installation ; \
 	$(RM) core .sbinit lock/* GNUmakefile Makefile Makefile.in ; \
 	$(RM) lisp/finder-inf.el* Installation.el Installation.elc ; \
-	$(RM) packages mule-packages site-lisp
+	$(RM) -r site-packages xemacs-packages mule-packages site-lisp
 
 distclean: FRC.distclean
-	for d in $(SUBDIR); do (cd ./$$d && $(RECURSIVE_MAKE) $@); done
+	for d in $(SUBDIR_DISTCLEAN); do (cd ./$$d && $(RECURSIVE_MAKE) $@); done
 	-${top_distclean}
 
 ## `realclean'