diff options
Diffstat (limited to '')
-rw-r--r-- | c/src/exec/automake/compile.am | 209 |
1 files changed, 0 insertions, 209 deletions
diff --git a/c/src/exec/automake/compile.am b/c/src/exec/automake/compile.am deleted file mode 100644 index 7eb3cdd1b7..0000000000 --- a/c/src/exec/automake/compile.am +++ /dev/null @@ -1,209 +0,0 @@ -## -## $Id$ -## - -## ------------------------------------------------------------------------- -## NOTE: This file is rather immature and has to be considered to be -## almost experimental. -## -## Expect frequent changes -- It deserves to be cleaned up :( -## ------------------------------------------------------------------------- - -## The section below is based on make/compilers/gcc-target-default.cfg -## used in former versions of RTEMS. - -## -## Set up the flags for the toolchains: -## -## We are considering 3 different building schemes here: -## * Using gcc's being able to accept -specs (aka gcc-2.8 building scheme) -## * Using gcc's not being able to accept -specs (aka gcc-2.7.2 building -## scheme) -## * Using third party toolchains (aka non-gcc building scheme) -## -## Automake conditionals in use: -## RTEMS_USE_GCC .. if we are using GCC - -## NOTES: -## * The gcc-2.8 building scheme is the nominal building scheme and -## is actively supported. -## * The non-gcc building scheme requires manually setting up environment -## variables and is hardly tested at all - -## 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 by the -## 'VARIANT=<OPTIMIZE|DEBUG|PROFILE>' targets to their _V values. - -## XCPPFLAGS, XCFLAGS, XASFLAGS -## are used to add flags from the shell -## cf. make.info ("Implicit rules/variables" for details) - -if RTEMS_USE_GCC -## All the stuff below is specific to gcc - -CFLAGS_DEFAULT=-g -Wall -## gcc >= 2.8.x -GCCSPECS = $(GCC_SPECS) $(RTEMS_BSP_SPECS) -else -## fall back to the old style compilers/*.cfg -## CONFIG.CC is supposed to be provided by <BSP>.cfg -include $(CONFIG.CC) -endif # RTEMS_USE_GCC - -DEFS = @DEFS@ - -CPPFLAGS = @CPPFLAGS@ $(CPU_DEFINES) \ - $(DEFINES) $(XCPPFLAGS) $(CPPFLAGS_GCC) -CFLAGS = $(CFLAGS_DEFAULT) $(CPU_CFLAGS) $(XCFLAGS) -ASFLAGS = $(CPU_ASFLAGS) $(CPU_CFLAGS) $(XASFLAGS) - -## FIXME: This doesn't seem to be correct -# when debugging, optimize flag: typically empty -# some compilers do allow optimization with their "-g" -CFLAGS_DEBUG_OPTIMIZE_V=-g -LDFLAGS_DEBUG_V = - -# profile flag; use gprof(1) -CFLAGS_PROFILE_V=-pg -LDFLAGS_PROFILE_V = - -# List of library paths without -L -LD_PATHS= $(PROJECT_RELEASE)/lib - -# ld flag for incomplete link -LDFLAGS_INCOMPLETE = -r - -# ld flags for profiling, debugging -LDFLAGS=$(LDFLAGS_PROFILE) $(LDFLAGS_DEBUG) $(LD_PATHS:%=-L %) - -# -# How to compile stuff into ${ARCH} subdirectory -# - -COMPILE = $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) \ - $(CPPFLAGS) $(AM_CFLAGS) $(CFLAGS) -CCLD = $(CC) -LINK = $(CCLD) $(AM_CFLAGS) $(CFLAGS) \ - $(AM_LDFLAGS) $(LDFLAGS) -o $@ - -CCASCOMPILE = $(CCAS) $(AM_CCASFLAGS) $(CCASFLAGS) - -${ARCH}/%.o: %.c - ${COMPILE} -o $@ -c $< - -${ARCH}/%.o: %.S - ${CCASCOMPILE} -o $@ -c $< - -# Make foo.rel from foo.o -${ARCH}/%.rel: ${ARCH}/%.o - ${make-rel} - -# Dependency files for use by gmake -# NOTE: we don't put them into $(ARCH) -# so that 'make clean' doesn't blow it away - -DEPEND=Depends-${ARCH} - -CLEAN_DEPEND=$(DEPEND).tmp -CLOBBER_DEPEND=$(DEPEND) - -# We deliberately don't have anything depend on the -# $(DEPEND) file; otherwise it will get rebuilt even -# on 'make clean' -# - -## HACK: Specific to gcc -## FIXME: The approach below is known to be conceptionally broken. -depend-am: $(C_FILES) $(CC_FILES) $(S_FILES) -## 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) -M $^ | \ - sed -e 's?^\(.*\)\.o[ ]*:?$$(ARCH)/\1.o:?' \ - -e 's?$(ARCH)/?$$(ARCH)/?' >$(DEPEND).tmp - mv $(DEPEND).tmp $(DEPEND) -depend: depend-am - -# pull in dependencies if they exist -ifeq (${DEPEND},$(wildcard ${DEPEND})) -include ${DEPEND} -@ENDIF@ - -if RTEMS_USE_GCC -## gcc >= 2.8 -define make-rel - $(LINK) -qnolinkcmds -nostdlib -Wl,-r $(XLDFLAGS) $^ -endef -else -## non-gcc -define make-rel - $(LINK) $(XLDFLAGS) $^ -endef -endif - -## ------------------------------------------------------------------------- - -## translate VARIANT into VARIANT_V -VARIANT = OPTIMIZE - -VARIANT_OPTIMIZE_V = OPTIMIZE -VARIANT_DEBUG_V = DEBUG -VARIANT_PROFILE_V = PROFILE -VARIANT_optimize_V = OPTIMIZE -VARIANT_debug_V = DEBUG -VARIANT_profile_V = PROFILE - -VARIANT_V = $(VARIANT_$(VARIANT)_V) - -## Setup the variant build subdirectory -ARCH_OPTIMIZE_V = o-optimize -ARCH_DEBUG_V = o-debug -ARCH_PROFILE_V = o-profile - -ARCH__V = $(ARCH_OPTIMIZE_V) -ARCH = $(ARCH_$(VARIANT_V)_V) - -## Setup the library suffix -LIBSUFFIX_OPTIMIZE_V = -LIBSUFFIX_DEBUG_V = _g -LIBSUFFIX_PROFILE_V = _p -LIBSUFFIX__V = $(LIBSUFFIX_OPTIMIZE_V) - -LIB_VARIANT = $(LIBSUFFIX_$(VARIANT_V)_V) -LIBSUFFIX_VA = $(LIB_VARIANT).a - -## These are supposed to be set in make/custom/<bsp>.cfg -## CFLAGS_OPTIMIZE_V = -## CFLAGS_DEBUG_V = -## CFLAGS_PROFILE_V = -CFLAGS__V = $(CFLAGS_OPTIMIZE_V) - -## ------------------------------------------------------------------------ -## Setup hard-coded flags -if RTEMS_USE_GCC -## gcc >= gcc-2.8 -RTEMS_CFLAGS_OPTIMIZE_V = -RTEMS_CFLAGS_DEBUG_V = -qrtems_debug -Wno-unused -RTEMS_CFLAGS_PROFILE_V = - -## non-gcc -## We can't guess what flags might be required here. -## Pass the values from the environment if you want to apply them. -endif -RTEMS_CFLAGS__V = $(RTEMS_CFLAGS_OPTIMIZE_V) - -## ------------------------------------------------------------------------- - -CC = @CC@ $(GCCSPECS) -CPP = @CPP@ $(GCCSPECS) - -## -AM_CPPFLAGS = $(RTEMS_CPPFLAGS) - -AM_CFLAGS = $(RTEMS_CFLAGS_$(VARIANT_V)_V) $(CFLAGS_$(VARIANT_V)_V) - -# AM_CFLAGS = $(RTEMS_BSP_CFLAGS) $(RTEMS_CFLAGS) -AM_CCASFLAGS = $(RTEMS_BSP_CFLAGS) $(RTEMS_CPPFLAGS) $(RTEMS_ASFLAGS) |