mirror of
https://gitlab.rtems.org/rtems/rtos/rtems.git
synced 2025-11-16 12:34:45 +00:00
115 lines
2.4 KiB
INI
115 lines
2.4 KiB
INI
# make/leaf.cfg
|
|
#
|
|
# Make(1) configuration file include'd by all leaf-node Makefiles
|
|
#
|
|
|
|
#
|
|
# LIBSUFFIX_VA, will "index" into LIBSUFF-*-v macros and
|
|
# convert our ${ARCH} back into .a or _g.a or _p.a based on debug.
|
|
# Useful for installing libraries.
|
|
#
|
|
|
|
LIBSUFFIX_OPTIMIZE_V=
|
|
LIBSUFFIX_DEBUG_V=_g
|
|
|
|
LIB_VARIANT=$(LIBSUFFIX_$(VARIANT_V)_V)
|
|
LIBSUFFIX_VA = $(LIB_VARIANT).a
|
|
|
|
# Pull in the desired "target" compiler
|
|
# Programs built on the host use automake generated rules.
|
|
# This will not change $(ARCH) -- binaries will still be placed as per target
|
|
include ${CONFIG.CC}
|
|
ifeq (${DEPEND},$(wildcard ${DEPEND}))
|
|
include ${DEPEND} # pull in dependencies if they exist
|
|
endif
|
|
|
|
ifndef AUTOMAKE
|
|
#
|
|
# Builtin targets for compilation variants
|
|
#
|
|
debug:
|
|
$(MAKE) -f $(MAKEFILE) MAKEFILE=$(MAKEFILE) VARIANT=DEBUG
|
|
endif
|
|
|
|
#
|
|
# VARIANT_VA will convert our ${ARCH} back to "" or "debug".
|
|
# Handy when one makefile wants to hop over into a peer's tree and
|
|
# build something "the same" way.
|
|
#
|
|
|
|
VARIANT-OPTIMIZE-v =
|
|
VARIANT-DEBUG-v = debug
|
|
|
|
VARIANT_VA = $(VARIANT-$(VARIANT_V)-v)
|
|
|
|
#
|
|
# TARGET_VA will convert $@ (expected to be 'debug' etc.)
|
|
# into "" or "install" as appropriate.
|
|
# Used for variant recursion.
|
|
#
|
|
|
|
TARGET_debug_V = all
|
|
|
|
TARGET_VA = $(TARGET_$@_V)
|
|
|
|
#
|
|
# Builtin clean and distclean rules
|
|
# Individual makefiles can add stuff via CLEAN_ADDITIONS and CLOBBER_ADDITIONS
|
|
# If desperate to save something, they can override CLEAN_OS, CLEAN_CC, etc.
|
|
#
|
|
|
|
clean-am: clean-generic
|
|
-$(RM) -r $(CLEAN_OS) $(CLEAN_CC) $(CLEAN_DEPEND)
|
|
-$(RM) -r $(VARIANTS)
|
|
|
|
distclean-am: distclean-generic clean-am
|
|
-$(RM) -r $(CLOBBER_OS) $(CLOBBER_CC) $(CLOBBER_DEPEND)
|
|
|
|
ifndef AUTOMAKE
|
|
preinstall-am:
|
|
preinstall: preinstall-am
|
|
|
|
distclean: distclean-am
|
|
-$(RM) ./config.status
|
|
|
|
clean: clean-am
|
|
|
|
.PHONY: distclean distclean-am
|
|
.PHONY: clean clean-am
|
|
endif
|
|
|
|
EXEEXT?=.exe
|
|
DOWNEXT?=.ralf
|
|
|
|
define bsp-link-c
|
|
$(LINK.c) $(CPU_CFLAGS) $(AM_CFLAGS) $(AM_LDFLAGS) \
|
|
-o $(basename $@)$(EXEEXT) $(LINK_OBJS) $(LINK_LIBS)
|
|
endef
|
|
|
|
define bsp-link-cxx
|
|
$(LINK.cc) $(CPU_CFLAGS) $(AM_CFLAGS) $(AM_LDFLAGS) \
|
|
-o $(basename $@)$(EXEEXT) $(LINK_OBJS) $(LINK_LIBS)
|
|
endef
|
|
|
|
define default-bsp-post-link
|
|
$(NM) -g -n $@ > $(basename $@).num
|
|
$(SIZE) $@
|
|
endef
|
|
|
|
ifndef bsp-post-link
|
|
define bsp-post-link
|
|
$(default-bsp-post-link)
|
|
cp $(basename $@)$(EXEEXT) $(basename $@)$(DOWNEXT)
|
|
endef
|
|
endif
|
|
|
|
define make-exe
|
|
$(bsp-link-c)
|
|
$(bsp-post-link)
|
|
endef
|
|
|
|
define make-cxx-exe
|
|
$(bsp-link-cxx)
|
|
$(bsp-post-link)
|
|
endef
|