Files
rtems/make/main.cfg
Joel Sherrill f95d2b53f2 Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>. Comments:
* Added support for bsd "install" ($(BSDINSTALL)) to host.cfg.in, i.e.
    the standard "install" program that most packages (including automake)
    use. In Makefiles outside of rtems, "install" normally is referenced by
    $(INSTALL), but rtems already uses $(INSTALL) for install-if-change,
    hence I used $(BSDINSTALL) instead to keep up backward compatibility.

    * Removed references to @GREP@ etc. from host.cfg.in, as configure.in
    doesn't check for them (Minor cleanup).

    * Added installation flags INST*FLAGS to host.cfg.in, which should
    replace -m XXXX flags for installation calls.

    *Changes to gcc.cfg to enable it to build host programs from multiple
    sources files.
    Should not disturb existing sources, but neccessary.

    * There was a not-so-minor bug in the configuration files: "make
    install" and "make debug_install" don't work in all subdirectories!! I
    tried to fix this by adding "install" to MTARGETS in main.cfg, which
    seems to solve most of the problems. But there still seem to be rare (?)
    cases where "make debug_install" still seems to have problems.

    * Changes to many host related tool-Makefiles to demonstrate the
    abilities of INST*FLAGS, BSDINSTALL and the new rules in gcc.cfg.
    ..of cause ... but BSDINSTALL is THE standard method to install files
    in most program packages besides rtems. This part of the patch fixes
    some minor protection setting problems, but doesn't support
    TARGET_VARIANTS

    NOTE:
    I hope you will like the BSDINSTALL, INST*FLAGS stuff. It is a step to
    get rid of "install-if-change" and to rely on a more standard
    installation procedure. If you don't like BSDINSTALL, removing it from
    the patch isn't  difficult-  just grep for BSDINSTALL and replace
    BSDINSTALL with INSTALL or MKDIR.


    FINALLY:
    I still have another patch pending (well, not a complete patch yet, it's
    a partial patch to demonstrate the principle), which adds automatic
    rebuilding of files generated by autoconf/configure. At the moment I
    don't dare to submit it, because integrating this patch would require to
    modify all Makefile.ins because we'd need to add a new "include " line
    to each Makefile.in.
1998-07-17 15:49:12 +00:00

83 lines
1.6 KiB
INI

#
# $Id$
#
# make/main.cfg
#
# Make(1) configuration file include'd by all Makefile's
#
#
# where things are relative to PROJECT_ROOT; shouldn't need to change,
# but could be overridden in custom files.
#
PROJECT_RELEASE=$(PROJECT_ROOT)/$(RTEMS_BSP)
PROJECT_BIN=$(PROJECT_RELEASE)/bin
PROJECT_INCLUDE=$(PROJECT_RELEASE)/lib/include
PROJECT_TOOLS = $(PROJECT_RELEASE)/build-tools
#
# Target architecture; may be changed as per 'make "ARCH=${TARGET_ARCH}-debug"'
# This is where the object files get put.
#
ARCH=${TARGET_ARCH}
VARIANT=
#
# Initial target for make(1)
# Once this is established we can safely include other targets
# within this make-include file.
#
default_target: all
#
# Describe the host os
#
# include $(PROJECT_ROOT)/make/target.cfg
# include $(PROJECT_ROOT)/make/host.cfg
#
# Default makefile name
# May be overridden by command line macro assignment
#
MAKEFILE=Makefile
#
# Target variant names
# and rule to expand them into (for example): sun4 sun4-debug sun4-profile
# Note compiler config may add to TARGET_VARIANTS
#
TARGET_VARIANTS = debug profile
#
# Generate list of object directories: sun4, sun4-debug, sun4-profile
#
VARIANTS=${TARGET_ARCH} ${TARGET_VARIANTS:%=${TARGET_ARCH}-%}
#
# List of "recursion-able" targets for directory Makefiles
#
RECURSE_TARGETS=all clean protos get clobber depend install \
$(TARGET_VARIANTS) $(TARGET_VARIANTS:%=%_install)
ifeq ($(RTEMS_USE_OWN_PDIR),yes)
MAKEFLAGS += --no-print-directory
endif
${ARCH}:
test -d ${ARCH} || $(MKDIR) ${ARCH}
# general purpose forcing dependency; try to use .PHONY instead
FORCEIT:
FORCE:
.PHONY: $(RECURSE_TARGETS)