Use standard set of libs for powerpc-*-eabisim.
[deliverable/binutils-gdb.git] / Makefile.in
index d09b89b36e7be66bdc25681d3497a13e5ba6fe11..96d5f307559665ae277f6b2d9f6c09f423ed68f5 100644 (file)
@@ -14,7 +14,7 @@
 # 
 # You should have received a copy of the GNU General Public License
 # along with this program; if not, write to the Free Software
-# Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
+# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  */
 #
 
 srcdir = .
@@ -42,6 +42,7 @@ man9dir = $(mandir)/man9
 infodir = $(prefix)/info
 includedir = $(prefix)/include
 docdir = $(datadir)/doc
+GDB_NLM_DEPS = 
 
 SHELL = /bin/sh
 
@@ -66,6 +67,11 @@ HOST_PREFIX_1 = loser-
 # We don't specify -g -O because many compilers don't support -g -O,
 # and/or -O is broken in and of itself.
 CFLAGS = -g
+LIBCFLAGS = $(CFLAGS)
+CFLAGS_FOR_TARGET = $(CFLAGS)
+LIBCFLAGS_FOR_TARGET = $(CFLAGS_FOR_TARGET)
+PICFLAG = 
+PICFLAG_FOR_TARGET = 
 
 # start-sanitize-chill
 CHILLFLAGS = $(CFLAGS)
@@ -74,7 +80,10 @@ CHILL_LIB = -lchill
 CXX = gcc
 
 # Use -O2 to stress test the compiler.
-CXXFLAGS = -g -O2 -fexternal-templates
+CXXFLAGS = -g -O2
+LIBCXXFLAGS = $(CXXFLAGS) -fno-implicit-templates
+CXXFLAGS_FOR_TARGET = $(CXXFLAGS)
+LIBCXXFLAGS_FOR_TARGET = $(CXXFLAGS_FOR_TARGET) -fno-implicit-templates
 
 RANLIB = ranlib
 NM = nm
@@ -124,6 +133,13 @@ CXX_FOR_BUILD = $(CXX)
 SUBDIRS = "this is set via configure, don't edit this"
 OTHERS = 
 
+# This is set by the configure script to the list of directories which
+# should be built using the target tools.
+TARGET_CONFIGDIRS = xiberty libgloss newlib libio librx libstdc++ libg++
+
+# This is set by the configure script to the arguments passed to configure.
+CONFIG_ARGUMENTS = 
+
 ALL = all.normal
 INSTALL_TARGET = install-dirs \
        $(INSTALL_MODULES) \
@@ -144,19 +160,19 @@ CC_FOR_TARGET = ` \
     if [ "$(host_canonical)" = "$(target_canonical)" ] ; then \
       echo $(CC); \
     else \
-      t='$(program_transform_name)'; echo gcc | sed -e 's/brokensed/brokensed/' $$t; \
+      t='$(program_transform_name)'; echo gcc | sed -e 's/x/x/' $$t; \
     fi; \
   fi`
 
 # start-sanitize-chill
 CHILL_FOR_TARGET = ` \
   if [ -f $$r/gcc/Makefile ] ; then \
-    echo $$r/gcc/xgcc -B$$r/gcc/ -L$$r/chillrt/; \
+    echo $$r/gcc/xgcc -B$$r/gcc/ -L$$r/gcc/ch/runtime/; \
   else \
     if [ "$(host_canonical)" = "$(target_canonical)" ] ; then \
       echo $(CC); \
     else \
-      t='$(program_transform_name)'; echo gcc | sed -e 's/brokensed/brokensed/' $$t; \
+      t='$(program_transform_name)'; echo gcc | sed -e 's/x/x/' $$t; \
     fi; \
   fi`
 
@@ -173,18 +189,29 @@ CXX_FOR_TARGET = ` \
     if [ "$(host_canonical)" = "$(target_canonical)" ] ; then \
       echo $(CXX); \
     else \
-      t='$(program_transform_name)'; echo gcc | sed -e 's/brokensed/brokensed/' $$t; \
+      t='$(program_transform_name)'; echo gcc | sed -e 's/x/x/' $$t; \
     fi; \
   fi`
 
 AS_FOR_TARGET = ` \
-  if [ -f $$r/gas/Makefile ] ; then \
+  if [ -f $$r/gas/as.new ] ; then \
     echo $$r/gas/as.new ; \
   else \
     if [ "$(host_canonical)" = "$(target_canonical)" ] ; then \
       echo $(AS); \
     else \
-       t='$(program_transform_name)'; echo as | sed -e 's/brokensed/brokensed/' $$t ; \
+       t='$(program_transform_name)'; echo as | sed -e 's/x/x/' $$t ; \
+    fi; \
+  fi`
+
+DLLTOOL_FOR_TARGET = ` \
+  if [ -f $$r/binutils/dlltool ] ; then \
+    echo $$r/binutils/dlltool ; \
+  else \
+    if [ "$(host_canonical)" = "$(target_canonical)" ] ; then \
+      echo $(DLLTOOL); \
+    else \
+       t='$(program_transform_name)'; echo dlltool | sed -e 's/x/x/' $$t ; \
     fi; \
   fi`
 
@@ -195,7 +222,7 @@ AR_FOR_TARGET = ` \
     if [ "$(host_canonical)" = "$(target_canonical)" ] ; then \
       echo $(AR); \
     else \
-       t='$(program_transform_name)'; echo ar | sed -e 's/brokensed/brokensed/' $$t ; \
+       t='$(program_transform_name)'; echo ar | sed -e 's/x/x/' $$t ; \
     fi; \
   fi`
 
@@ -206,22 +233,21 @@ RANLIB_FOR_TARGET = ` \
     if [ "$(host_canonical)" = "$(target_canonical)" ] ; then \
       echo $(RANLIB); \
     else \
-       t='$(program_transform_name)'; echo ranlib | sed -e 's/brokensed/brokensed/' $$t ; \
+       t='$(program_transform_name)'; echo ranlib | sed -e 's/x/x/' $$t ; \
     fi; \
   fi`
 
 NM_FOR_TARGET = ` \
-  if [ -f $$r/binutils/Makefile ] ; then \
+  if [ -f $$r/binutils/nm.new ] ; then \
     echo $$r/binutils/nm.new ; \
   else \
     if [ "$(host_canonical)" = "$(target_canonical)" ] ; then \
       echo $(NM); \
     else \
-       t='$(program_transform_name)'; echo nm | sed -e 's/brokensed/brokensed/' $$t ; \
+       t='$(program_transform_name)'; echo nm | sed -e 's/x/x/' $$t ; \
     fi; \
   fi`
 
-
 #### host and target specific makefile fragments come in here.
 ###
 
@@ -235,6 +261,7 @@ BASE_FLAGS_TO_PASS = \
        "CC_FOR_BUILD=$(CC_FOR_BUILD)" \
        "CC_FOR_TARGET=$(CC_FOR_TARGET)" \
        "CFLAGS=$(CFLAGS)" \
+       "CFLAGS_FOR_TARGET=$(CFLAGS_FOR_TARGET)" \
        $(start-sanitize-chill)\
        "CHILLFLAGS=$(CHILLFLAGS)" \
        "CHILL_FOR_TARGET=$(CHILL_FOR_TARGET)" \
@@ -242,7 +269,9 @@ BASE_FLAGS_TO_PASS = \
        $(end-sanitize-chill)\
        "CXX_FOR_BUILD=$(CXX_FOR_BUILD)" \
        "CXXFLAGS=$(CXXFLAGS)" \
+       "CXXFLAGS_FOR_TARGET=$(CXXFLAGS_FOR_TARGET)" \
        "CXX_FOR_TARGET=$(CXX_FOR_TARGET)" \
+       "DLLTOOL_FOR_TARGET=$(DLLTOOL_FOR_TARGET)" \
        "GCC_FOR_TARGET=$(CC_FOR_TARGET)" \
        "INSTALL=$(INSTALL)" \
        "INSTALL_DATA=$(INSTALL_DATA)" \
@@ -250,9 +279,15 @@ BASE_FLAGS_TO_PASS = \
        "INSTALL_XFORM=$(INSTALL_XFORM)" \
        "LDFLAGS=$(LDFLAGS)" \
        "LEX=$(LEX)" \
+       "LIBCFLAGS=$(LIBCFLAGS)" \
+       "LIBCFLAGS_FOR_TARGET=$(LIBCFLAGS_FOR_TARGET)" \
+       "LIBCXXFLAGS=$(LIBCXXFLAGS)" \
+       "LIBCXXFLAGS_FOR_TARGET=$(LIBCXXFLAGS_FOR_TARGET)" \
        "M4=$(M4)" \
        "MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)" \
        "NM_FOR_TARGET=$(NM_FOR_TARGET)" \
+       "PICFLAG=$(PICFLAG)" \
+       "PICFLAG_FOR_TARGET=$(PICFLAG_FOR_TARGET)" \
        "RANLIB_FOR_TARGET=$(RANLIB_FOR_TARGET)" \
        "SHELL=$(SHELL)" \
        "EXPECT=$(EXPECT)" \
@@ -291,8 +326,14 @@ EXTRA_TARGET_FLAGS = \
        'AR=$$(AR_FOR_TARGET)' \
        'AS=$$(AS_FOR_TARGET)' \
        'CC=$$(CC_FOR_TARGET)' \
+       'CFLAGS=$$(CFLAGS_FOR_TARGET)' \
        'CXX=$$(CXX_FOR_TARGET)' \
+       'CXXFLAGS=$$(CXXFLAGS_FOR_TARGET)' \
+       'DLLTOOL=$$(DLLTOOL_FOR_TARGET)' \
+       'LIBCFLAGS=$$(LIBCFLAGS_FOR_TARGET)' \
+       'LIBCXXFLAGS=$$(LIBCXXFLAGS_FOR_TARGET)' \
        'NM=$$(NM_FOR_TARGET)' \
+       'PICFLAG=$$(PICFLAG_FOR_TARGET)' \
        'RANLIB=$$(RANLIB_FOR_TARGET)'
 
 TARGET_FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS)
@@ -333,7 +374,6 @@ ALL_MODULES = \
        all-flex \
        all-gas \
        all-gawk \
-       all-gdb \
        all-gprof \
        all-grep \
        all-gzip \
@@ -346,7 +386,6 @@ ALL_MODULES = \
        all-make \
        all-mmalloc \
        all-opcodes \
-       all-pagas \
        all-patch \
        all-prms \
        all-rcs \
@@ -390,7 +429,6 @@ CROSS_CHECK_MODULES = \
        check-find \
        check-gas \
        check-gawk \
-       check-gdb \
        check-gprof \
        check-grep \
        check-gzip \
@@ -403,7 +441,6 @@ CROSS_CHECK_MODULES = \
        check-make \
        check-mmcheckoc \
        check-opcodes \
-       check-pagas \
        check-patch \
        check-prms \
        check-rcs \
@@ -441,8 +478,6 @@ INSTALL_MODULES = \
        install-flex \
        install-gas \
        install-gawk \
-       install-gdb \
-       install-glob \
        install-gprof \
        install-grep \
        install-gzip \
@@ -455,7 +490,6 @@ INSTALL_MODULES = \
        install-make \
        install-mmalloc \
        install-opcodes \
-       install-pagas \
        install-patch \
        install-prms \
        install-rcs \
@@ -479,6 +513,7 @@ INSTALL_MODULES = \
 ALL_X11_MODULES = \
        all-emacs \
        all-emacs19 \
+       all-gdb \
        all-expect \
        all-gash \
        all-tclX \
@@ -488,6 +523,7 @@ ALL_X11_MODULES = \
 # compiled using $(X11_FLAGS_TO_PASS).
 CHECK_X11_MODULES = \
        check-emacs \
+       check-gdb \
        check-expect \
        check-gash \
        check-tclX \
@@ -498,6 +534,7 @@ CHECK_X11_MODULES = \
 INSTALL_X11_MODULES = \
        install-emacs \
        install-emacs19 \
+       install-gdb \
        install-expect \
        install-gash \
        install-tclX \
@@ -506,22 +543,30 @@ INSTALL_X11_MODULES = \
 # This is a list of the targets for all of the modules which are compiled
 # using $(TARGET_FLAGS_TO_PASS).
 ALL_TARGET_MODULES = \
-       $(start-sanitize-chill) \
-       all-chillrt \
-       $(end-sanitize-chill) \
        all-libio \
+       all-libstdc++ \
        all-librx \
        all-libg++ \
        all-newlib \
+       all-libgloss \
        all-xiberty
 
+# This is a list of the configure targets for all of the modules which
+# are compiled using the target tools.
+CONFIGURE_TARGET_MODULES = \
+       configure-libio \
+       configure-libstdc++ \
+       configure-librx \
+       configure-libg++ \
+       configure-newlib \
+       configure-libgloss \
+       configure-xiberty
+
 # This is a list of the check targets for all of the modules which are
 # compiled using $(TARGET_FLAGS_TO_PASS).
 CHECK_TARGET_MODULES = \
-       $(start-sanitize-chill) \
-       check-chillrt \
-       $(end-sanitize-chill) \
        check-libio \
+       check-libstdc++ \
        check-libg++ \
        check-newlib \
        check-xiberty
@@ -529,20 +574,16 @@ CHECK_TARGET_MODULES = \
 # This is a list of the install targets for all of the modules which are
 # compiled using $(TARGET_FLAGS_TO_PASS).
 INSTALL_TARGET_MODULES = \
-       $(start-sanitize-chill) \
-       install-chillrt \
-       $(end-sanitize-chill) \
        install-libio \
+       install-libstdc++ \
        install-libg++ \
        install-newlib \
+       install-libgloss \
        install-xiberty
 
 # This is a shell case of all modules which are compiled using
 # $(TARGET_FLAGS_TO_PASS), used in the do-X rule.
-TARGET_LIBS = libio | librx | libg++ | newlib | xiberty
-# start-sanitize-chill
-TARGET_LIBS = chillrt | libio | librx | libg++ | newlib | xiberty
-# end-sanitize-chill
+TARGET_LIBS = libio | libstdc++ | librx | libg++ | newlib | xiberty
 
 # The first rule in the file had better be this one.  Don't put any above it.
 all: all.normal
@@ -571,14 +612,14 @@ DO_X = \
        do-install-info \
        do-installcheck \
        do-mostlyclean \
-       do-realclean \
+       do-maintainer-clean \
        do-TAGS
 .PHONY: $(DO_X)
 $(DO_X):
        @target=`echo $@ | sed -e 's/^do-//'`; \
        r=`pwd`; export r; \
        srcroot=`cd $(srcdir); pwd`; export srcroot; \
-       for i in $(SUBDIRS); do \
+       for i in $(SUBDIRS) $(TARGET_CONFIGDIRS); do \
          if [ -f ./$$i/Makefile ]; then \
            case $$i in \
            $(TARGET_LIBS) ) \
@@ -610,7 +651,8 @@ $(DO_X):
 # Here are the targets which correspond to the do-X targets.
 
 .PHONY: info installcheck dvi install-info
-.PHONY: clean distclean mostlyclean realclean local-clean local-distclean
+.PHONY: clean distclean mostlyclean maintainer-clean realclean
+.PHONY: local-clean local-distclean local-maintainer-clean
 info: do-info
 installcheck: do-installcheck
 dvi: do-dvi
@@ -627,10 +669,16 @@ local-clean:
 local-distclean:
        -rm -f Makefile config.status
 
+local-maintainer-clean:
+       @echo "This command is intended for maintainers to use;"
+       @echo "it deletes files that may require special tools to rebuild."
+
 clean: do-clean local-clean
 mostlyclean: do-mostlyclean local-clean
 distclean: do-distclean local-clean local-distclean
-realclean: do-realclean local-clean local-distclean
+maintainer-clean: local-maintainer-clean do-maintainer-clean local-clean 
+maintainer-clean: local-distclean
+realclean: maintainer-clean
 
 # Check target.
 
@@ -642,12 +690,20 @@ check: $(CHECK_MODULES) \
 
 # Installation targets.
 
-.PHONY: install uninstall vault-install
+.PHONY: install uninstall source-vault binary-vault vault-install
 install: $(INSTALL_TARGET) 
 
 uninstall:
        @echo "the uninstall target is not supported in this tree"
 
+source-vault:
+       $(MAKE) -f ./release/Build-A-Release \
+               host=$(host_alias) source-vault
+
+binary-vault:
+       $(MAKE) -f ./release/Build-A-Release \
+               host=$(host_alias) target=$(target_alias)
+
 vault-install:
        @if [ -f ./release/vault-install ] ; then \
          ./release/vault-install $(host_alias) $(target_alias) ; \
@@ -697,41 +753,35 @@ gcc-no-fixedincludes:
 
 # This rule is used to build the modules which use FLAGS_TO_PASS.  To
 # build a target all-X means to cd to X and make all.
-# all-glob is handled specially because it doesn't actually build.
 #
 # all-gui, and all-libproc are handled specially because
 # they are still experimental, and if they fail to build, that
 # shouldn't stop "make all".
-.PHONY: $(ALL_MODULES) all-glob all-gui all-libproc
-$(ALL_MODULES) all-glob all-gui all-libproc:
+.PHONY: $(ALL_MODULES) all-gui all-libproc
+$(ALL_MODULES) all-gui all-libproc:
        @dir=`echo $@ | sed -e 's/all-//'`; \
-       if [ -d ./$${dir} ] ; then \
-         if [ -f ./$${dir}/Makefile ] ; then \
-           r=`pwd`; export r; \
-           srcroot=`cd $(srcdir); pwd`; export srcroot; \
-           (cd $${dir}; $(MAKE) $(FLAGS_TO_PASS) all); \
-         else \
-           true ; \
-         fi; \
+       if [ -f ./$${dir}/Makefile ] ; then \
+         r=`pwd`; export r; \
+         srcroot=`cd $(srcdir); pwd`; export srcroot; \
+         (cd $${dir}; $(MAKE) $(FLAGS_TO_PASS) all); \
        else \
          true; \
        fi
 
-# This rule is used to check the modules which use FLAGS_TO_PASS.  To
-# build a target check-X means to cd to X and make all.
+# These rules are used to check the modules which use FLAGS_TO_PASS.
+# To build a target check-X means to cd to X and make check.  Some
+# modules are only tested in a native toolchain.
 
 .PHONY: $(CHECK_MODULES) $(NATIVE_CHECK_MODULES) $(CROSS_CHECK_MODULES)
 $(NATIVE_CHECK_MODULES):
        @if [ "$(host_canonical)" = "$(target_canonical)" ] ; then \
          dir=`echo $@ | sed -e 's/check-//'`; \
-         if [ -d ./$${dir} ] ; then \
-           if [ -f ./$${dir}/Makefile ] ; then \
-             r=`pwd`; export r; \
-             srcroot=`cd $(srcdir); pwd`; export srcroot; \
-             (cd $${dir}; $(MAKE) $(FLAGS_TO_PASS) check); \
-           else \
-             true; \
-           fi ; \
+         if [ -f ./$${dir}/Makefile ] ; then \
+           r=`pwd`; export r; \
+           srcroot=`cd $(srcdir); pwd`; export srcroot; \
+           (cd $${dir}; $(MAKE) $(FLAGS_TO_PASS) check); \
+         else \
+           true; \
          fi; \
        fi
 
@@ -758,6 +808,31 @@ $(INSTALL_MODULES): install-dirs
          true; \
        fi
 
+# This rule is used to configure the modules which are built with the
+# target tools.
+.PHONY: $(CONFIGURE_TARGET_MODULES)
+$(CONFIGURE_TARGET_MODULES):
+       @dir=`echo $@ | sed -e 's/configure-//'`; \
+       if [ -f ./$${dir}/Makefile ] ; then \
+         true; \
+       elif echo " $(TARGET_CONFIGDIRS) " | grep " $${dir} " >/dev/null 2>&1; then \
+         if [ -d ./$${dir} ]; then true; else mkdir $${dir}; fi; \
+         r=`pwd`; export r; \
+         srcroot=`cd $(srcdir); pwd`; export srcroot; \
+         AR="$(AR_FOR_TARGET)"; export AR; \
+         AS="$(AS_FOR_TARGET)"; export AS; \
+         CC="$(CC_FOR_TARGET)"; export CC; \
+         CFLAGS="$(CFLAGS_FOR_TARGET)"; export CFLAGS; \
+         CXX="$(CXX_FOR_TARGET)"; export CXX; \
+         CXXFLAGS="$(CXXFLAGS_FOR_TARGET)"; export CXXFLAGS; \
+         NM="$(NM_FOR_TARGET)"; export NM; \
+         RANLIB="$(RANLIB_FOR_TARGET)"; export RANLIB; \
+         cd $${dir}; \
+         $${srcroot}/configure $(CONFIG_ARGUMENTS) --srcdir=$${srcroot}/$${dir}; \
+       else \
+         true; \
+       fi
+
 # This rule is used to build the modules which use TARGET_FLAGS_TO_PASS.
 # To build a target all-X means to cd to X and make all.
 .PHONY: $(ALL_TARGET_MODULES)
@@ -892,11 +967,8 @@ install-dosrel-fake:
 # This is a list of inter-dependencies among modules.
 all-autoconf: all-m4
 all-bfd:
-all-binutils: all-libiberty all-opcodes all-bfd all-flex
+all-binutils: all-libiberty all-opcodes all-bfd all-flex all-byacc
 all-byacc:
-# start-sanitize-chill
-all-chillrt: all-binutils all-gas all-gcc all-newlib
-# end-sanitize-chill
 all-cvs:
 all-dejagnu: all-tcl all-expect all-tk
 all-diff: all-libiberty
@@ -910,25 +982,32 @@ all-flex: all-libiberty all-byacc
 all-gas: all-libiberty all-opcodes all-bfd
 all-gash: all-tcl
 all-gawk:
-all-gcc: all-libiberty all-byacc all-binutils all-gas all-pagas
-all-gdb: all-libiberty all-opcodes all-bfd all-mmalloc all-readline all-glob all-byacc all-sim
-all-glob:
+all-gcc: all-libiberty all-byacc all-binutils all-gas all-ld
+all-gdb: all-libiberty all-opcodes all-bfd all-mmalloc all-readline all-byacc all-sim $(gdbnlmrequirements)
 all-gprof: all-libiberty all-bfd
 all-grep: all-libiberty
 all-gui: all-gdb all-libproc all-librx
 all-gzip: all-libiberty
 all-hello: all-libiberty
 all-indent:
-all-ispell: all-emacs # all-emacs19 ??? is this needed?
+all-ispell: all-emacs19
 all-ld: all-libiberty all-bfd all-byacc all-flex
-all-libg++: all-gas all-pagas all-ld all-gcc all-xiberty all-newlib \
-       all-libio all-librx
-all-libio: all-gas all-pagas all-ld all-gcc all-xiberty all-newlib 
+configure-libg++: all-gcc
+all-libg++: configure-libg++ all-gas all-ld all-gcc all-xiberty all-newlib all-libio all-librx all-libstdc++
+configure-libgloss: all-gcc
+all-libgloss: configure-libgloss
+configure-libio: all-gcc
+all-libio: configure-libio all-gas all-ld all-gcc all-xiberty all-newlib
 all-libiberty:
+configure-librx: all-gcc all-newlib
+all-librx: configure-librx
+configure-libstdc++: all-gcc
+all-libstdc++: configure-libstdc++ all-gas all-ld all-gcc all-xiberty all-newlib all-libio
 all-m4: all-libiberty
 all-make: all-libiberty
 all-mmalloc:
-all-newlib: all-binutils all-gas all-pagas all-gcc
+configure-newlib: all-gcc
+all-newlib: configure-newlib all-binutils all-gas all-gcc
 all-opcodes: all-bfd
 all-patch:
 all-prms: all-libiberty
@@ -949,7 +1028,8 @@ all-tgas: all-libiberty all-bfd
 all-time:
 all-wdiff:
 all-uudecode: all-libiberty
-all-xiberty: all-gcc all-ld all-newlib
+configure-xiberty: all-gcc
+all-xiberty: configure-xiberty all-gcc all-ld all-newlib
 
 ### other supporting targets
 
@@ -1010,6 +1090,7 @@ Makefile: Makefile.in configure.in $(host_makefile_frag) $(target_makefile_frag)
 # distribution (perhaps it would be better to include it anyway).
 DEVO_SUPPORT= README Makefile.in configure configure.in \
        config.guess config.sub config move-if-change \
+       mpw-README mpw-build.in mpw-config.in mpw-configure \
        COPYING COPYING.LIB install.sh
 
 # Files in devo/etc used in any net release.
@@ -1017,16 +1098,17 @@ DEVO_SUPPORT= README Makefile.in configure configure.in \
 # distribution (perhaps it would be better to include it anyway).
 ETC_SUPPORT= Makefile.in cfg-paper.texi configure.in configure.man \
        configure.texi standards.texi make-stds.texi
+ETC_SUPPORT_PFX=configure.info standards.info cfg-paper.info
 
 # When you use `make setup-dirs' or `make taz' you should always redefine
 # this macro.
 SUPPORT_FILES = list-of-support-files-for-tool-in-question
 # Directories that might want `make diststuff' run.
-DISTSTUFFDIRS= ld gprof gdb libg++ binutils gnats
+DISTSTUFFDIRS= ld gprof gdb libg++ binutils gnats gas
 # Files where "byacc" (Cygnus version) should be changed to "bison -y" (FSF).
 DISTBISONFILES= binutils/Makefile.in gas/Makefile.in gdb/Makefile.in
 # Directories where "info" should be built.
-DISTDOCDIRS= ld gprof binutils gas bfd libg++ libio gdb gnats send-pr
+DISTDOCDIRS= ld gprof binutils gas bfd libg++ libio gdb gnats send-pr etc
 
 .PHONY: taz
 
@@ -1068,8 +1150,7 @@ taz: $(DEVO_SUPPORT) $(SUPPORT_FILES) \
          if [ -d $$d ]; then \
            case " $$p " in \
            *" $$d "*)  \
-               echo making diststuff in $$d ; \
-               (cd $$d ; pwd ; $(MAKE) diststuff ) || exit 1  ;; \
+               (cd $$d ; $(MAKE) diststuff ) || exit 1  ;; \
            esac ; \
            if [ -d $$d/proto-$$d.dir ]; then \
              ln -s ../$$d/proto-$$d.dir proto-toplev/$$d ; \
@@ -1081,14 +1162,17 @@ taz: $(DEVO_SUPPORT) $(SUPPORT_FILES) \
        $(MAKE) distclean
        #
        mkdir proto-toplev/etc
-       (cd proto-toplev/etc; for i in $(ETC_SUPPORT); do \
+       (cd proto-toplev/etc; \
+        for i in $(ETC_SUPPORT); do \
                ln -s ../../etc/$$i . ; \
-       done)
+        done ; \
+        for i in $(ETC_SUPPORT_PFX); do \
+               ln -s ../../etc/$$i* . ; \
+        done)
        #
-       # Take out texinfo and glob from configurable dirs
+       # Take out texinfo from configurable dirs
        rm proto-toplev/configure.in
        sed -e '/^host_tools=/s/texinfo //' \
-           -e '/^host_libs=/s/glob //' \
            <configure.in >proto-toplev/configure.in
        #
        mkdir proto-toplev/texinfo
@@ -1114,19 +1198,19 @@ gas.tar.gz: $(DIST_SUPPORT) $(GAS_SUPPORT_DIRS) gas
 
 # The FSF "binutils" release includes gprof and ld.
 .PHONY: binutils.tar.gz
-BINUTILS_SUPPORT_DIRS= bfd include libiberty opcodes ld gprof
+BINUTILS_SUPPORT_DIRS= bfd gas include libiberty opcodes ld gprof
 binutils.tar.gz: $(DIST_SUPPORT) $(BINUTILS_SUPPORT_DIRS) binutils
        $(MAKE) -f Makefile.in taz TOOL=binutils \
-               SUPPORT_FILES="$(BINUTILS_SUPPORT_DIRS)"
+               SUPPORT_FILES="$(BINUTILS_SUPPORT_DIRS) makeall.bat configure.bat"
 
 .PHONY: gas+binutils.tar.gz
 GASB_SUPPORT_DIRS= $(GAS_SUPPORT_DIRS) binutils ld gprof
 gas+binutils.tar.gz: $(DIST_SUPPORT) $(GASB_SUPPORT_DIRS) gas
        $(MAKE) -f Makefile.in taz TOOL=gas \
-               SUPPORT_FILES="$(GASB_SUPPORT_DIRS)"
+               SUPPORT_FILES="$(GASB_SUPPORT_DIRS) makeall.bat configure.bat"
 
 .PHONY: libg++.tar.gz
-LIBGXX_SUPPORT_DIRS=include libio librx libiberty xiberty
+LIBGXX_SUPPORT_DIRS=include libstdc++ libio librx libiberty xiberty
 libg++.tar.gz: $(DIST_SUPPORT) libg++
        $(MAKE) -f Makefile.in taz TOOL=libg++ \
                SUPPORT_FILES="$(LIBGXX_SUPPORT_DIRS)"
@@ -1137,10 +1221,33 @@ gnats.tar.gz: $(DIST_SUPPORT) $(GNATS_SUPPORT_DIRS) gnats
                SUPPORT_FILES="$(GNATS_SUPPORT_DIRS)"
 
 .PHONY: gdb.tar.gz
-GDB_SUPPORT_DIRS= bfd glob include libiberty mmalloc opcodes readline sim
+GDB_SUPPORT_DIRS= bfd include libiberty mmalloc opcodes readline sim utils
+GDBTK_SUPPORT_DIRS= `if [ -d tcl -a -d tk ] ; then echo tcl tk ; fi`
 gdb.tar.gz: $(DIST_SUPPORT) $(GDB_SUPPORT_DIRS) gdb
        $(MAKE) -f Makefile.in taz TOOL=gdb \
-               SUPPORT_FILES="$(GDB_SUPPORT_DIRS)"
+               SUPPORT_FILES="$(GDB_SUPPORT_DIRS) $(GDBTK_SUPPORT_DIRS)"
+
+.PHONY: newlib.tar.gz
+NEWLIB_SUPPORT_DIRS=libgloss
+# taz configures for the sun4 target which won't configure newlib.
+# We need newlib configured so that the .info files are made.
+# Unfortunately, it is not enough to just configure newlib separately:
+# taz will build the .info files but since SUBDIRS won't contain newlib,
+# distclean won't be run (leaving Makefile, config.status, and the tmp files
+# used in building the .info files, eg: *.def, *.ref).
+# Compensate here by configuring newlib for a simple (no multilib support)
+# cross target (sparc64), building the info files, and doing make distclean
+# ourselves.
+newlib.tar.gz: $(DIST_SUPPORT) $(NEWLIB_SUPPORT_DIRS) newlib
+       rootme=`pwd` ; \
+         cd newlib && ../configure --srcdir $$rootme/newlib \
+               --host sun4 --target sparc64-elf
+       cd newlib ; make info
+       cd newlib ; make distclean
+       $(MAKE) -f Makefile.in taz TOOL=newlib \
+               SUPPORT_FILES="$(NEWLIB_SUPPORT_DIRS)" \
+               DEVO_SUPPORT="$(DEVO_SUPPORT) COPYING.NEWLIB" \
+               DISTDOCDIRS="$(DISTDOCDIRS) newlib"
 
 .NOEXPORT:
 MAKEOVERRIDES=
This page took 0.035987 seconds and 4 git commands to generate.