Files
rtems/make/Makefile.in
Joel Sherrill 196094eb79 Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>:
This one is an enhancement to acpolish.

    It replaces some Makefile variables by others variable in Makefile.ins
    (tries to use unique name for some variables). It therefore eases
    parsing Makefile.ins for further automatic Makefile.in conversions in
    future.

    To apply:
        cd <rtems-source-tree>
        sh <path-to>/rtems-rc-19990407-8.sh
        ./autogen
1999-04-19 13:19:14 +00:00

104 lines
2.7 KiB
Makefile

#
# $Id$
#
# Not strictly necessary to pull in this stuff. But it helps with
# working with the templates and poking around.
#
@SET_MAKE@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
top_builddir = ..
subdir = make
INSTALL = @INSTALL@
RTEMS_ROOT = $(top_srcdir)/@RTEMS_TOPdir@
PROJECT_ROOT = @PROJECT_ROOT@
VPATH = @srcdir@
include $(RTEMS_ROOT)/make/custom/${RTEMS_BSP}.cfg
include $(RTEMS_ROOT)/make/leaf.cfg
CLEAN_ADDITIONS +=
CLOBBER_ADDITIONS +=
# NOTE: No need to prepend $(srcdir) to file names,
# VPATH handles the paths for us.
# NOTE: Only the files really need get installed.
GENERIC_FILES := host.cfg target.cfg
MAKEFILES := README \
directory.cfg leaf.cfg \
lib.cfg main.cfg
# NOTE: Use the wildcard rule to install all custom files
# CUSTOM_FILES := $(wildcard $(srcdir)/custom/*.cfg)
# NOTE: This should be sufficient, but may fail for some BSPS:
# Get all custom files for the BSP family, they may depend on each other
#CUSTOM_FILES := custom/default.cfg $(patsubst %,custom/%.cfg, posix)
# This version of the rule is pretty ugly but I think it works ALL the time.
# + Figure out what this BSP.cfg includes
# + Make those files have the correct relative path.
# + Now fix $(RTEMS_HOST) to the real host name
CUSTOM_FILES := custom/default.cfg custom/${RTEMS_BSP}.cfg \
$(shell grep "^include.*make/custom" $(srcdir)/custom/${RTEMS_BSP}.cfg | \
sed -e 's/^.*make\///' | sed -e s/\\$$\(RTEMS_HOST\)/${RTEMS_HOST}/)
# NOTE: Use the wildcard rule to install all compiler files
# COMPILER_FILES := $(wildcard $(srcdir)/compilers/*.cfg)
COMPILER_FILES := $(CONFIG.$(TARGET_ARCH).CC) $(CONFIG.$(HOST_ARCH).CC)
# NOTE: Don't use a wildcard rule here, otherwise Templates/Makefile.inc
# will be installed, too
TEMPLATE_FILES := \
Templates/Makefile.dir \
Templates/Makefile.leaf \
Templates/Makefile.lib
get: retrieve
all:
$(prefix):
@top_srcdir@/mkinstalldirs $@
install: $(prefix) \
$(prefix)/make \
$(prefix)/make/compilers \
$(prefix)/make/custom \
$(prefix)/make/Templates \
install_files
$(prefix)/make:
@top_srcdir@/mkinstalldirs $@
install_files:: $(GENERIC_FILES) $(MAKEFILES)
$(INSTALL_DATA) $^ $(prefix)/make
$(prefix)/make/compilers:
@top_srcdir@/mkinstalldirs $@
install_files:: $(COMPILER_FILES)
$(INSTALL_DATA) $^ $(prefix)/make/compilers
$(prefix)/make/custom:
@top_srcdir@/mkinstalldirs $@
install_files:: $(CUSTOM_FILES)
$(INSTALL_DATA) $^ $(prefix)/make/custom
$(prefix)/make/Templates:
@top_srcdir@/mkinstalldirs $@
install_files:: $(TEMPLATE_FILES)
$(INSTALL_DATA) $^ $(prefix)/make/Templates
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
cd $(top_builddir) \
&& CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status