⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 gcc-target-default.cfg

📁 RTEMS (Real-Time Executive for Multiprocessor Systems) is a free open source real-time operating sys
💻 CFG
字号:
##  Shared compiler for all GNU tools configurations##  $Id: gcc-target-default.cfg,v 1.39 2002/11/18 00:43:21 joel Exp $# ### CFLAGS_OPTIMIZE_V, CFLAGS_DEBUG_V, CFLAGS_PROFILE_V are the values we# would want the corresponding macros to be set to.## CFLAGS_OPTIMIZE, CFLAGS_DEBUG, CFLAGS_PROFILE are set in the leaf# Makefiles by the 'debug:' and 'profile:' targets to their _V values.## default flags# XCPPFLAGS, XCFLAGS, XCXXFLAGS, XASFLAGS # are used to add flags from the shell# cf. make.info ("Implicit rules/variables" for details)# NOTE: Should these go to CPPFLAGS ?CFLAGS_DEFAULT=-g -Wall# NOTE: CPU_CFLAGS should probably be renamed to CPU_CPPFLAGS# NOTE: CPU_DEFINES should probably be merged with CPU_CFLAGSCPPFLAGS += $(CPU_DEFINES) $(CPU_CFLAGS) $(DEFINES) $(XCPPFLAGS)CFLAGS   = $(CFLAGS_DEFAULT) $(XCFLAGS)CXXFLAGS = $(CFLAGS_DEFAULT) $(XCXXFLAGS)ASFLAGS  = $(CPU_ASFLAGS) $(XASFLAGS)# NOTE: GCCSPECS probably belongs to CPPFLAGSGCCSPECS_OPTIMIZE_V =GCCSPECS_DEBUG_V = -qrtems_debugGCCSPECS_PROFILE_V =GCCSPECS = -B$(PROJECT_RELEASE)/lib/ -specs bsp_specs -qrtems GCCSPECS += $(GCCSPECS_$(VARIANT_V)_V)CC  += $(GCCSPECS)CXX += $(GCCSPECS)CPPFLAGS += # Define this to yes if C++ is included in the development environment.# This requires that at least the GNU C++ compiler and libg++ be installed.ifeq ($(HAS_CPLUSPLUS),yes)CPLUS_LD_LIBS += $(PROJECT_RELEASE)/lib/librtems++$(LIBSUFFIX_VA)endif# debug flag;CFLAGS_DEBUG_V+=-Wno-unusedCXXFLAGS_DEBUG_V+=CFLAGS_DEBUG_V+=-qrtems_debugCXXFLAGS_DEBUG_V+=-qrtems_debug# when debugging, optimize flag: typically empty# some compilers do allow optimization with their "-g"CFLAGS_OPTIMIZE_V+=-gCXXFLAGS_OPTIMIZE_V+=-g# profile flag; use gprof(1)CFLAGS_PROFILE_V+=-pgCXXFLAGS_PROFILE_V+=-pgifndef AUTOMAKECFLAGS_$(VARIANT)  =$(CFLAGS_$(VARIANT)_V)CXXFLAGS_$(VARIANT)=$(CXXFLAGS_$(VARIANT)_V)endififndef AUTOMAKECFLAGS   += $(CFLAGS_OPTIMIZE) $(CFLAGS_DEBUG) $(CFLAGS_PROFILE)CXXFLAGS += $(CXXFLAGS_OPTIMIZE) $(CXXFLAGS_DEBUG) $(CXXFLAGS_PROFILE)endif# List of library paths without -LLD_PATHS= $(PROJECT_RELEASE)/lib# libraries you want EVERYONE to link with#LD_LIBS=# ld flag to ensure pure-text#LDFLAGS_MUST_BE_PURE_V =# ld flag for [un]shared objects#LDFLAGS_STATIC_LIBRARIES_V =#LDFLAGS_SHARED_LIBRARIES_V =# ld flag for incomplete linkLDFLAGS_INCOMPLETE = -r# Special linker options when building lib.soLDFLAGS_DYNAMIC_V = ??# Some dynamic linking systems want the preferred name recorded in the binaryLDFLAGS_DYNAMIC_LIBNAME_V = -h $(DYNAMIC_VERSION_LIBNAME)# ld flags for profiling, debuggingLDFLAGS_PROFILE_V =LDFLAGS_DEBUG_V = -qrtems_debug# LDFLAGS=$(LDFLAGS_PROFILE) $(LDFLAGS_DEBUG) $(LD_PATHS:%=-L%)LDFLAGS=$(LDFLAGS_PROFILE) $(LDFLAGS_DEBUG)## Stuff to clean and clobber for the compiler and its tools#CLEAN_CC = a.out *.o *.BAKCLOBBER_CC =## Client compiler and support tools## CPP command to write file to standard outputCPP=$(CC) -E -w -Wp,-$$# egrep regexp to ignore symbol table entries in ar archives.# Only used to make sure we skip them when coalescing libraries.# skip __.SYMDEF and empty names (maybe bug in ranlib??).AR_SYMBOL_TABLE="HIGHLY-UNLIKELY-TO-CONFLICT"ARFLAGS=ruv## How to compile stuff into ${ARCH} subdirectory#${ARCH}/%.o: %.c	${COMPILE.c} $(AM_CPPFLAGS) $(AM_CFLAGS) -o $@ $<${ARCH}/%.o: %.cc	${COMPILE.cc} $(AM_CPPFLAGS) $(AM_CXXFLAGS) -o $@ $<${ARCH}/%.o: %.cpp	${COMPILE.cc} $(AM_CPPFLAGS) $(AM_CXXFLAGS) -o $@ $<${ARCH}/%.o: %.cxx	${COMPILE.cc} $(AM_CPPFLAGS) $(AM_CXXFLAGS) -o $@ $<${ARCH}/%.o: %.C	${COMPILE.cc} $(AM_CPPFLAGS) $(AM_CXXFLAGS) -o $@ $<${ARCH}/%.o: %.S	${COMPILE.S} $(AM_CPPFLAGS) -DASM -o $@ $<# Make foo.rel from foo.o${ARCH}/%.rel: ${ARCH}/%.o	${make-rel}# create $(ARCH)/pgm from pgm.sh${ARCH}/%: %.sh	$(RM) $@	$(CP) $< $@	$(CHMOD) +x $@# Dependency files for use by gmake# NOTE: we don't put them into $(ARCH)#       so that 'make clean' doesn't blow it awayDEPEND=Depends-${ARCH}CLEAN_DEPEND=$(DEPEND).tmpCLOBBER_DEPEND=$(DEPEND)# We deliberately don't have anything depend on the# $(DEPEND) file; otherwise it will get rebuilt even# on 'make clean'#depend-am: $(C_FILES) $(CC_FILES) $(S_FILES)ifneq ($(words $(C_FILES) $(CC_FILES) $(S_FILES)), 0)#       Use gcc -M to generate dependencies#       Replace foo.o with $(ARCH)/foo.o#       Replace $(ARCH) value with string $(ARCH)#           so that it will for debug and profile cases	$(COMPILE.c) $(AM_CPPFLAGS) $(AM_CFLAGS) -M   $^    |  \	$(SED) -e 's?^\(.*\)\.o[ ]*:?$$(ARCH)/\1.o:?' \	    -e 's?$(ARCH)/?$$(ARCH)/?'   >$(DEPEND).tmp	$(MV) $(DEPEND).tmp $(DEPEND)endifdepend: depend-am# spell out all the LINK_FILE's, rather than using -lbsp, so#  that $(LINK_FILES) can be a dependency# Start file must be one of#    $(PROJECT_RELEASE)/lib/start$(LIB_VARIANT).o#    $(PROJECT_RELEASE)/lib/asmiface$(LIB_VARIANT).o# It defaults to start.o, but an app can override it.ifeq ($(START_BASE),)  START_FILE=else  START_FILE=$(PROJECT_RELEASE)/lib/$(START_BASE)$(LIB_VARIANT).oendif## NOTE: a rule to link an rtems' application should look similar to this#       (cf. "make-exe" in make/custom/*.cfg): ## gcc28:# $(PGM): $(LINK_FILES)#	$(CC) $(CFLAGS) -o $@ $(LINK_OBJS) $(LINK_LIBS)#LINK_OBJS =\    $(CONSTRUCTOR) \    $(OBJS) \    $(MANAGERS_NOT_WANTED:%=$(PROJECT_RELEASE)/lib/no-%$(LIB_VARIANT).rel)LINK_FILES =\    $(START_FILE) \    $(CONSTRUCTOR) \    $(OBJS) \    $(MANAGERS_NOT_WANTED:%=$(PROJECT_RELEASE)/lib/no-%$(LIB_VARIANT).rel) \    $(PROJECT_RELEASE)/lib/librtemsbsp$(LIBSUFFIX_VA) \    $(PROJECT_RELEASE)/lib/librtemscpu$(LIBSUFFIX_VA)LINK_LIBS += $(LD_LIBS)    ## Allow user to override link commands (to build a prom image, perhaps)#ifndef LINKCMDSLINKCMDS=$(PROJECT_RELEASE)/lib/linkcmdsendifdefine make-rel	$(LINK.c) $(CFLAGS) $(AM_CFLAGS) $(AM_LDFLAGS) \	  -qnolinkcmds -nostdlib -Wl,-r $(XLDFLAGS) -o $@ $^endef

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -