📄 makefile.in
字号:
# Makefile for GNU C compiler.# Copyright (C) 1987, 1988, 1990, 1991, 1992 Free Software Foundation, Inc.#This file is part of GNU CC.#GNU CC is free software; you can redistribute it and/or modify#it under the terms of the GNU General Public License as published by#the Free Software Foundation; either version 2, or (at your option)#any later version.#GNU CC is distributed in the hope that it will be useful,#but WITHOUT ANY WARRANTY; without even the implied warranty of#MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the#GNU General Public License for more details.#You should have received a copy of the GNU General Public License#along with GNU CC; see the file COPYING. If not, write to#the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.# The targets for external use include:# all, doc, proto, install, install-cross, install-cross-rest,# uninstall, TAGS, mostlyclean, clean, distclean, realclean,# stage1, stage2, stage3, stage4.# Suppress smart makes who think they know how to automake Yacc files.y.c:# Variables that exist for you to override.# See below for how to change them for certain systems.# Selection of languages to be made.LANGUAGES = c c++ objective-c protoALLOCA =ALLOCA_FLAGS =ALLOCA_FINISH = true# Various ways of specifying flags for compilations: # CFLAGS is for the user to override to, e.g., do a bootstrap with -O2.# BOOT_CFLAGS is the value of CFLAGS to pass# to the stage2 and stage3 compilations# XCFLAGS is used for most compilations but not when using the GCC just built.XCFLAGS =CFLAGS = -gBOOT_CFLAGS = -O $(CFLAGS)# These exists to be overridden by the x-* and t-* files, respectively.X_CFLAGS =T_CFLAGS =X_CPPFLAGS =T_CPPFLAGS =CC = ccBISON = bisonBISONFLAGS =AR = arOLDAR_FLAGS = qcAR_FLAGS = rcSHELL = /bin/sh# on sysV, define this as cp.INSTALL = install -c# These permit overriding just for certain files.INSTALL_PROGRAM = $(INSTALL) -m 775INSTALL_DATA = $(INSTALL) -m 664SYMLINK = ln -s# Define this as & to perform parallel make on a Sequent.# Note that this has some bugs, and it seems currently necessary # to compile all the gen* files first by hand to avoid erroneous results.P =# How to invoke ranlib.RANLIB = ranlib# Test to use to see whether ranlib exists on the system.RANLIB_TEST = [ -f /usr/bin/ranlib -o -f /bin/ranlib ]# Compiler to use for compiling libgcc1.a.# OLDCC should not be the GNU C compiler,# since that would compile typical libgcc1.a functions such as mulsi3# into infinite recursions.OLDCC = cc# CFLAGS for use with OLDCC, for compiling libgcc1.a.# NOTE: -O does not work on some Unix systems!CCLIBFLAGS = -O# Version of ar to use when compiling libgcc1.a.OLDAR = ar# The GCC to use for compiling libgcc2.a, enquire, and cross-test.# Usually the one we just built.# Don't use this as a dependency--use $(GCC_PASSES) or $(GCC_PARTS).GCC_FOR_TARGET = ./xgcc -B./# This is used instead of ALL_CFLAGS when compiling with GCC_FOR_TARGET.# It omits XCFLAGS, and specifies -B./.# It also specifies -B$(tooldir)/ to find as and ld for a cross compiler.GCC_CFLAGS=$(INTERNAL_CFLAGS) $(X_CFLAGS) $(T_CFLAGS) $(CFLAGS) $(CROSS_GCC_CFLAGS)# Special flags for compiling enquire.# We disable optimization to make floating point more reliable.ENQUIRE_CFLAGS = -DNO_MEM -DNO_STDDEF -DNO_LONG_DOUBLE_IO -O0ENQUIRE_LDFLAGS = $(LDFLAGS)# Tools to use when building a cross-compiler.# These are used because `configure' appends `cross-make'# to the makefile when making a cross-compiler.TARGET_TOOLPREFIX = $(tooldir)/bin/AR_FOR_TARGET = $(TARGET_TOOLPREFIX)arAR_FOR_TARGET_FLAGS = rcRANLIB_FOR_TARGET = $(TARGET_TOOLPREFIX)ranlibRANLIB_TEST_FOR_TARGET = [ -f $(TARGET_TOOLPREFIX)ranlib ]CROSS_TOOLS =# Dir to search for system headers. Overridden by cross-make.SYSTEM_HEADER_DIR = /usr/include# There may be a premade insn-attrtab.c for this machine.# (You could rebuild it with genattrtab as usual, but it takes a long time.)# PREMADE_ATTRTAB is the file name of the file to use.# PREMADE_ATTRTAB_MD is the md file it corresponds to.PREMADE_ATTRTAB_MD = Makefile # Guaranteed not to cmp equal to md.PREMADE_ATTRTAB = target= ... `configure' substitutes actual target name here.xmake_file= ... `configure' substitutes actual x- file name here.tmake_file= ... `configure' substitutes actual t- file name here.version=`sed -e 's/.*\"\([^ \"]*\)[ \"].*/\1/' < $(srcdir)/version.c`# Directory where sources are, from where we are.srcdir = .# Common prefix for installation directories.# NOTE: This directory must exist when you start installation.prefix = /usr/libexec# Directory in which to put host dependent programs and librariesexec_prefix = $(prefix)/gcc2# Directory in which to put the executable for the command `gcc'bindir = $(exec_prefix)# Directory in which to put the directories used by the compiler.libdir = $(exec_prefix)# Directory in which the compiler finds executables, libraries, etc.libsubdir = $(exec_prefix)# Directory for header file assert.h.#includedir =# assertdir is overridden in cross-make.assertdir = $(includedir)# Extension (if any) to put in installed man-page filename.manext = .0# Directory in which to put man pages.mandir = /usr/contrib/man/cat1# Directory in which to find other cross-compilation tools and headers.# Used in install-cross.tooldir = $(prefix)/$(target)# Dir for temp files.tmpdir = /tmpGROFF=nroff -man# Additional system libraries to link with.CLIB=# Change this to a null string if obstacks are installed in the# system library.OBSTACK= obstack.o# Specify the rule for actually making libgcc1.a.# The value may be empty; that means to do absolutely nothing# with or for libgcc1.a.LIBGCC1 = libgcc1.a# Specify the rule for actually making libgcc2.a.LIBGCC2 = libgcc2.a# Options to use when compiling libgcc2.a.# -g1 causes output of debug info only for file-scope entities.# we use this here because that should be enough, and also# so that -g1 will be tested.LIBGCC2_CFLAGS = -O2 $(GCC_CFLAGS) -g1# List of extra executables that should be compiled for this target machine# that are used for compiling from source code to object code.# The rules for compiling them should be in the t-* file for the machine.EXTRA_PASSES =# Like EXTRA_PASSES, but these are used when linking.EXTRA_PROGRAMS = # List of extra object files that should be compiled for this target machine.# The rules for compiling them should be in the t-* file for the machine.EXTRA_PARTS =# List of extra object files that should be compiled and linked with# compiler proper (cc1, cc1obj, cc1plus).EXTRA_OBJS =# List of additional header files to install.# Often this is edited directly by `configure'.EXTRA_HEADERS =# Set this to `ld' to enable use of collect2.# USE_COLLECT2 =# It is convenient for configure to add the assignment at the beginning,# so don't override it here.# List of extra C and assembler files to add to libgcc1.a.# Assembler files should have names ending in `.asm'.LIB1FUNCS_EXTRA = # List of extra C and assembler files to add to libgcc2.a.# Assembler files should have names ending in `.asm'.LIB2FUNCS_EXTRA = # Program to convert libraries.LIBCONVERT = # Control whether header files are installed.# We will change this to install-fixincludes eventually.# It would be useful for people to try this now.#INSTALL_HEADERS=install-headers# Select which version of fixincludes to use (I.E. regular versus SVR4)FIXINCLUDES=fixincludes# Additional directories of header files to run fixincludes on.# On most systems, this is empty.OTHER_FIXINCLUDES_DIRS=# List of things which should already be built whenever we try to use xgcc# to compile anything (without linking).GCC_PASSES=xgcc cc1 cpp $(EXTRA_PASSES)# List of things which should already be built whenever we try to use xgcc# to link anything.GCC_PARTS=$(GCC_PASSES) libgcc.a $(EXTRA_PROGRAMS) $(USE_COLLECT2) $(EXTRA_PARTS)# Directory to link to, when using the target `maketest'.DIR = ../gcc# Flags to use when cross-building GCC.# Prefix to apply to names of object files when using them# to run on the machine we are compiling on.HOST_PREFIX=# Prefix to apply to names of object files when compiling them# to run on the machine we are compiling on.# The default for this variable is chosen to keep these rules # out of the way of the other rules for compiling the same source files.HOST_PREFIX_1=loser-HOST_CC=$(CC)HOST_CFLAGS=$(ALL_CFLAGS)HOST_CLIB=$(CLIB)HOST_LDFLAGS=$(LDFLAGS)HOST_CPPFLAGS=$(ALL_CPPFLAGS)HOST_ALLOCA=$(ALLOCA)HOST_MALLOC=$(MALLOC)HOST_OBSTACK=$(OBSTACK)# Choose the real default target.ALL=all.internal# Choose the real install target.INSTALL_TARGET=install-native# End of variables for you to override.# Definition of `all' is here so that new rules inserted by sed# do not specify the default target.# The real definition is under `all.internal' (for native compilers)# or `all.cross' (for cross compilers).all: all.indirect# This tells GNU Make version 3 not to put all variables in the environment..NOEXPORT:# sed inserts variable overrides after the following line.####target overrides####host overrides####cross overrides####build overrides# Now figure out from those variables how to compile and link.all.indirect: $(ALL)# IN_GCC tells obstack.h to use gstddef.h.INTERNAL_CFLAGS = $(CROSS) -DIN_GCC# This is the variable actually used when we compile.ALL_CFLAGS = $(INTERNAL_CFLAGS) $(X_CFLAGS) $(T_CFLAGS) $(CFLAGS) $(XCFLAGS)# Likewise.ALL_CPPFLAGS = $(CPPFLAGS) $(X_CPPFLAGS) $(T_CPPFLAGS)# Even if ALLOCA is set, don't use it if compiling with GCC.USE_ALLOCA= ` case "${CC}" in "${OLDCC}") echo ${ALLOCA} ;; esac `USE_HOST_ALLOCA= ` case "${HOST_CC}"@"${HOST_ALLOCA}" in "${OLDCC}"@?*) echo ${HOST_PREFIX}${HOST_ALLOCA} ;; esac `USE_HOST_MALLOC= ` case "${HOST_MALLOC}" in ?*) echo ${HOST_PREFIX}${HOST_MALLOC} ;; esac `USE_HOST_OBSTACK= ` case "${HOST_OBSTACK}" in ?*) echo ${HOST_PREFIX}${HOST_OBSTACK} ;; esac `# Dependency on obstack, alloca, malloc or whatever library facilities# are not installed in the system libraries.# We don't use USE_ALLOCA because backquote expansion doesn't work in deps.LIBDEPS= $(OBSTACK) $(ALLOCA) $(MALLOC)# Likewise, for use in the tools that must run on this machine# even if we are cross-building GCC.# We don't use USE_ALLOCA because backquote expansion doesn't work in deps.HOST_LIBDEPS= $(HOST_PREFIX)$(HOST_OBSTACK) $(HOST_PREFIX)$(HOST_ALLOCA) $(HOST_PREFIX)$(HOST_MALLOC)# How to link with both our special library facilities# and the system's installed libraries.LIBS = $(OBSTACK) $(USE_ALLOCA) $(MALLOC) $(CLIB)# Likewise, for use in the tools that must run on this machine# even if we are cross-building GCC.HOST_LIBS = $(USE_HOST_OBSTACK) $(USE_HOST_ALLOCA) $(USE_HOST_MALLOC) \ $(HOST_CLIB)HOST_RTL = $(HOST_PREFIX)rtl.oHOST_RTLANAL = $(HOST_PREFIX)rtlanal.oHOST_PRINT = $(HOST_PREFIX)print-rtl.o# Specify the directories to be searched for header files.# Both . and srcdir are used, in that order,# so that tm.h and config.h will be found in the compilation# subdirectory rather than in the source directory.INCLUDES = -I. -I$(srcdir) -I$(srcdir)/configSUBDIR_INCLUDES = -I.. -I../$(srcdir) -I../$(srcdir)/config# Always use -I$(srcdir)/config when compiling.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -