diff --git a/libio/ChangeLog b/libio/ChangeLog index 36928ba66cd..159d3c13342 100644 --- a/libio/ChangeLog +++ b/libio/ChangeLog @@ -1,3 +1,13 @@ +Tue Jan 27 23:26:07 1998 Manfred Hollstein + + * config.shared: Emit everything which needs to be re-definable + via file descriptor 1; the generic stuff is emitted using redirection + onto fd 2. + + * configure.in (package_makefile_rules_frag): New variable + which is used in the call to config.shared; redirect file descriptor 2 + to ${package_makefile_rules_frag}. + Tue Jan 27 10:35:22 1998 H.J. Lu (hjl@gnu.org) * configure.in (topsrcdir): New. diff --git a/libio/config.shared b/libio/config.shared index 4a3f9a351c4..41b273f19d5 100644 --- a/libio/config.shared +++ b/libio/config.shared @@ -1,4 +1,4 @@ -# Copyright (C) 1993, 1995, 1997 Free Software Foundation +# Copyright (C) 1993, 1995, 1997, 1998 Free Software Foundation # # This file is part of the GNU IO Library. This library is free # software; you can redistribute it and/or modify it under the @@ -15,6 +15,10 @@ # along with GNU CC; see the file COPYING. If not, write to # the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA. +# File descriptor usage: +# 1: All macros which need to be re-definable by any target fragments +# 2: All generic rules; especially those which use re-defined macros, e.g. _G_CONFIG_H! + # Significant variables: # Note that TO_TOPDIR does *not* include multilib. @@ -33,6 +37,8 @@ THIS_FILE="${srcdir}/${TOLIBGXX}config.shared" echo "# Start of package fragment generated by ${THIS_FILE}." echo "" +echo >&2 "# Start of package rules fragment generated by ${THIS_FILE}." +echo >&2 "" # Multilib support. echo 'MULTISRCTOP =' @@ -175,107 +181,107 @@ fi ALL='$(PICDIR)'" ${ALL}" -echo "all: ${ALL} multi-all" +echo >&2 "all: ${ALL} multi-all" if [ "${SUBDIRS}" != "" ] ; then - echo ' @rootme=`pwd`/; export rootme; \' - echo ' $(MAKE) "DODIRS=$(SUBDIRS)" DO=all $(FLAGS_TO_PASS) subdir_do' + echo >&2 ' @rootme=`pwd`/; export rootme; \' + echo >&2 ' $(MAKE) "DODIRS=$(SUBDIRS)" DO=all $(FLAGS_TO_PASS) subdir_do' fi -echo '.PHONY: all' -echo '' +echo >&2 '.PHONY: all' +echo >&2 '' -echo '.PHONY: multi-all' -echo 'multi-all:' -echo ' @$(MULTIDO) $(FLAGS_TO_PASS) multi-do DO=all' -echo '' +echo >&2 '.PHONY: multi-all' +echo >&2 'multi-all:' +echo >&2 ' @$(MULTIDO) $(FLAGS_TO_PASS) multi-do DO=all' +echo >&2 '' -echo +echo >&2 if [ "${SUBDIRS}" != "" ] ; then - echo '.PHONY: subdir_do' - echo 'subdir_do: force' - echo ' @rootme=`pwd`/; export rootme; \' - echo ' for i in $(DODIRS); do \' - echo ' if [ -f ./$$i/Makefile ] ; then \' - echo ' echo "cd $$i; make $(DO) ..." ; \' - echo ' (cd $$i ; $(MAKE) $(FLAGS_TO_PASS) $(DO)) || exit 1 ; \' - echo ' else true ; fi ; \' - echo ' done' - echo '' - echo '# List of variables to pass to sub-makes. This should not be needed' - echo '# by GNU make or Sun make (both of which pass command-line variable' - echo '# overrides thouh $(MAKE)) but may be needed by older versions.' - echo '' - echo 'FLAGS_TO_PASS= \' - echo ' "SHELL=$(SHELL)" \' - echo ' "INSTALL=$(INSTALL)" \' - echo ' "INSTALL_DATA=$(INSTALL_DATA)" \' - echo ' "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \' - echo ' "prefix=$(prefix)" \' - echo ' "exec_prefix=$(exec_prefix)" \' - echo ' "tooldir=$(tooldir)" \' - echo ' "AR=$(AR)" \' - echo ' "AR_FLAGS=$(AR_FLAGS)" \' - echo ' "CC=$(CC)" \' - echo ' "CXX=$(CXX)" \' - echo ' "CFLAGS=$(CFLAGS)" \' - echo ' "CXXFLAGS=$(CXXFLAGS)" \' - echo ' "NM=$(NM)" \' - echo ' "RANLIB=$(RANLIB)" \' - echo ' "LIBCFLAGS=$(LIBCFLAGS)" \' - echo ' "LIBCXXFLAGS=$(LIBCXXFLAGS)" \' - echo ' "LOADLIBES=$(LOADLIBES)" \' - echo ' "LDFLAGS=$(LDFLAGS)" \' - echo ' "MAKEINFO=$(MAKEINFO)" \' - echo ' "SHLIB=$(SHLIB)" \' - echo ' "SHCURSES=$(SHCURSES)" \' - echo ' "PICFLAG=$(PICFLAG)" \' - echo ' "RUNTESTFLAGS=$(RUNTESTFLAGS)"' + echo >&2 '.PHONY: subdir_do' + echo >&2 'subdir_do: force' + echo >&2 ' @rootme=`pwd`/; export rootme; \' + echo >&2 ' for i in $(DODIRS); do \' + echo >&2 ' if [ -f ./$$i/Makefile ] ; then \' + echo >&2 ' echo "cd $$i; make $(DO) ..." ; \' + echo >&2 ' (cd $$i ; $(MAKE) $(FLAGS_TO_PASS) $(DO)) || exit 1 ; \' + echo >&2 ' else true ; fi ; \' + echo >&2 ' done' + echo >&2 '' + echo >&2 '# List of variables to pass to sub-makes. This should not be needed' + echo >&2 '# by GNU make or Sun make (both of which pass command-line variable' + echo >&2 '# overrides thouh $(MAKE)) but may be needed by older versions.' + echo >&2 '' + echo >&2 'FLAGS_TO_PASS= \' + echo >&2 ' "SHELL=$(SHELL)" \' + echo >&2 ' "INSTALL=$(INSTALL)" \' + echo >&2 ' "INSTALL_DATA=$(INSTALL_DATA)" \' + echo >&2 ' "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \' + echo >&2 ' "prefix=$(prefix)" \' + echo >&2 ' "exec_prefix=$(exec_prefix)" \' + echo >&2 ' "tooldir=$(tooldir)" \' + echo >&2 ' "AR=$(AR)" \' + echo >&2 ' "AR_FLAGS=$(AR_FLAGS)" \' + echo >&2 ' "CC=$(CC)" \' + echo >&2 ' "CXX=$(CXX)" \' + echo >&2 ' "CFLAGS=$(CFLAGS)" \' + echo >&2 ' "CXXFLAGS=$(CXXFLAGS)" \' + echo >&2 ' "NM=$(NM)" \' + echo >&2 ' "RANLIB=$(RANLIB)" \' + echo >&2 ' "LIBCFLAGS=$(LIBCFLAGS)" \' + echo >&2 ' "LIBCXXFLAGS=$(LIBCXXFLAGS)" \' + echo >&2 ' "LOADLIBES=$(LOADLIBES)" \' + echo >&2 ' "LDFLAGS=$(LDFLAGS)" \' + echo >&2 ' "MAKEINFO=$(MAKEINFO)" \' + echo >&2 ' "SHLIB=$(SHLIB)" \' + echo >&2 ' "SHCURSES=$(SHCURSES)" \' + echo >&2 ' "PICFLAG=$(PICFLAG)" \' + echo >&2 ' "RUNTESTFLAGS=$(RUNTESTFLAGS)"' fi -echo 'NOSTDINC = -nostdinc++' +echo >&2 'NOSTDINC = -nostdinc++' if test -n "${XCXXINCLUDES}" ; then - echo "CXXINCLUDES = ${XCXXINCLUDES} "'$(NOSTDINC)' + echo >&2 "CXXINCLUDES = ${XCXXINCLUDES} "'$(NOSTDINC)' elif test "${DOING_LIBGXX}" = "true" ; then - echo 'CXXINCLUDES = $(NOSTDINC) -I. -I'"${TO_TOPDIR}libio"' -I$(srcdir) -I$(srcdir)/'"${TOLIBGXX}"'$(IO_DIR) -I$(srcdir)/'"${TOLIBGXX}"'../libstdc++ -I$(srcdir)/'"${TOLIBGXX}src"' $(WRAP_C_INCLUDES)' + echo >&2 'CXXINCLUDES = $(NOSTDINC) -I. -I'"${TO_TOPDIR}libio"' -I$(srcdir) -I$(srcdir)/'"${TOLIBGXX}"'$(IO_DIR) -I$(srcdir)/'"${TOLIBGXX}"'../libstdc++ -I$(srcdir)/'"${TOLIBGXX}src"' $(WRAP_C_INCLUDES)' fi if test -n "${XCINCLUDES}" ; then - echo "CINCLUDES = ${XCINCLUDES}" + echo >&2 "CINCLUDES = ${XCINCLUDES}" elif test "${DOING_LIBGXX}" = "true" ; then - echo 'CINCLUDES =' + echo >&2 'CINCLUDES =' fi if [ "${LIBDIR}" = "yes" ]; then - echo 'XCFLAGS = $(LIBCFLAGS)' - echo 'XCXXFLAGS = $(LIBCXXFLAGS)' + echo >&2 'XCFLAGS = $(LIBCFLAGS)' + echo >&2 'XCXXFLAGS = $(LIBCXXFLAGS)' else - echo 'XCFLAGS = $(CFLAGS)' - echo 'XCXXFLAGS = $(CXXFLAGS)' + echo >&2 'XCFLAGS = $(CFLAGS)' + echo >&2 'XCXXFLAGS = $(CXXFLAGS)' fi -echo '.SUFFIXES: .o .C .cc .c' -echo 'COMPILE.c = $(CC) -c $(XCFLAGS) $(CINCLUDES) $(MT_CFLAGS)' -echo '.c.o:' +echo >&2 '.SUFFIXES: .o .C .cc .c' +echo >&2 'COMPILE.c = $(CC) -c $(XCFLAGS) $(CINCLUDES) $(MT_CFLAGS)' +echo >&2 '.c.o:' if [ "${LIBDIR}" = "yes" ]; then -echo ' test -z "$(PICFLAG)" ||\' -echo ' $(COMPILE.c) $(PICFLAG) $< -o pic/$@' +echo >&2 ' test -z "$(PICFLAG)" ||\' +echo >&2 ' $(COMPILE.c) $(PICFLAG) $< -o pic/$@' fi -echo ' $(COMPILE.c) $<' -[ "${TOUCH_ON_COMPILE}" = "yes" ] && echo ' @touch stamp' -echo 'COMPILE.cc = $(CXX) -c $(XCXXFLAGS) $(CXXINCLUDES) $(MT_CFLAGS)' -echo '.C.o:' +echo >&2 ' $(COMPILE.c) $<' +[ "${TOUCH_ON_COMPILE}" = "yes" ] && echo >&2 ' @touch stamp' +echo >&2 'COMPILE.cc = $(CXX) -c $(XCXXFLAGS) $(CXXINCLUDES) $(MT_CFLAGS)' +echo >&2 '.C.o:' if [ "${LIBDIR}" = "yes" ]; then -echo ' test -z "$(PICFLAG)" ||\' -echo ' $(COMPILE.cc) $(PICFLAG) $< -o pic/$@' +echo >&2 ' test -z "$(PICFLAG)" ||\' +echo >&2 ' $(COMPILE.cc) $(PICFLAG) $< -o pic/$@' fi -echo ' $(COMPILE.cc) $<' -[ "${TOUCH_ON_COMPILE}" = "yes" ] && echo ' @touch stamp' -echo '.cc.o:' +echo >&2 ' $(COMPILE.cc) $<' +[ "${TOUCH_ON_COMPILE}" = "yes" ] && echo >&2 ' @touch stamp' +echo >&2 '.cc.o:' if [ "${LIBDIR}" = "yes" ]; then -echo ' test -z "$(PICFLAG)" || \' -echo ' $(COMPILE.cc) $(PICFLAG) $< -o pic/$@' +echo >&2 ' test -z "$(PICFLAG)" || \' +echo >&2 ' $(COMPILE.cc) $(PICFLAG) $< -o pic/$@' fi -echo ' $(COMPILE.cc) $<' -[ "${TOUCH_ON_COMPILE}" = "yes" ] && echo ' @touch stamp' -echo '' +echo >&2 ' $(COMPILE.cc) $<' +[ "${TOUCH_ON_COMPILE}" = "yes" ] && echo >&2 ' @touch stamp' +echo >&2 '' if [ -n "${TARGETLIB}" ] ; then echo TARGETLIB = ${TARGETLIB} @@ -285,111 +291,111 @@ if [ -n "${TARGETPROG}" ] ; then fi if [ "${LIBDIR}" = "yes" ]; then - echo '' - echo 'stamp-picdir:' - echo ' if [ -n "$(PICFLAG)" ] && [ ! -d pic ]; then \' - echo ' mkdir pic; \' - echo ' else true; fi' - echo ' touch stamp-picdir' + echo >&2 '' + echo >&2 'stamp-picdir:' + echo >&2 ' if [ -n "$(PICFLAG)" ] && [ ! -d pic ]; then \' + echo >&2 ' mkdir pic; \' + echo >&2 ' else true; fi' + echo >&2 ' touch stamp-picdir' fi -echo '' -echo '.PHONY: install' -echo 'install:' -echo '.PHONY: check' +echo >&2 '' +echo >&2 '.PHONY: install' +echo >&2 'install:' +echo >&2 '.PHONY: check' if [ "${CHECK}" != "check" ] ; then - echo "check: ${ALL} ${CHECK}" + echo >&2 "check: ${ALL} ${CHECK}" if [ "${CHECK_SUBDIRS}" != "" ] ; then - echo ' rootme=`pwd`/; export rootme; \' - echo ' SAVE_LLPATH="$${SAVE_LLPATH-$$LD_LIBRARY_PATH}"; export SAVE_LLPATH; \' - echo ' LD_LIBRARY_PATH="$${rootme}${TOLIBGXX}../libstdc++:$${rootme}${TOLIBGXX}../libg++:$$SAVE_LLPATH"; \' - echo ' export LD_LIBRARY_PATH; \' - echo ' $(MAKE) "DODIRS=$(CHECK_SUBDIRS)" DO=check $(FLAGS_TO_PASS) subdir_do' + echo >&2 ' rootme=`pwd`/; export rootme; \' + echo >&2 ' SAVE_LLPATH="$${SAVE_LLPATH-$$LD_LIBRARY_PATH}"; export SAVE_LLPATH; \' + echo >&2 ' LD_LIBRARY_PATH="$${rootme}${TOLIBGXX}../libstdc++:$${rootme}${TOLIBGXX}../libg++:$$SAVE_LLPATH"; \' + echo >&2 ' export LD_LIBRARY_PATH; \' + echo >&2 ' $(MAKE) "DODIRS=$(CHECK_SUBDIRS)" DO=check $(FLAGS_TO_PASS) subdir_do' fi fi # Generate rules for documentation (depending on INFO_FILES and INFO_SUBDIRS). -echo '.PHONY: info dvi install-info clean-info' +echo >&2 '.PHONY: info dvi install-info clean-info' # emit the rule for 'info' # (Note that the top-level ../Makefile.in greps for '^info:' when making # a release (in "make taz"), so don't break that!) if [ -z "${INFO_FILES}" ] ; then - echo 'info:' + echo >&2 'info:' else - echo info: `for file in ${INFO_FILES} ; do echo $file.info ; done` + echo >&2 info: `for file in ${INFO_FILES} ; do echo $file.info ; done` fi if [ "${INFO_SUBDIRS}" != "" ] ; then - echo ' @rootme=`pwd`/; export rootme; \ + echo >&2 ' @rootme=`pwd`/; export rootme; \ $(MAKE) "DODIRS='${INFO_SUBDIRS}'" DO=info $(FLAGS_TO_PASS) subdir_do' fi # emit the rule for 'dvi' if [ -z "${INFO_FILES}" ] ; then - echo 'dvi:' + echo >&2 'dvi:' else - echo dvi: `for file in ${INFO_FILES} ; do echo $file.dvi ; done` + echo >&2 dvi: `for file in ${INFO_FILES} ; do echo $file.dvi ; done` fi if [ "${INFO_SUBDIRS}" != "" ] ; then - echo ' @rootme=`pwd`/; export rootme; \ + echo >&2 ' @rootme=`pwd`/; export rootme; \ $(MAKE) "DODIRS='${INFO_SUBDIRS}'" DO=dvi $(FLAGS_TO_PASS) subdir_do' fi # Emit rules for each *.info and *.dvi file for file in ${INFO_FILES} ; do - echo ${file}.info: '$(srcdir)'/${file}.texi - echo ' $(MAKEINFO) -I$(srcdir) -I$(TEXIDIR) $(srcdir)/'${file}.texi -o ${file}.info - echo ${file}.dvi: '$(srcdir)'/${file}.texi - echo ' $(TEXI2DVI) $(srcdir)'/${file}.texi - echo "${file}.ps: ${file}.dvi" - echo " dvips ${file} -o" + echo >&2 ${file}.info: '$(srcdir)'/${file}.texi + echo >&2 ' $(MAKEINFO) -I$(srcdir) -I$(TEXIDIR) $(srcdir)/'${file}.texi -o ${file}.info + echo >&2 ${file}.dvi: '$(srcdir)'/${file}.texi + echo >&2 ' $(TEXI2DVI) $(srcdir)'/${file}.texi + echo >&2 "${file}.ps: ${file}.dvi" + echo >&2 " dvips ${file} -o" done # emit the rule for install-info -echo 'install-info:' +echo >&2 'install-info:' if [ -n "${INFO_FILES}" ] ; then - echo ' -parent=`echo $(infodir)|sed -e' "'"'s@/[^/]*$$@@'"'"'`; \' - echo ' if [ -d $$parent ] ; then true ; else mkdir $$parent ; fi' - echo ' -if [ -d $(infodir) ] ; then true ; else mkdir $(infodir) ; fi' - echo ' for i in *.info* ; do \' - echo ' $(INSTALL_DATA) $$i $(infodir)/$$i ; \' - echo ' done' + echo >&2 ' -parent=`echo $(infodir)|sed -e' "'"'s@/[^/]*$$@@'"'"'`; \' + echo >&2 ' if [ -d $$parent ] ; then true ; else mkdir $$parent ; fi' + echo >&2 ' -if [ -d $(infodir) ] ; then true ; else mkdir $(infodir) ; fi' + echo >&2 ' for i in *.info* ; do \' + echo >&2 ' $(INSTALL_DATA) $$i $(infodir)/$$i ; \' + echo >&2 ' done' fi if [ "${INFO_SUBDIRS}" != "" ] ; then - echo ' @rootme=`pwd`/; export rootme; \ + echo >&2 ' @rootme=`pwd`/; export rootme; \ $(MAKE) "DODIRS='${INFO_SUBDIRS}'" DO=install-info $(FLAGS_TO_PASS) subdir_do' fi # emit clean-info and clean-dvi rules -echo '.PHONY: do-clean-info clean-info do-clean-dvi clean-dvi' -echo do-clean-info: +echo >&2 '.PHONY: do-clean-info clean-info do-clean-dvi clean-dvi' +echo >&2 do-clean-info: if [ -n "${INFO_FILES}" ] ; then - echo ' rm -f *.info*' + echo >&2 ' rm -f *.info*' fi -echo 'do-clean-dvi:' +echo >&2 'do-clean-dvi:' if [ -n "${INFO_FILES}" ] ; then - echo ' rm -f *.dvi *.aux *.cp *.cps *.fn* *.ky *.log *.pg *.toc *.tp *.vr' + echo >&2 ' rm -f *.dvi *.aux *.cp *.cps *.fn* *.ky *.log *.pg *.toc *.tp *.vr' fi for type in info dvi ; do - echo clean-${type}: do-clean-${type} + echo >&2 clean-${type}: do-clean-${type} if [ "${INFO_SUBDIRS}" != "" ] ; then - echo ' @rootme=`pwd`/; export rootme; \ + echo >&2 ' @rootme=`pwd`/; export rootme; \ $(MAKE) "DODIRS='${NFO_SUBDIRS}'" DO=clean-'${type} '$(FLAGS_TO_PASS) subdir_do' fi done -echo '' +echo >&2 '' -echo '.PHONY: boltcc' -echo 'boltcc:' -echo ' rootme=`pwd`/ ; export rootme ; $(MAKE) $(FLAGS_TO_PASS)' -echo '' +echo >&2 '.PHONY: boltcc' +echo >&2 'boltcc:' +echo >&2 ' rootme=`pwd`/ ; export rootme ; $(MAKE) $(FLAGS_TO_PASS)' +echo >&2 '' # Emit clean rules -echo '' -echo '# clean rules' +echo >&2 '' +echo >&2 '# clean rules' MOSTLYCLEAN="${MOSTLYCLEAN-*.o pic stamp-picdir core ${EXTRA_MOSTLYCLEAN}} `if test -n "${TOUCH_ON_COMPILE}"; then echo stamp; else true; fi`" CLEAN="${CLEAN-${TARGETPROG} ${TARGETLIB}}" @@ -397,55 +403,55 @@ DISTCLEAN="${DISTCLEAN-config.status Makefile *~ Make.pack target-mkfrag multili REALCLEAN="${REALCLEAN-depend *.info*}" -echo '.PHONY: mostlyclean clean distclean maintainer-clean realclean' +echo >&2 '.PHONY: mostlyclean clean distclean maintainer-clean realclean' if test -z "${SUBDIRS}" ; then - echo "mostlyclean: clean-dvi" - echo " rm -rf ${MOSTLYCLEAN}" - echo ' @$(MULTICLEAN) multi-clean DO=mostlyclean' - echo "clean: clean-dvi" - echo " rm -rf ${MOSTLYCLEAN} ${CLEAN}" - echo ' @$(MULTICLEAN) multi-clean DO=clean' - echo "distclean: clean" - echo ' @$(MULTICLEAN) multi-clean DO=distclean' - echo " rm -rf ${DISTCLEAN}" - echo "maintainer-clean realclean: clean clean-info" - echo ' @$(MULTICLEAN) multi-clean DO=maintainer-clean' - echo " rm -rf ${DISTCLEAN} ${REALCLEAN}" + echo >&2 "mostlyclean: clean-dvi" + echo >&2 " rm -rf ${MOSTLYCLEAN}" + echo >&2 ' @$(MULTICLEAN) multi-clean DO=mostlyclean' + echo >&2 "clean: clean-dvi" + echo >&2 " rm -rf ${MOSTLYCLEAN} ${CLEAN}" + echo >&2 ' @$(MULTICLEAN) multi-clean DO=clean' + echo >&2 "distclean: clean" + echo >&2 ' @$(MULTICLEAN) multi-clean DO=distclean' + echo >&2 " rm -rf ${DISTCLEAN}" + echo >&2 "maintainer-clean realclean: clean clean-info" + echo >&2 ' @$(MULTICLEAN) multi-clean DO=maintainer-clean' + echo >&2 " rm -rf ${DISTCLEAN} ${REALCLEAN}" else - echo '.PHONY: do-clean subdir_distclean subdir_maintainer_clean' - echo "mostlyclean: do-clean-dvi" - echo " rm -rf ${MOSTLYCLEAN}" - echo ' @$(MAKE) $(FLAGS_TO_PASS) "DODIRS=$(SUBDIRS)" DO=mostlyclean subdir_do' - echo ' @$(MULTICLEAN) multi-clean DO=mostlyclean' - echo "do-clean: do-clean-dvi" - echo " rm -rf ${MOSTLYCLEAN} ${CLEAN}" - echo "clean: do-clean" - echo ' @$(MAKE) $(FLAGS_TO_PASS) "DODIRS=$(SUBDIRS)" DO=clean subdir_do' - echo ' @$(MULTICLEAN) multi-clean DO=clean' + echo >&2 '.PHONY: do-clean subdir_distclean subdir_maintainer_clean' + echo >&2 "mostlyclean: do-clean-dvi" + echo >&2 " rm -rf ${MOSTLYCLEAN}" + echo >&2 ' @$(MAKE) $(FLAGS_TO_PASS) "DODIRS=$(SUBDIRS)" DO=mostlyclean subdir_do' + echo >&2 ' @$(MULTICLEAN) multi-clean DO=mostlyclean' + echo >&2 "do-clean: do-clean-dvi" + echo >&2 " rm -rf ${MOSTLYCLEAN} ${CLEAN}" + echo >&2 "clean: do-clean" + echo >&2 ' @$(MAKE) $(FLAGS_TO_PASS) "DODIRS=$(SUBDIRS)" DO=clean subdir_do' + echo >&2 ' @$(MULTICLEAN) multi-clean DO=clean' # distclean and maintainer-clean are tricky because they remove the Makefile. - echo "subdir_distclean:" - echo ' @$(MAKE) $(FLAGS_TO_PASS) "DODIRS=$(SUBDIRS)" DO=distclean subdir_do' - echo "distclean: do-clean subdir_distclean" - echo ' @$(MULTICLEAN) multi-clean DO=distclean' - echo " rm -rf ${DISTCLEAN}" - echo "subdir_maintainer_clean:" - echo ' @$(MAKE) $(FLAGS_TO_PASS) "DODIRS=$(SUBDIRS)" DO=maintainer-clean subdir_do' - echo "maintainer-clean realclean: do-clean subdir_maintainer_clean do-clean-info" - echo ' @$(MULTICLEAN) multi-clean DO=maintainer-clean' - echo " rm -rf ${DISTCLEAN} ${REALCLEAN}" + echo >&2 "subdir_distclean:" + echo >&2 ' @$(MAKE) $(FLAGS_TO_PASS) "DODIRS=$(SUBDIRS)" DO=distclean subdir_do' + echo >&2 "distclean: do-clean subdir_distclean" + echo >&2 ' @$(MULTICLEAN) multi-clean DO=distclean' + echo >&2 " rm -rf ${DISTCLEAN}" + echo >&2 "subdir_maintainer_clean:" + echo >&2 ' @$(MAKE) $(FLAGS_TO_PASS) "DODIRS=$(SUBDIRS)" DO=maintainer-clean subdir_do' + echo >&2 "maintainer-clean realclean: do-clean subdir_maintainer_clean do-clean-info" + echo >&2 ' @$(MULTICLEAN) multi-clean DO=maintainer-clean' + echo >&2 " rm -rf ${DISTCLEAN} ${REALCLEAN}" fi -echo '' -echo '.PHONY: force' -echo 'force:' -echo '' -echo '# with the gnu make, this is done automatically.' -echo '' -echo 'Makefile: $(srcdir)/Makefile.in $(host_makefile_frag) $(target_makefile_frag)' -echo ' $(SHELL) ./config.status' -echo '' -echo '.NOEXPORT:' -echo 'MAKEOVERRIDES=' +echo >&2 '' +echo >&2 '.PHONY: force' +echo >&2 'force:' +echo >&2 '' +echo >&2 '# with the gnu make, this is done automatically.' +echo >&2 '' +echo >&2 'Makefile: $(srcdir)/Makefile.in $(host_makefile_frag) $(target_makefile_frag)' +echo >&2 ' $(SHELL) ./config.status' +echo >&2 '' +echo >&2 '.NOEXPORT:' +echo >&2 'MAKEOVERRIDES=' cat <<"EOF" DEPEND_SOURCES = ${srcdir}/*.cc ${srcdir}/*.c @@ -480,7 +486,8 @@ $(srcdir)/depend: depend.new EOF if [ -f ${srcdir}/${subdir}/depend ] ; then - cat ${srcdir}/${subdir}/depend + cat ${srcdir}/${subdir}/depend >&2 fi echo "# End of package fragment generated by ${THIS_FILE}." +echo >&2 "# End of package rules fragment generated by ${THIS_FILE}." diff --git a/libio/configure.in b/libio/configure.in index e67685227e9..6594559f71d 100644 --- a/libio/configure.in +++ b/libio/configure.in @@ -20,6 +20,7 @@ fi srctrigger=libioP.h srcname="input/output library" package_makefile_frag=Make.pack +package_makefile_rules_frag=Make.pack.r # per-host: @@ -115,7 +116,7 @@ INFO_FILES=iostream if [ -n "${with_cross_host}" -a -d ${topsrcdir}/gcc ]; then CHECK_SUBDIRS=testsuite fi -(. ${srcdir}/config.shared) >${package_makefile_frag} +(. ${srcdir}/config.shared) >${package_makefile_frag} 2>${package_makefile_rules_frag} # post-target: