Thu Feb 4 12:35:02 1993 Ian Lance Taylor (ian@cygnus.com)
[deliverable/binutils-gdb.git] / Makefile.in
index f9068c5035f488243d325a50d7280f4819902a7b..1649869ee4b1685f5fc17046a2c0e58a0541ddc6 100644 (file)
@@ -54,9 +54,12 @@ AR = ar
 AR_FLAGS = rc
 CC = cc
 CFLAGS = -g
+$(start-sanitize-chill)
+CHILLFLAGS = $(CFLAGS)
+CHILL_LIB = -lchill
+$(end-sanitize-chill)
 CXX = gcc
 CXXFLAGS = -g -O
-GCC_FOR_TARGET = ./gcc -B./
 RANLIB = ranlib
 NM = nm
 
@@ -73,12 +76,16 @@ MAKEINFO = `if [ -f $${rootme}/texinfo/C/makeinfo ] ; \
        then echo $${rootme}/texinfo/C/makeinfo ; \
        else echo makeinfo ; fi`
 
+
+# libraries that may need to be augmented on a system-by-system basis
+X11_LIB = -lX11
+
 # compilers to use to create programs which must be run in the build
 # environment.
 CC_FOR_BUILD = $(CC)
 CXX_FOR_BUILD = $(CXX)
 
-SUBDIRS = libiberty mmalloc glob readline opcodes bfd h8300sim z8ksim gdb binutils ld gas tgas gcc libg++ newlib chillrt deja-gnu
+SUBDIRS = "this is set via configure, don't edit this"
 OTHERS = 
 
 ALL = all.normal
@@ -89,7 +96,7 @@ INSTALL_TARGET = install.all
 
 CC_FOR_TARGET = ` \
   if [ -f $${rootme}/gcc/Makefile ] ; then \
-    echo $${rootme}/gcc/gcc -B$${rootme}/gcc/; \
+    echo $${rootme}/gcc/xgcc -B$${rootme}/gcc/; \
   else \
     if [ "$(host_canonical)" = "$(target_canonical)" ] ; then \
       echo $(CC); \
@@ -98,9 +105,33 @@ CC_FOR_TARGET = ` \
     fi; \
   fi`
 
+GCC_FOR_TARGET = ` \
+  if [ -f $${rootme}/gcc/Makefile ] ; then \
+    echo $${rootme}/gcc/xgcc -B$${rootme}/gcc/; \
+  else \
+    if [ "$(host_canonical)" = "$(target_canonical)" ] ; then \
+      echo $(CC); \
+    else \
+      t='$(program_transform_name)'; echo gcc | sed -e '' $$t; \
+    fi; \
+  fi`
+
+$(start-sanitize-chill)
+CHILL_FOR_TARGET = ` \
+  if [ -f $${rootme}/gcc/Makefile ] ; then \
+    echo $${rootme}/gcc/xgcc -B$${rootme}/gcc/ -L$${rootme}/chillrt/; \
+  else \
+    if [ "$(host_canonical)" = "$(target_canonical)" ] ; then \
+      echo $(CC); \
+    else \
+      t='$(program_transform_name)'; echo gcc | sed -e '' $$t; \
+    fi; \
+  fi`
+$(end-sanitize-chill)
+
 CXX_FOR_TARGET = ` \
   if [ -f $${rootme}/gcc/Makefile ] ; then \
-    echo $${rootme}/gcc/gcc -B$${rootme}/gcc/; \
+    echo $${rootme}/gcc/xgcc -B$${rootme}/gcc/; \
   else \
     if [ "$(host_canonical)" = "$(target_canonical)" ] ; then \
       echo $(CXX); \
@@ -179,6 +210,11 @@ FLAGS_TO_PASS = \
        "CC=$(CC)" \
        "CC_FOR_BUILD=$(CC_FOR_BUILD)" \
        "CFLAGS=$(CFLAGS)" \
+$(start-sanitize-chill)\
+       "CHILLFLAGS=$(CHILLFLAGS)" \
+       "CHILL_FOR_TARGET=$(CHILL_FOR_TARGET)" \
+       "CHILL_LIB=$(CHILL_LIB)" \
+$(end-sanitize-chill)\
        "GCC_FOR_TARGET=$(GCC_FOR_TARGET)" \
        "INSTALL=$(INSTALL)" \
        "INSTALL_DATA=$(INSTALL_DATA)" \
@@ -195,12 +231,14 @@ FLAGS_TO_PASS = \
 
 # Flags that are concerned with the location of the X11 include files
 # and library files
+
 X11_FLAGS_TO_PASS = \
        "X11_INCLUDE_FLAGS=$(X11_INCLUDE_FLAGS)" \
-       "X11_LIB_FLAGS=$(X11_LIB_FLAGS)"
+       "X11_LIB_FLAGS=$(X11_LIB_FLAGS)" \
+       "X11_LIB=$(X11_LIB)"
 
 # Flags to pass down to makes which are built with the target
-# environment (e.g. libg++, xiberty, newlib, chillrt).  -- keep these in alpha order please
+# environment (e.g. libg++, xiberty, newlib).  -- keep these in alpha order please
 TARGET_FLAGS_TO_PASS = \
        "AR=$(AR_FOR_TARGET)" \
        "AR_FLAGS=$(AR_FLAGS)" \
@@ -226,6 +264,36 @@ TARGET_FLAGS_TO_PASS = \
        "prefix=$(prefix)" \
        "tooldir=$(tooldir)" 
 
+# Flags to pass down to gcc.  gcc builds a library, libgcc.a, so it
+# unfortunately needs the native compiler and the target ar and
+# ranlib.  Keep these in alphabetical order, please.
+GCC_FLAGS_TO_PASS = \
+       "AR=$(AR_FOR_TARGET)" \
+       "AR_FLAGS=$(AR_FLAGS)" \
+       "AR_FOR_TARGET=$(AR_FOR_TARGET)" \
+       "AS=$(AS)" \
+       "BISON=$(BISON)" \
+       "CXX=$(CXX)" \
+       "CXX_FOR_BUILD=$(CXX_FOR_BUILD)" \
+       "CXXFLAGS=$(CXXFLAGS)" \
+       "CC=$(CC)" \
+       "CC_FOR_BUILD=$(CC_FOR_BUILD)" \
+       "CFLAGS=$(CFLAGS)" \
+       "INSTALL=$(INSTALL)" \
+       "INSTALL_DATA=$(INSTALL_DATA)" \
+       "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \
+       "LDFLAGS=$(LDFLAGS)" \
+       "LEX=$(LEX)" \
+       "LOADLIBES=$(LOADLIBES)" \
+       "MAKEINFO=$(MAKEINFO)" \
+       "NM=$(NM)" \
+       "RANLIB=$(RANLIB_FOR_TARGET)" \
+       "RANLIB_FOR_TARGET=$(RANLIB_FOR_TARGET)" \
+       "XTRAFLAGS=$(XTRAFLAGS)" \
+       "exec_prefix=$(exec_prefix)" \
+       "prefix=$(prefix)" \
+       "tooldir=$(tooldir)" 
+
 # The first rule in the file had better be this one.  Don't put any above it.
 all:   $(ALL)
 
@@ -251,18 +319,26 @@ install-dir.info:
 
 all.normal: all-m4 all-autoconf all-libiberty all-mmalloc all-texinfo \
        all-byacc all-flex all-opcodes all-bfd all-ld all-gas all-tgas \
-       all-gcc all-binutils  all-libg++ all-readline all-z8ksim all-h8300sim all-gdb \
+       all-gcc all-binutils  all-libg++ all-readline all-sim all-gdb \
        all-make all-rcs all-cvs all-diff all-grep \
        all-patch all-emacs all-ispell all-etc \
        all-tcl all-tk all-expect \
-       all-newlib all-chillrt all-gprof all-send_pr all-libm all-deja-gnu \
+       all-newlib \
+       $(start-sanitize-chill) \
+       all-chillrt \
+       $(end-sanitize-chill) \
+       all-gprof all-send_pr all-libm all-deja-gnu \
        all-fileutils all-find all-gawk all-sed all-shellutils \
-       all-textutils all-time all-wdiff
+       all-textutils all-time all-wdiff all-uudecode 
 
 
 all.cross: all-libiberty all-mmalloc all-gas all-byacc all-flex all-ld \
-        all-opcodes all-z8ksim all-h8300sim all-bfd all-readline all-gdb all-binutils all-gcc \
-       all-newlib all-chillrt all-deja-gnu
+       all-opcodes all-bfd all-readline all-sim \
+       all-gdb all-binutils all-gcc all-newlib \
+       $(start-sanitize-chill) \
+       all-chillrt \
+       $(end-sanitize-chill) \
+       all-deja-gnu
 
 .PHONY: clean distclean mostlyclean realclean do_clean
 
@@ -321,7 +397,9 @@ install-no-fixedincludes: install-dirs gcc-no-fixedincludes \
        install-make \
        install-mmalloc \
        install-newlib \
+       $(start-sanitize-chill) \
        install-chillrt \
+       $(end-sanitize-chill) \
        install-patch \
        install-rcs \
        install-readline \
@@ -329,26 +407,39 @@ install-no-fixedincludes: install-dirs gcc-no-fixedincludes \
        install-tcl \
        install-texinfo \
        install-tk  \
-       install-z8ksim \
-       install-h8300sim \
+       install-sim \
        install-fileutils install-find install-gawk install-m4 install-sed install-shellutils \
-       install-textutils install-time install-wdiff
+       install-textutils install-time install-wdiff install-uudecode
 
+#
+# Install the gcc headers files, but not the fixed include files,
+# which we are not allowed to distribute.  This rule is very dependent
+# on the workings of the gcc Makefile.in.
+#
 gcc-no-fixedincludes:
-       @if [ -f ./gcc/Makefile ] ; then \
-               rootme=`pwd` ; export rootme ; \
-               (cd ./gcc; \
-               $(MAKE) $(FLAGS_TO_PASS) install install-man \
-                       "INSTALL_HEADERS=install-common-headers install-float-h install-limits-h") ; \
-       else \
-               true ; \
-       fi
+       @if [ -f ./gcc/Makefile ]; then \
+         rm -rf gcc/tmp-include; \
+         mv gcc/include gcc/tmp-include 2>/dev/null; \
+         mkdir gcc/include; \
+         touch gcc/stmp-fixincludes; \
+         rm -f gcc/stmp-headers; \
+         rootme=`pwd`; export rootme; \
+         srcroot=`cd $(srcdir); pwd` ; export srcroot; \
+         (cd ./gcc; \
+          $(MAKE) $(GCC_FLAGS_TO_PASS) install); \
+         rm -rf gcc/include; \
+         mv gcc/tmp-include gcc/include 2>/dev/null; \
+       else true; fi
 
 install.cross: install-dirs install-libiberty install-mmalloc \
         install-binutils install-opcodes install-byacc install-flex \
         install-ld install-gas install-readline \
         install-glob install-gdb install-mmalloc \
-        install-newlib install-chillrt install-gcc install-etc install-deja-gnu
+        install-newlib \
+       $(start-sanitize-chill) \
+       install-chillrt \
+       $(end-sanitize-chill) \
+       install-gcc install-etc install-deja-gnu
 
 ### deja-gnu
 all-deja-gnu: force
@@ -560,7 +651,7 @@ install-newlib: force
 
 ### start-sanitize-chill
 ### chillrt
-all-chillrt: all-binutils all-ld all-gas all-gcc
+all-chillrt: all-binutils all-ld all-gas all-gcc all-newlib
        @if [ -f ./chillrt/Makefile ] ; then \
                rootme=`pwd` ; export rootme ; \
                srcroot=`cd $(srcdir); pwd` ; export srcroot ; \
@@ -638,11 +729,12 @@ install-flex: force
                true ; \
        fi
 ### gcc
-all-gcc: all-libiberty all-byacc all-binutils
+all-gcc: all-libiberty all-byacc all-binutils all-gas
        @if [ -f ./gcc/Makefile ] ; then \
                rootme=`pwd` ; export rootme ; \
+               srcroot=`cd $(srcdir); pwd` ; export srcroot ; \
                (cd ./gcc; \
-               $(MAKE) $(FLAGS_TO_PASS) all) ; \
+               $(MAKE) $(GCC_FLAGS_TO_PASS) all) ; \
        else \
                true ; \
        fi
@@ -650,8 +742,9 @@ all-gcc: all-libiberty all-byacc all-binutils
 install-gcc: force
        @if [ -f ./gcc/Makefile ] ; then \
                rootme=`pwd` ; export rootme ; \
+               srcroot=`cd $(srcdir); pwd` ; export srcroot ; \
                (cd ./gcc; \
-               $(MAKE) $(FLAGS_TO_PASS) install) ; \
+               $(MAKE) $(GCC_FLAGS_TO_PASS) install) ; \
        else \
                true ; \
        fi
@@ -1039,45 +1132,25 @@ install-expect: force
                true ; \
        fi
 
-### z8ksim
-all-z8ksim: all-bfd 
-       @if [ -f ./z8ksim/Makefile ] ; then \
+### sim
+all-sim: all-bfd 
+       @if [ -f ./sim/Makefile ] ; then \
                rootme=`pwd` ; export rootme ; \
-               (cd ./z8ksim; \
+               (cd ./sim; \
                $(MAKE) $(FLAGS_TO_PASS) all) ; \
        else \
                true ; \
        fi
 
-install-z8ksim: force
-       @if [ -f ./z8ksim/Makefile ] ; then \
+install-sim: force
+       @if [ -f ./sim/Makefile ] ; then \
                rootme=`pwd` ; export rootme ; \
-               (cd ./z8ksim; \
+               (cd ./sim; \
                $(MAKE) $(FLAGS_TO_PASS) install) ; \
        else \
                true ; \
        fi
 
-### h8300sim:
-all-h8300sim:  all-bfd 
-       @if [ -f ./h8300sim/Makefile ] ; then \
-               rootme=`pwd` ; export rootme ; \
-               (cd ./h8300sim; \
-               $(MAKE) $(FLAGS_TO_PASS) all) ; \
-       else \
-               true ; \
-       fi
-
-install-h8300sim: force
-       @if [ -f ./h8300sim/Makefile ] ; then \
-               rootme=`pwd` ; export rootme ; \
-               (cd ./h8300sim; \
-               $(MAKE) $(FLAGS_TO_PASS) install) ; \
-       else \
-               true ; \
-       fi
-
-
 ### fileutils
 all-fileutils: force
        @if [ -f ./fileutils/Makefile ] ; then \
@@ -1197,6 +1270,23 @@ install-wdiff: force
                true ; \
        fi
 
+### uudecode
+all-uudecode: all-libiberty
+       @if [ -f ./uudecode/Makefile ] ; then \
+         rootme=`pwd` ; export rootme ; \
+               (cd ./uudecode; $(MAKE) $(FLAGS_TO_PASS) all) ; \
+       else \
+               true ; \
+       fi
+
+install-uudecode: force
+       @if [ -f ./uudecode/Makefile ] ; then \
+               rootme=`pwd` ; export rootme ; \
+               (cd ./uudecode; $(MAKE) $(FLAGS_TO_PASS) install) ; \
+       else \
+               true ; \
+       fi
+
 ### shellutils
 all-shellutils: force
        @if [ -f ./shellutils/Makefile ] ; then \
@@ -1236,16 +1326,40 @@ install-textutils: force
 ### other supporting targets
 
 subdir_do:
+### start-sanitize-chill
+### 
+### WARNING: THIS IS VERY UGLY AND I DID NOT DO THIS WILLINGLY
+###
+### if you change the code for libg++ et al, also change the
+### code for chillrt
+###
+### end-sanitize-chill
        @for i in $(DODIRS); do \
          if [ -f ./$$i/localenv ] || [ -f ./$$i/Makefile ] ; then \
            case $$i in \
-           libg++ | xiberty | newlib | chillrt) \
+           libg++ | xiberty | newlib) \
+             if (rootme=`pwd` ; export rootme ; \
+                 srcroot=`cd $(srcdir); pwd` ; export srcroot ; \
+                 cd ./$$i ; \
+                 $(MAKE) $(TARGET_FLAGS_TO_PASS) $(DO)) ; then true ; \
+             else exit 1 ; fi \
+             ;; \
+       $(start-sanitize-chill) \
+           chillrt) \
              if (rootme=`pwd` ; export rootme ; \
                  srcroot=`cd $(srcdir); pwd` ; export srcroot ; \
                  cd ./$$i ; \
                  $(MAKE) $(TARGET_FLAGS_TO_PASS) $(DO)) ; then true ; \
              else exit 1 ; fi \
              ;; \
+       $(end-sanitize-chill) \
+           gcc) \
+             if (rootme=`pwd` ; export rootme ; \
+                 srcroot=`cd $(srcdir); pwd` ; export srcroot ; \
+                 cd ./$$i ; \
+                 $(MAKE) $(GCC_FLAGS_TO_PASS) $(DO)) ; then true ; \
+             else exit 1 ; fi \
+             ;; \
            *) \
              if (rootme=`pwd` ; export rootme ; \
                  cd ./$$i ; \
@@ -1336,11 +1450,11 @@ Makefile: $(srcdir)/Makefile.in $(host_makefile_frag) $(target_makefile_frag)
 #
 # Build GDB distributions that contain BFD, Include, Libiberty, Readline, etc
 
-DEVO_SUPPORT= README cfg-paper.texi Makefile.in configure configure.in \
-       config.sub config configure.man configure.texi move-if-change \
+DEVO_SUPPORT= README Makefile.in configure configure.in \
+       config.guess config.sub config etc move-if-change \
        COPYING.LIB
 GDB_SUPPORT_DIRS= bfd include libiberty mmalloc opcodes readline glob
-GDB_SUPPORT_FILES= $(GDB_SUPPORT_DIRS) texinfo/fsf/texinfo.tex
+GDB_SUPPORT_FILES= $(GDB_SUPPORT_DIRS)
 
 setup-dirs: force
        ./configure sun4
@@ -1352,7 +1466,7 @@ gdb.tar.Z: setup-dirs
        (cd gdb; $(MAKE) -f Makefile.in make-proto-gdb.dir)
        $(MAKE) $(MFLAGS) -f Makefile.in make-gdb.tar.Z
 
-make-gdb.tar.Z: $(DEVO_SUPPORT) $(GDB_SUPPORT_DIRS) gdb texinfo/fsf/texinfo.tex
+make-gdb.tar.Z: $(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 \
@@ -1365,21 +1479,23 @@ make-gdb.tar.Z: $(DEVO_SUPPORT) $(GDB_SUPPORT_DIRS) gdb texinfo/fsf/texinfo.tex
        ln proto-toplev/gdb/COPYING proto-toplev/include/COPYING
        rm                          proto-toplev/readline/COPYING
        ln proto-toplev/gdb/COPYING proto-toplev/readline/COPYING
-       # Take out texinfo from configurable dirs
+
+       # Take out texinfo and glob from configurable dirs
        rm proto-toplev/configure.in
-       sed '/^configdirs=/s/texinfo //' <configure.in >proto-toplev/configure.in
-       # Take out glob from buildable dirs
-       rm proto-toplev/Makefile.in
+       sed -e '/^host_tools=/s/texinfo //' \
+           -e '/^host_libs=/s/glob //' \
+           <configure.in >proto-toplev/configure.in
 
-       sed -e '/^SUBDIRS =/s/glob //' \
-           -e '/^all\.normal: /s/\all-texinfo //' \
-           -e '/^clean: /s/clean-texinfo //' \
-           -e '/^install\.all: /s/install-texinfo //' \
+       # 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 =/,\/^$$/c\
+               BISON = bison -y' \
        <Makefile.in >proto-toplev/Makefile.in
 
        mkdir proto-toplev/texinfo
-       mkdir proto-toplev/texinfo/fsf
-       ln -s ../../../texinfo/fsf/texinfo.tex proto-toplev/texinfo/fsf/
+       ln -s ../../texinfo/texinfo.tex proto-toplev/texinfo/
        chmod og=u `find proto-toplev -print`
        (VER=`sed <gdb/Makefile.in -n 's/VERSION = //p'`; \
                echo "==> Making gdb-$$VER.tar.Z"; \
This page took 0.030151 seconds and 4 git commands to generate.