home *** CD-ROM | disk | FTP | other *** search
/ Fresh Fish 7 / FreshFishVol7.bin / bbs / gnu / gdb-4.12-src.lha / GNU / src / amiga / gdb-4.12 / Makefile.in < prev    next >
Makefile  |  1994-02-03  |  31KB  |  1,129 lines

  1. #
  2. # Makefile for directory with subdirs to build.
  3. #   Copyright (C) 1990, 1991, 1992, 1993 Free Software Foundation
  4. #
  5. # This file is free software; you can redistribute it and/or modify
  6. # it under the terms of the GNU General Public License as published by
  7. # the Free Software Foundation; either version 2 of the License, or
  8. # (at your option) any later version.
  9. # This program is distributed in the hope that it will be useful,
  10. # but WITHOUT ANY WARRANTY; without even the implied warranty of
  11. # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  12. # GNU General Public License for more details.
  13. # You should have received a copy of the GNU General Public License
  14. # along with this program; if not, write to the Free Software
  15. # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.  */
  16. #
  17.  
  18. srcdir = .
  19.  
  20. prefix = /usr/local
  21.  
  22. exec_prefix = $(prefix)
  23. bindir = $(exec_prefix)/bin
  24. libdir = $(exec_prefix)/lib
  25. tooldir = $(exec_prefix)/$(target)
  26.  
  27. program_transform_name =
  28.  
  29. datadir = $(prefix)/lib
  30. mandir = $(prefix)/man
  31. man1dir = $(mandir)/man1
  32. man2dir = $(mandir)/man2
  33. man3dir = $(mandir)/man3
  34. man4dir = $(mandir)/man4
  35. man5dir = $(mandir)/man5
  36. man6dir = $(mandir)/man6
  37. man7dir = $(mandir)/man7
  38. man8dir = $(mandir)/man8
  39. man9dir = $(mandir)/man9
  40. infodir = $(prefix)/info
  41. includedir = $(prefix)/include
  42. docdir = $(datadir)/doc
  43.  
  44. SHELL = /bin/sh
  45.  
  46. INSTALL = $${srcroot}/install.sh -c
  47. INSTALL_PROGRAM = $(INSTALL)
  48. INSTALL_DATA = $(INSTALL) -m 644
  49. INSTALL_XFORM = $(INSTALL) -t='$(program_transform_name)'
  50.  
  51. AS = as
  52. AR = ar
  53. AR_FLAGS = rc
  54. CC = cc
  55.  
  56. # We don't specify -g -O because many compilers don't support -g -O,
  57. # and/or -O is broken in and of itself.
  58. CFLAGS = -g
  59.  
  60. CXX = gcc
  61.  
  62. # Use -O to stress test the compiler.
  63. CXXFLAGS = -g -O
  64.  
  65. RANLIB = ranlib
  66. NM = nm
  67. MUNCH_NM = $(NM)
  68. # Not plain GZIP, since gzip looks there for extra command-line options.
  69. GZIPPROG = gzip
  70.  
  71. BISON = bison -y
  72. LEX = `if [ -f $${rootme}/flex/flex ] ; \
  73.     then echo $${rootme}/flex/flex ; \
  74.     else echo flex ; fi`
  75.  
  76. M4 = `if [ -f $${rootme}/m4/m4 ] ; \
  77.     then echo $${rootme}/m4/m4 ; \
  78.     else echo m4 ; fi`
  79.  
  80. MAKEINFO = `if [ -f $${rootme}/texinfo/makeinfo/makeinfo ] ; \
  81.     then echo $${rootme}/texinfo/makeinfo/makeinfo ; \
  82.     else echo makeinfo ; fi`
  83.  
  84. # This just becomes part of the MAKEINFO definition passed down to
  85. # sub-makes.  It lets flags be given on the command line while still
  86. # using the makeinfo from the object tree.
  87. MAKEINFOFLAGS =
  88.  
  89. EXPECT = `if [ -f $${rootme}/expect/expect ] ; \
  90.     then echo $${rootme}/expect/expect ; \
  91.     else echo expect ; fi`
  92.  
  93. RUNTEST = `if [ -f $${srcroot}/dejagnu/runtest ] ; \
  94.     then echo $${srcroot}/dejagnu/runtest ; \
  95.     else echo runtest ; fi`
  96.  
  97.  
  98. # libraries that may need to be augmented on a system-by-system basis
  99. X11_LIB = -lX11
  100.  
  101. # compilers to use to create programs which must be run in the build
  102. # environment.
  103. CC_FOR_BUILD = $(CC)
  104. CXX_FOR_BUILD = $(CXX)
  105.  
  106. SUBDIRS = "this is set via configure, don't edit this"
  107. OTHERS = 
  108.  
  109. ALL = all.normal
  110. INSTALL_TARGET = install-dirs \
  111.     $(INSTALL_MODULES) \
  112.     $(INSTALL_TARGET_MODULES) \
  113.     $(INSTALL_X11_MODULES) \
  114.     install-gcc
  115.  
  116. CC_FOR_TARGET = ` \
  117.   if [ -f $${rootme}/gcc/Makefile ] ; then \
  118.     echo $${rootme}/gcc/xgcc -B$${rootme}/gcc/; \
  119.   else \
  120.     if [ "$(host_canonical)" = "$(target_canonical)" ] ; then \
  121.       echo $(CC); \
  122.     else \
  123.       t='$(program_transform_name)'; echo gcc | sed -e '' $$t; \
  124.     fi; \
  125.   fi`
  126.  
  127.  
  128. CXX_FOR_TARGET = ` \
  129.   if [ -f $${rootme}/gcc/Makefile ] ; then \
  130.     echo $${rootme}/gcc/xgcc -B$${rootme}/gcc/; \
  131.   else \
  132.     if [ "$(host_canonical)" = "$(target_canonical)" ] ; then \
  133.       echo $(CXX); \
  134.     else \
  135.       t='$(program_transform_name)'; echo gcc | sed -e '' $$t; \
  136.     fi; \
  137.   fi`
  138.  
  139. AS_FOR_TARGET = ` \
  140.   if [ -f $${rootme}/gas/Makefile ] ; then \
  141.     echo $${rootme}/gas/as.new ; \
  142.   else \
  143.     if [ "$(host_canonical)" = "$(target_canonical)" ] ; then \
  144.       echo $(AS); \
  145.     else \
  146.        t='$(program_transform_name)'; echo as | sed -e '' $$t ; \
  147.     fi; \
  148.   fi`
  149.  
  150. AR_FOR_TARGET = ` \
  151.   if [ -f $${rootme}/binutils/ar ] ; then \
  152.     echo $${rootme}/binutils/ar ; \
  153.   else \
  154.     if [ "$(host_canonical)" = "$(target_canonical)" ] ; then \
  155.       echo $(AR); \
  156.     else \
  157.        t='$(program_transform_name)'; echo ar | sed -e '' $$t ; \
  158.     fi; \
  159.   fi`
  160.  
  161. RANLIB_FOR_TARGET = ` \
  162.   if [ -f $${rootme}/binutils/ranlib ] ; then \
  163.     echo $${rootme}/binutils/ranlib ; \
  164.   else \
  165.     if [ "$(host_canonical)" = "$(target_canonical)" ] ; then \
  166.       echo $(RANLIB); \
  167.     else \
  168.        t='$(program_transform_name)'; echo ranlib | sed -e '' $$t ; \
  169.     fi; \
  170.   fi`
  171.  
  172. NM_FOR_TARGET = ` \
  173.   if [ -f $${rootme}/binutils/Makefile ] ; then \
  174.     echo $${rootme}/binutils/nm ; \
  175.   else \
  176.     if [ "$(host_canonical)" = "$(target_canonical)" ] ; then \
  177.       echo $(NM); \
  178.     else \
  179.        t='$(program_transform_name)'; echo nm | sed -e '' $$t ; \
  180.     fi; \
  181.   fi`
  182.  
  183. # FIXME: This is badly named.
  184. XTRAFLAGS = ` \
  185.   if [ -f $${rootme}/gcc/Makefile ] ; then \
  186.     if [ -f $${rootme}/newlib/Makefile ] ; then \
  187.       echo -I$${rootme}/newlib/targ-include -I$${srcroot}/newlib/libc/include -I$${rootme}/gcc/include -nostdinc ; \
  188.     else \
  189.       echo -I$${rootme}/gcc/include ; \
  190.     fi ; \
  191.   else \
  192.      echo ; \
  193.   fi`
  194.  
  195. #### host and target specific makefile fragments come in here.
  196. ###
  197.  
  198. # Flags to pass down to all sub-makes.
  199. # Please keep these in alphabetical order.
  200. BASE_FLAGS_TO_PASS = \
  201.     "AR_FLAGS=$(AR_FLAGS)" \
  202.     "AR_FOR_TARGET=$(AR_FOR_TARGET)" \
  203.     "AS_FOR_TARGET=$(AS_FOR_TARGET)" \
  204.     "BISON=$(BISON)" \
  205.     "CC_FOR_BUILD=$(CC_FOR_BUILD)" \
  206.     "CC_FOR_TARGET=$(CC_FOR_TARGET)" \
  207.     "CFLAGS=$(CFLAGS)" \
  208.     "CXX_FOR_BUILD=$(CXX_FOR_BUILD)" \
  209.     "CXXFLAGS=$(CXXFLAGS)" \
  210.     "CXX_FOR_TARGET=$(CXX_FOR_TARGET)" \
  211.     "GCC_FOR_TARGET=$(CC_FOR_TARGET)" \
  212.     "INSTALL=$(INSTALL)" \
  213.     "INSTALL_DATA=$(INSTALL_DATA)" \
  214.     "INSTALL_PROGRAM=$(INSTALL_PROGRAM)" \
  215.     "INSTALL_XFORM=$(INSTALL_XFORM)" \
  216.     "LDFLAGS=$(LDFLAGS)" \
  217.     "LEX=$(LEX)" \
  218.     "M4=$(M4)" \
  219.     "MAKEINFO=$(MAKEINFO) $(MAKEINFOFLAGS)" \
  220.     "MUNCH_NM=$(MUNCH_NM)" \
  221.     "NM_FOR_TARGET=$(NM_FOR_TARGET)" \
  222.     "RANLIB_FOR_TARGET=$(RANLIB_FOR_TARGET)" \
  223.     "SHELL=$(SHELL)" \
  224.     "EXPECT=$(EXPECT)" \
  225.     "RUNTEST=$(RUNTEST)" \
  226.     "RUNTESTFLAGS=$(RUNTESTFLAGS)" \
  227.     "XTRAFLAGS_FOR_TARGET=$(XTRAFLAGS)" \
  228.     "YACC=$(BISON)" \
  229.     "exec_prefix=$(exec_prefix)" \
  230.     "prefix=$(prefix)" \
  231.     "tooldir=$(tooldir)" 
  232.  
  233. # Flags to pass down to most sub-makes, in which we're building with
  234. # the host environment.
  235. # If any variables are added here, they must be added to do-*, below.
  236. EXTRA_HOST_FLAGS = \
  237.     'AR=$(AR)' \
  238.     'AS=$(AS)' \
  239.     'CC=$(CC)' \
  240.     'CXX=$(CXX)' \
  241.     'NM=$(NM)' \
  242.     'RANLIB=$(RANLIB)' \
  243.     'XTRAFLAGS='
  244.  
  245. FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(EXTRA_HOST_FLAGS)
  246.  
  247. # Flags that are concerned with the location of the X11 include files
  248. # and library files
  249. X11_FLAGS_TO_PASS = \
  250.     "X11_INCLUDE_FLAGS=$(X11_INCLUDE_FLAGS)" \
  251.     "X11_LIB_FLAGS=$(X11_LIB_FLAGS)" \
  252.     "X11_LIB=$(X11_LIB)"
  253.  
  254. # Flags to pass down to makes which are built with the target environment.
  255. # The double $ decreases the length of the command line; the variables
  256. # are set in BASE_FLAGS_TO_PASS, and the sub-make will expand them.
  257. # If any variables are added here, they must be added to do-*, below.
  258. EXTRA_TARGET_FLAGS = \
  259.     'AR=$$(AR_FOR_TARGET)' \
  260.     'AS=$$(AS_FOR_TARGET)' \
  261.     'CC=$$(CC_FOR_TARGET)' \
  262.     'CXX=$$(CXX_FOR_TARGET)' \
  263.     'NM=$$(NM_FOR_TARGET)' \
  264.     'RANLIB=$$(RANLIB_FOR_TARGET)' \
  265.     'XTRAFLAGS=$$(XTRAFLAGS_FOR_TARGET)'
  266.  
  267. TARGET_FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(EXTRA_TARGET_FLAGS)
  268.  
  269. # Flags to pass down to gcc.  gcc builds a library, libgcc.a, so it
  270. # unfortunately needs the native compiler and the target ar and
  271. # ranlib.
  272. # If any variables are added here, they must be added to do-*, below.
  273. # The HOST_* variables are a special case, which are used for the gcc
  274. # cross-building scheme.
  275. HOST_CC = $(CC_FOR_BUILD)
  276. HOST_PREFIX = 
  277. HOST_PREFIX_1 = loser-
  278. EXTRA_GCC_FLAGS = \
  279.     'AR=$$(AR_FOR_TARGET)' \
  280.     'AS=$(AS)' \
  281.     'CC=$(CC)' \
  282.     'CXX=$(CXX)' \
  283.     'HOST_CC=$(CC_FOR_BUILD)' \
  284.     'HOST_PREFIX=$(HOST_PREFIX)' \
  285.     'HOST_PREFIX_1=$(HOST_PREFIX_1)' \
  286.     'NM=$(NM)' \
  287.     'RANLIB=$$(RANLIB_FOR_TARGET)' \
  288.     'XTRAFLAGS='
  289.  
  290. GCC_FLAGS_TO_PASS = $(BASE_FLAGS_TO_PASS) $(EXTRA_GCC_FLAGS)
  291.  
  292. # This is a list of the targets for all of the modules which are c