* valops.c (value_coerce_array): Handle STRINGs as well as ARRAYs.
[deliverable/binutils-gdb.git] / Makefile.in
index 1452ba7205a9c6a7142da2215270ccf5cd92e776..f3fa90fef4e4bb8b39f839dffd3b15ab6f057982 100644 (file)
@@ -54,18 +54,24 @@ AS = as
 AR = ar
 AR_FLAGS = rc
 CC = cc
+
+# 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
+
 # start-sanitize-chill
 CHILLFLAGS = $(CFLAGS)
 CHILL_LIB = -lchill
 # end-sanitize-chill
 CXX = gcc
+
+# Use -O to stress test the compiler.
 CXXFLAGS = -g -O
+
 RANLIB = ranlib
 NM = nm
 MUNCH_NM = $(NM)
 GZIP = gzip
-COMPRESS = compress
 
 # BISON: This line sed'ed to BISON = bison -y for FSF releases, don't remove.
 BISON = `if [ -f $${rootme}/byacc/byacc ] ; \
@@ -77,9 +83,14 @@ LEX = `if [ -f $${rootme}/flex/flex ] ; \
        then echo $${rootme}/flex/flex ; \
        else echo flex ; fi`
 
+M4 = `if [ -f $${rootme}/m4/m4 ] ; \
+       then echo $${rootme}/m4/m4 ; \
+       else echo m4 ; fi`
+
 MAKEINFO = `if [ -f $${rootme}/texinfo/makeinfo/makeinfo ] ; \
        then echo $${rootme}/texinfo/makeinfo/makeinfo ; \
        else echo makeinfo ; fi`
+
 # This just becomes part of the MAKEINFO definition passed down to
 # sub-makes.  It lets flags be given on the command line while still
 # using the makeinfo from the object tree.
@@ -160,7 +171,7 @@ AS_FOR_TARGET = ` \
   fi`
 
 AR_FOR_TARGET = ` \
-  if [ -f $${rootme}/binutils/Makefile ] ; then \
+  if [ -f $${rootme}/binutils/ar ] ; then \
     echo $${rootme}/binutils/ar ; \
   else \
     if [ "$(host_canonical)" = "$(target_canonical)" ] ; then \
@@ -171,7 +182,7 @@ AR_FOR_TARGET = ` \
   fi`
 
 RANLIB_FOR_TARGET = ` \
-  if [ -f $${rootme}/binutils/Makefile ] ; then \
+  if [ -f $${rootme}/binutils/ranlib ] ; then \
     echo $${rootme}/binutils/ranlib ; \
   else \
     if [ "$(host_canonical)" = "$(target_canonical)" ] ; then \
@@ -204,8 +215,6 @@ XTRAFLAGS = ` \
      echo ; \
   fi`
 
-PRMS = all-prms
-
 #### host and target specific makefile fragments come in here.
 ###
 
@@ -227,19 +236,19 @@ BASE_FLAGS_TO_PASS = \
        "CXX_FOR_BUILD=$(CXX_FOR_BUILD)" \
        "CXXFLAGS=$(CXXFLAGS)" \
        "CXX_FOR_TARGET=$(CXX_FOR_TARGET)" \
-       "GCC_FOR_TARGET=$$(CC_FOR_TARGET)" \
+       "GCC_FOR_TARGET=$(CC_FOR_TARGET)" \
        "INSTALL=$(INSTALL)" \
        "INSTALL_DATA=$(INSTALL_DATA)" \
        "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \
        "INSTALL_XFORM=$(INSTALL_XFORM)" \
        "LDFLAGS=$(LDFLAGS)" \
        "LEX=$(LEX)" \
-       "LOADLIBES=$(LOADLIBES)" \
+       "M4=$(M4)" \
        "MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)" \
        "MUNCH_NM=$(MUNCH_NM)" \
        "NM_FOR_TARGET=$(NM_FOR_TARGET)" \
-       "PRMS=$(PRMS)" \
        "RANLIB_FOR_TARGET=$(RANLIB_FOR_TARGET)" \
+       "SHELL=$(SHELL)" \
        "EXPECT=$(EXPECT)" \
        "RUNTEST=$(RUNTEST)" \
        "RUNTESTFLAGS=$(RUNTESTFLAGS)" \
@@ -317,6 +326,7 @@ ALL_MODULES = \
        all-cvs \
        all-dejagnu \
        all-diff \
+       all-dosutils \
        all-etc \
        all-fileutils \
        all-find \
@@ -336,6 +346,7 @@ ALL_MODULES = \
        all-make \
        all-mmalloc \
        all-opcodes \
+       all-pagas \
        all-patch \
        all-prms \
        all-rcs \
@@ -384,6 +395,7 @@ CHECK_MODULES = \
        check-make \
        check-mmcheckoc \
        check-opcodes \
+       check-pagas \
        check-patch \
        check-prms \
        check-rcs \
@@ -432,6 +444,7 @@ INSTALL_MODULES = \
        install-make \
        install-mmalloc \
        install-opcodes \
+       install-pagas \
        install-patch \
        install-prms \
        install-rcs \
@@ -455,6 +468,7 @@ INSTALL_MODULES = \
 ALL_X11_MODULES = \
        all-emacs \
        all-expect \
+       all-gash \
        all-tclX \
        all-tk
 
@@ -463,6 +477,7 @@ ALL_X11_MODULES = \
 CHECK_X11_MODULES = \
        check-emacs \
        check-expect \
+       check-gash \
        check-tclX \
        check-tk
 
@@ -471,6 +486,7 @@ CHECK_X11_MODULES = \
 INSTALL_X11_MODULES = \
        install-emacs \
        install-expect \
+       install-gash \
        install-tclX \
        install-tk
 
@@ -480,6 +496,7 @@ ALL_TARGET_MODULES = \
        $(start-sanitize-chill) \
        all-chillrt \
        $(end-sanitize-chill) \
+       all-libio \
        all-libg++ \
        all-newlib \
        all-xiberty
@@ -490,6 +507,7 @@ CHECK_TARGET_MODULES = \
        $(start-sanitize-chill) \
        check-chillrt \
        $(end-sanitize-chill) \
+       check-libio \
        check-libg++ \
        check-newlib \
        check-xiberty
@@ -500,15 +518,16 @@ INSTALL_TARGET_MODULES = \
        $(start-sanitize-chill) \
        install-chillrt \
        $(end-sanitize-chill) \
+       install-libio \
        install-libg++ \
        install-newlib \
        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 = libg++ | newlib | xiberty
+TARGET_LIBS = libio | libg++ | newlib | xiberty
 # start-sanitize-chill
-TARGET_LIBS = chillrt | libg++ | newlib | xiberty
+TARGET_LIBS = chillrt | libio | libg++ | newlib | xiberty
 # end-sanitize-chill
 
 # The first rule in the file had better be this one.  Don't put any above it.
@@ -651,7 +670,7 @@ gcc-no-fixedincludes:
          mv gcc/include gcc/tmp-include 2>/dev/null; \
          mkdir gcc/include; \
          cp $(srcdir)/gcc/gsyslimits.h gcc/include/syslimits.h; \
-         touch gcc/stmp-fixinc; \
+         touch gcc/stmp-fixinc gcc/stmp-fixproto; \
          rm -f gcc/stmp-headers gcc/stmp-int-hdrs; \
          rootme=`pwd`; export rootme; \
          srcroot=`cd $(srcdir); pwd` ; export srcroot; \
@@ -815,7 +834,7 @@ install-gcc:
        fi
 
 # This is a list of inter-dependencies among modules.
-all-autoconf:
+all-autoconf: all-m4
 all-bfd:
 all-binutils: all-libiberty all-opcodes all-bfd all-flex
 all-byacc:
@@ -832,31 +851,33 @@ all-fileutils: all-libiberty
 all-find:
 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-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-gprof: all-libiberty all-bfd
-all-grep:
+all-grep: all-libiberty
 all-gzip: all-libiberty
 all-hello: all-libiberty
 all-indent:
 all-ispell: all-emacs
 all-ld: all-libiberty all-bfd all-byacc all-flex
-all-libg++: all-gas all-ld all-gcc all-xiberty all-newlib
+all-libg++: all-gas all-pagas all-ld all-gcc all-xiberty all-newlib all-libio
+all-libio: all-gas all-pagas all-ld all-gcc all-xiberty all-newlib 
 all-libiberty:
 all-m4: all-libiberty
 all-make: all-libiberty
 all-mmalloc:
-all-newlib: all-binutils all-gas all-gcc
+all-newlib: all-binutils all-gas all-pagas all-gcc
 all-opcodes: all-bfd
 all-patch:
-all-prms:
+all-prms: all-libiberty
 all-rcs:
 all-readline:
 all-recode: all-libiberty
-all-sed:
-all-send-pr:
+all-sed: all-libiberty
+all-send-pr: all-prms
 all-shellutils:
 all-sim: all-libiberty all-bfd
 all-tar: all-libiberty
@@ -882,7 +903,7 @@ MAKEDIRS= \
 install-dirs:
        @for i in $(MAKEDIRS) ; do \
                echo Making $$i... ; \
-               parent=`echo $$i|sed -e 's@/[^/]*$$@@'`; \
+               parent=`echo $$i | sed -e 's@/[^/]*$$@@' | sed -e 's@^$$@/@'`; \
                if [ -d $$parent ] ; then true ; else mkdir $$parent ; fi ; \
                if [ ! -d $$i ] ; then \
                        if mkdir $$i ; then \
@@ -927,33 +948,41 @@ ls:
 
 # with the gnu make, this is done automatically.
 
-Makefile: $(srcdir)/Makefile.in $(host_makefile_frag) $(target_makefile_frag)
+Makefile: Makefile.in configure.in $(host_makefile_frag) $(target_makefile_frag)
        $(SHELL) ./config.status
 
 #
-# Build GDB distributions that contain BFD, Include, Libiberty, Readline, etc
+# Support for building net releases
 
+# Files in devo used in any net release.
+# ChangeLog omitted because it may refer to files which are not in this
+# 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 \
        COPYING COPYING.LIB install.sh
+
+# Files in devo/etc used in any net release.
+# ChangeLog omitted because it may refer to files which are not in this
+# 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
+
 GDB_SUPPORT_DIRS= bfd include libiberty mmalloc opcodes readline glob sim
 GDB_SUPPORT_FILES= $(GDB_SUPPORT_DIRS)
 
-.PHONY: setup-dirs-gdb gdb.tar.Z make-gdb.tar.Z
+.PHONY: setup-dirs-gdb gdb.tar.gz make-gdb.tar.gz
 setup-dirs-gdb:
        ./configure sun4
        $(MAKE) clean
        ./configure -rm sun4
        chmod og=u `find etc $(DEVO_SUPPORT) $(GDB_SUPPORT_FILES) -print`
 
-gdb.tar.Z: setup-dirs-gdb
+gdb.tar.gz: setup-dirs-gdb
        (cd gdb; $(MAKE) -f Makefile.in make-proto-gdb.dir BISON="byacc")
        (cd gdb; $(MAKE) -f Makefile.in make-proto-testsuite.dir)
-       $(MAKE) $(MFLAGS) -f Makefile.in make-gdb.tar.Z
+       $(MAKE) $(MFLAGS) -f Makefile.in make-gdb.tar.gz
 
-make-gdb.tar.Z: $(DEVO_SUPPORT) $(GDB_SUPPORT_DIRS) gdb texinfo/texinfo.tex
+make-gdb.tar.gz: $(DEVO_SUPPORT) $(GDB_SUPPORT_DIRS) gdb texinfo/texinfo.tex
        rm -rf proto-toplev; mkdir proto-toplev
        ln -s ../gdb/proto-gdb.dir proto-toplev/gdb
        (cd proto-toplev; for i in $(DEVO_SUPPORT) $(GDB_SUPPORT_DIRS); do \
@@ -971,6 +1000,12 @@ make-gdb.tar.Z: $(DEVO_SUPPORT) $(GDB_SUPPORT_DIRS) gdb texinfo/texinfo.tex
        rm                          proto-toplev/readline/COPYING
        ln proto-toplev/gdb/COPYING proto-toplev/readline/COPYING
 
+       # Change the bug reporting address in configure to bug-gdb
+       rm proto-toplev/configure
+       sed -e 's/configure@cygnus.com/bug-gdb@prep.ai.mit.edu/' \
+           <configure >proto-toplev/configure
+       chmod a+x proto-toplev/configure
+
        # Take out texinfo and glob from configurable dirs
        rm proto-toplev/configure.in
        sed -e '/^host_tools=/s/texinfo //' \
@@ -987,14 +1022,14 @@ make-gdb.tar.Z: $(DEVO_SUPPORT) $(GDB_SUPPORT_DIRS) gdb texinfo/texinfo.tex
 
        mkdir proto-toplev/texinfo
        ln -s ../../texinfo/texinfo.tex proto-toplev/texinfo/
+       ln -s ../../texinfo/gpl.texinfo proto-toplev/texinfo/
        ln -s ../../texinfo/tex3patch   proto-toplev/texinfo/
        chmod og=u `find proto-toplev -print`
        (VER=`sed <gdb/Makefile.in -n 's/VERSION = //p'`; \
-               ln -s proto-toplev gdb-$$VER; \
-               echo "==> Making gdb-$$VER.tar.Z"; \
-               tar cfh - gdb-$$VER | $(COMPRESS) -v >gdb-$$VER.tar.Z; \
                echo "==> Making gdb-$$VER.tar.gz"; \
-               tar cfh - gdb-$$VER | $(GZIP) -v -9 >gdb-$$VER.tar.gz)
+               rm -f gdb-$$VER; ln -s proto-toplev gdb-$$VER; \
+               tar cfh - gdb-$$VER \
+               | $(GZIP) -v -9 >gdb-$$VER.tar.gz)
 
        # Make the testsuite archive separately.
        ln -s ../../gdb/proto-testsuite.dir/testsuite proto-toplev/gdb/testsuite
@@ -1006,27 +1041,48 @@ make-gdb.tar.Z: $(DEVO_SUPPORT) $(GDB_SUPPORT_DIRS) gdb texinfo/texinfo.tex
        ln proto-toplev/gdb/COPYING proto-toplev/gdb/testsuite/COPYING
        chmod og=u `find proto-toplev/gdb/testsuite -print`
        (VER=`sed <gdb/Makefile.in -n 's/VERSION = //p'`; \
-               echo "==> Making gdb-$$VER-testsuite.tar.Z"; \
-               tar cfh - gdb-$$VER/configure gdb-$$VER/config.guess \
-                       gdb-$$VER/config.sub gdb-$$VER/move-if-change \
-                       gdb-$$VER/gdb/testsuite | \
-                       $(COMPRESS) -v >gdb-$$VER-testsuite.tar.Z; \
                echo "==> Making gdb-$$VER-testsuite.tar.gz"; \
                tar cfh - gdb-$$VER/configure gdb-$$VER/config.guess \
                        gdb-$$VER/config.sub gdb-$$VER/move-if-change \
-                       gdb-$$VER/gdb/testsuite \
-                       $(GZIP) -v -9 >gdb-$$VER-testsuite.tar.gz)
+                       gdb-$$VER/gdb/testsuite \
+                       $(GZIP) -v -9 >gdb-$$VER-testsuite.tar.gz)
 
 # 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++
+DISTSTUFFDIRS= ld gprof gdb libg++ binutils
+# 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
 
 .PHONY: taz
 
-taz: $(DEVO_SUPPORT) $(SUPPORT_FILES) texinfo/texinfo.tex texinfo/gpl.texinfo
+taz: $(DEVO_SUPPORT) $(SUPPORT_FILES) \
+  texinfo/texinfo.tex texinfo/gpl.texinfo texinfo/lgpl.texinfo
+       # Make sure "diststuff" files get built properly.
+       for f in $(DISTBISONFILES) ; do \
+         if [ -r $$f ]; then \
+           sed '/^BISON *=.*$$/s/.*/BISON = bison -y/' <$$f >tmp ; \
+           mv -f tmp $$f ; \
+         else true; fi ; \
+       done
+       # Take out texinfo from a few places; make simple BISON=bison line.
+       sed -e '/^all\.normal: /s/\all-texinfo //' \
+           -e '/^      install-texinfo /d' \
+           -e '/^BISON = /,/^$$/d' \
+           -e '/^# BISON:/s/.*/BISON = bison -y/' \
+       <Makefile.in >tmp
+       mv -f tmp Makefile.in
+       #
        ./configure sun4
+       # Doc files don't change; include them in distribution.
+       for f in $(DISTDOCDIRS) ; do \
+         if [ -r $$f/Makefile ]; then \
+           (cd $$f ; $(MAKE) info) || exit 1 ; \
+         else true ; fi ; \
+       done
        # Make links, and run "make diststuff" when needed.
        # The `echo' for setting `p' is to convert all whitespace to spaces.
        # Then the `case' further below should tell whether $$d is in
@@ -1039,7 +1095,7 @@ taz: $(DEVO_SUPPORT) $(SUPPORT_FILES) texinfo/texinfo.tex texinfo/gpl.texinfo
            case " $$p " in \
            *" $$d "*)  \
                echo making diststuff in $$d ; \
-               (cd $$d ; $(MAKE) diststuff) || exit 1  ;; \
+               (cd $$d ; pwd ; $(MAKE) diststuff ) || exit 1  ;; \
            esac ; \
            if [ -d $$d/proto-$$d.dir ]; then \
              ln -s ../$$d/proto-$$d.dir proto-toplev/$$d ; \
@@ -1061,48 +1117,50 @@ taz: $(DEVO_SUPPORT) $(SUPPORT_FILES) texinfo/texinfo.tex texinfo/gpl.texinfo
            -e '/^host_libs=/s/glob //' \
            <configure.in >proto-toplev/configure.in
        #
-       # Take out texinfo from a few places; make simple BISON=bison line.
-       rm proto-toplev/Makefile.in
-       sed -e '/^all\.normal: /s/\all-texinfo //' \
-           -e '/^      install-texinfo /d' \
-           -e '/^BISON = /,/^$$/d' \
-           -e '/^# BISON:/s/.*/BISON = bison -y/' \
-       <Makefile.in >proto-toplev/Makefile.in
-       #
        mkdir proto-toplev/texinfo
        ln -s ../../texinfo/texinfo.tex proto-toplev/texinfo/
        ln -s ../../texinfo/gpl.texinfo proto-toplev/texinfo/
+       ln -s ../../texinfo/lgpl.texinfo proto-toplev/texinfo/
        ln -s ../../texinfo/tex3patch   proto-toplev/texinfo/
        chmod og=u `find . -print`
        (VER=`sed <$(TOOL)/Makefile.in -n 's/^VERSION *= *//p'`; \
                echo "==> Making $(TOOL)-$$VER.tar.gz"; \
                rm -f $(TOOL)-$$VER; ln -s proto-toplev $(TOOL)-$$VER; \
                tar cfh - $(TOOL)-$$VER \
-               | $(GZIP) -v -9 >$(TOOL)-$$VER.tar.gz)
+               | $(GZIP) -v -9 > $(TOOL)-$$VER.tar.gz )
 
-TEXINFO_SUPPORT= texinfo/texinfo.tex texinfo/gpl.texinfo
+TEXINFO_SUPPORT= texinfo/texinfo.tex texinfo/gpl.texinfo texinfo/lgpl.texinfo
 DIST_SUPPORT= $(DEVO_SUPPORT) $(TEXINFO_SUPPORT)
 
 .PHONY: gas.tar.gz
 GAS_SUPPORT_DIRS= bfd include libiberty opcodes
 gas.tar.gz: $(DIST_SUPPORT) $(GAS_SUPPORT_DIRS) gas
-       $(MAKE) -f Makefile.in taz SUPPORT_FILES="$(GAS_SUPPORT_DIRS)" TOOL=gas
+       $(MAKE) -f Makefile.in taz TOOL=gas \
+               SUPPORT_FILES="$(GAS_SUPPORT_DIRS)"
 
 # The FSF "binutils" release includes gprof and ld.
 .PHONY: binutils.tar.gz
 BINUTILS_SUPPORT_DIRS= bfd include libiberty opcodes ld gprof
 binutils.tar.gz: $(DIST_SUPPORT) $(BINUTILS_SUPPORT_DIRS) binutils
-       $(MAKE) -f Makefile.in taz SUPPORT_FILES="$(BINUTILS_SUPPORT_DIRS)" TOOL=binutils
+       $(MAKE) -f Makefile.in taz TOOL=binutils \
+               SUPPORT_FILES="$(BINUTILS_SUPPORT_DIRS)"
 
 .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 SUPPORT_FILES="$(GASB_SUPPORT_DIRS)" TOOL=gas
+       $(MAKE) -f Makefile.in taz TOOL=gas \
+               SUPPORT_FILES="$(GASB_SUPPORT_DIRS)"
 
 .PHONY: libg++.tar.gz
-LIBGXX_SUPPORT_DIRS=include libiberty xiberty
+LIBGXX_SUPPORT_DIRS=include libio libiberty xiberty
 libg++.tar.gz: $(DIST_SUPPORT) libg++
-       $(MAKE) -f Makefile.in taz SUPPORT_FILES="$(LIBGXX_SUPPORT_DIRS)" TOOL=libg++
+       $(MAKE) -f Makefile.in taz TOOL=libg++ \
+               SUPPORT_FILES="$(LIBGXX_SUPPORT_DIRS)"
+
+GNATS_SUPPORT_DIRS=include libiberty send-pr
+gnats.tar.gz: $(DIST_SUPPORT) $(GNATS_SUPPORT_DIRS) gnats
+       $(MAKE) -f  Makefile.in taz TOOL=gnats \
+               SUPPORT_FILES="$(GNATS_SUPPORT_DIRS)"
 
 .NOEXPORT:
 MAKEOVERRIDES=
This page took 0.028346 seconds and 4 git commands to generate.