forked from Imagelibrary/rtems
Removed all references to HOST_ARCH including the file gcc.cfg.in. All
host programs are now compiled with automake generated rules. This was done after discussions with Ralf Corsepius and Eric Norum.
This commit is contained in:
@@ -10,12 +10,6 @@ rtems_make_compilersdir=$(rtems_makedir)/compilers
|
||||
## At the moment all actively supported configurations
|
||||
## use gcc-target-default.cfg only.
|
||||
rtems_make_compilers_DATA= \
|
||||
gcc.cfg \
|
||||
gcc-target-default.cfg
|
||||
|
||||
if MAINTAINER_MODE
|
||||
$(srcdir)/gcc.cfg.in: $(top_srcdir)/@RTEMS_TOPdir@/make/compilers/gcc.cfg.in
|
||||
cp $< $@
|
||||
endif
|
||||
|
||||
include $(top_srcdir)/../../../automake/local.am
|
||||
|
||||
@@ -1,203 +0,0 @@
|
||||
#
|
||||
# $Id$
|
||||
#
|
||||
# gcc 2.6.x native compiler
|
||||
# Compiler (and tools) configuration
|
||||
#
|
||||
|
||||
# Additional target names (other than debug, profile)
|
||||
TARGET_VARIANTS +=
|
||||
|
||||
#
|
||||
# Pre-processor defines.
|
||||
# Local tailoring (on the command line) can be done by setting XCPPFLAGS
|
||||
# which is never set in the Makefile's
|
||||
#
|
||||
|
||||
CPPFLAGS=$(XCPPFLAGS) $(DEFINES)
|
||||
|
||||
#
|
||||
# Local tailoring (on the command line) can be done by setting CFLAGS
|
||||
# which is never set in the Makefile's
|
||||
#
|
||||
|
||||
#
|
||||
# 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
|
||||
|
||||
CFLAGS_DEFAULT = @CC_CFLAGS_DEFAULT@
|
||||
|
||||
# Under MS-DOS do not use pipes
|
||||
# It turns out the pipes don't work with some non-gas assemblers either. :(
|
||||
# ifneq ($(RTEMS_HOST),msdos)
|
||||
# # CFLAGS_DEFAULT += -pipe
|
||||
# CFLAGS_DEFAULT +=
|
||||
# endif
|
||||
|
||||
# Additional target names (other than debug, profile)
|
||||
|
||||
# optimize flag: typically -0, could use -O4 or -fast
|
||||
# -O4 is ok for RTEMS
|
||||
CFLAGS_OPTIMIZE_V=-O
|
||||
|
||||
# debug flag; typically -g
|
||||
CFLAGS_DEBUG_V=@CC_CFLAGS_DEBUG_V@
|
||||
|
||||
# when debugging, optimize flag: typically empty
|
||||
# some compilers do allow optimization with their "-g"
|
||||
CFLAGS_DEBUG_OPTIMIZE_V=
|
||||
|
||||
# profile flag; use gprof(1)
|
||||
CFLAGS_PROFILE_V=@CC_CFLAGS_PROFILE_V@
|
||||
|
||||
# default is to optimize
|
||||
CFLAGS_OPTIMIZE=$(CFLAGS_OPTIMIZE_V)
|
||||
|
||||
# dynamic libraries
|
||||
CFLAGS_DYNAMIC_V=-fpic
|
||||
ASFLAGS_DYNAMIC_V=
|
||||
|
||||
# XCFLAGS are now local flags to avoid conflict with cygnus configure
|
||||
XCFLAGS=$(CFLAGS_OPTIMIZE) $(CFLAGS_DEBUG) $(CFLAGS_PROFILE) \
|
||||
$(CFLAGS_DEFAULT)
|
||||
|
||||
# List of library paths without -L
|
||||
LD_PATHS=
|
||||
|
||||
# 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 link
|
||||
LDFLAGS_INCOMPLETE = -r
|
||||
|
||||
# Special linker options when building lib.so
|
||||
LDFLAGS_DYNAMIC_V = ??
|
||||
|
||||
# Some dynamic linking systems want the preferred name recorded in the binary
|
||||
# ref: src/libxil/Makefile
|
||||
LDFLAGS_DYNAMIC_LIBNAME_V = -h $(DYNAMIC_VERSION_LIBNAME)
|
||||
|
||||
# ld flags for profiling, debugging
|
||||
LDFLAGS_PROFILE_V = @CC_LDFLAGS_PROFILE_V@
|
||||
LDFLAGS_DEBUG_V =
|
||||
|
||||
LDFLAGS=$(LDFLAGS_PROFILE) $(LDFLAGS_DEBUG) $(LD_PATHS:%=-L %)
|
||||
|
||||
#
|
||||
# Stuff to clean and clobber for the compiler and its tools
|
||||
#
|
||||
|
||||
CLEAN_CC = a.out *.o *.BAK
|
||||
CLOBBER_CC =
|
||||
|
||||
#
|
||||
# Client compiler and support tools
|
||||
#
|
||||
|
||||
# CC_FOR_BUILD=gcc -O
|
||||
# override CC=$(CC_FOR_BUILD)
|
||||
|
||||
CC=@CC@
|
||||
|
||||
# CPP command to write file to standard output
|
||||
CPP=$(CC) -E
|
||||
|
||||
# flags set by cc when running cpp
|
||||
CPP_CC_FLAGS=-D__STDC__
|
||||
|
||||
# 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
|
||||
|
||||
#
|
||||
# Command to convert a normal archive to one searchable by $(LD)
|
||||
# Not needed on SVR4
|
||||
# FIXME: Should be handled by autoconf. Doesn't matter, because
|
||||
# rtems doesn't have any host-libraries until now.
|
||||
#
|
||||
|
||||
MKLIB=echo library is complete:
|
||||
|
||||
#
|
||||
# How to compile stuff into ${ARCH} subdirectory
|
||||
#
|
||||
# NOTE: we override COMPILE.c
|
||||
#
|
||||
|
||||
COMPILE.c=$(CC) $(CFLAGS) $(CPPFLAGS) $(XCFLAGS) -c
|
||||
|
||||
${ARCH}/%.o: %.c
|
||||
${COMPILE.c} -o $@ $<
|
||||
|
||||
${ARCH}/%.o: %.cc
|
||||
${COMPILE.c} -o $@ $<
|
||||
|
||||
# assembly runs gasp
|
||||
${ARCH}/%.o: %.s
|
||||
$(CPP) ${CPPFLAGS} $< | $(SED) 's/% /%/g' | $(SED) 's/^#.*//' >$(ARCH)/$*.i
|
||||
$(AS) -o $@ $(ARCH)/$*.i
|
||||
$(RM) $(ARCH)/$*.i
|
||||
|
||||
# Link host applications.
|
||||
define make-exe
|
||||
${CC} ${LDFLAGS} -o $@ $^ ${LD_LIBS}
|
||||
endef
|
||||
|
||||
# Specify our own default rule for this to prevent having CFLAGS and
|
||||
# CPPFLAGS being passed to linker
|
||||
#
|
||||
# NOTE: This rule is only used as fallback for host-tool makefiles
|
||||
# which don't provide their own rule
|
||||
${ARCH}/%$(EXEEXT): ${ARCH}/%.o
|
||||
$(make-exe)
|
||||
|
||||
# create $(ARCH)/pgm from pgm.sh
|
||||
${ARCH}/%: %.sh
|
||||
$(RM) $@
|
||||
$(CP) $< $@
|
||||
$(CHMOD) +x $@
|
||||
|
||||
# Dependency files for use by gmake
|
||||
# NOTE: we don't put in $(TARGET_ARCH)
|
||||
# so that 'make clean' doesn't blow it away
|
||||
|
||||
DEPEND=Depends-$(TARGET_ARCH:o-%=%)
|
||||
|
||||
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'
|
||||
#
|
||||
|
||||
depend: $(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) -M $^ | \
|
||||
$(SED) -e 's?^\(.*\)\.o[ ]*:?$$(ARCH)/\1.o:?' \
|
||||
-e 's?$(ARCH)/?$$(ARCH)/?' >$(DEPEND).tmp
|
||||
$(MV) $(DEPEND).tmp $(DEPEND)
|
||||
endif
|
||||
|
||||
define make-rel
|
||||
$(LD) $(LDFLAGS_INCOMPLETE) $(XLDFLAGS) -o $@ $(OBJS)
|
||||
endef
|
||||
Reference in New Issue
Block a user