forked from Imagelibrary/rtems
It adds make rules for reconfiguring build-trees ("make Makefile") and
adds dependency rules for configure and friends (i.e. calls autoconf).
Most of this code has been "borrowed" from automake and was adapted to
rtems.
Addionally, I added automatic generation of the "aclocal.m4"-file by
"aclocal" (from the automake package). Therefore I splitted aclocal.m4
into several separate files (attached to this mail), each containing one
of rtems customized autoconf/m4-macros and have put them into a new
subdirectory "aclocal". Normal users won't be influenced and won't even
need this, unless they try to modify configure.in.
The main advantage of this is: these aclocal/m4-macros become reusable
and easier to administer. As a disadvantage, rtems becomes dependent of
having aclocal/automake installed. To keep building rtems functional if
autoconf or aclocal isn't installed, the related Makefile commands are
prefixed by "-" -- only an error message should be issued by "make".
74 lines
1.5 KiB
Makefile
74 lines
1.5 KiB
Makefile
#
|
|
# top level directory for RTEMS build tree
|
|
#
|
|
# Modified by Jiri to implement autoconf and cygnus one-tree build
|
|
#
|
|
# $Id$
|
|
#
|
|
|
|
@SET_MAKE@
|
|
srcdir = @srcdir@
|
|
prefix = @prefix@
|
|
exec_prefix = @exec_prefix@
|
|
bindir = @bindir@
|
|
libdir = @libdir@
|
|
includedir = @includedir@
|
|
target = @target@
|
|
manext = 1
|
|
mandir = @mandir@/man$(manext)
|
|
program_prefix = @program_prefix@
|
|
|
|
export bindir
|
|
|
|
RTEMS_ROOT = @top_srcdir@
|
|
PROJECT_ROOT = @PROJECT_ROOT@
|
|
|
|
VPATH=@srcdir@
|
|
|
|
ifeq ($(RTEMS_BSP),)
|
|
RTEMS_BSP = @RTEMS_BSP_LIST@
|
|
endif
|
|
|
|
include $(RTEMS_ROOT)/make/main.cfg
|
|
|
|
MTARGETS = all install $(TARGET_VARIANTS) $(TARGET_VARIANTS:%=%_all) \
|
|
$(TARGET_VARIANTS:%=%_install) $(TARGET_VARIANTS:%=%_tests) \
|
|
clean_wrapup distclean clean_dirs clean_tools tests clean depend
|
|
|
|
EXIT_CMD = exit 1
|
|
|
|
# Don't pass flags from previous make - especially NOT CFLAGS
|
|
override MAKEFLAGS=
|
|
|
|
$(MTARGETS):
|
|
BASEDIR=`pwd`; \
|
|
for bsp in $(RTEMS_BSP) xxx; \
|
|
do if [ $$bsp != xxx ] ; then \
|
|
cd $$BASEDIR; \
|
|
cmd="cd c; $(MAKE) RTEMS_BSP=$$bsp $(FLAGS_TO_PASS) \
|
|
$@" ; \
|
|
eval $$cmd || $(EXIT_CMD); \
|
|
fi; done;
|
|
|
|
## Configuration stuff
|
|
|
|
ACLOCAL = aclocal -I aclocal
|
|
AUTOCONF = autoconf
|
|
|
|
ACLOCAL_M4 = aclocal.m4
|
|
|
|
$(ACLOCAL_M4): configure.in
|
|
-cd $(RTEMS_ROOT) && $(ACLOCAL)
|
|
|
|
Makefile: Makefile.in config.status
|
|
CONFIG_FILES=$@ CONFIG_HEADERS= $(SHELL) ./config.status
|
|
|
|
config.status: $(RTEMS_ROOT)/configure
|
|
$(SHELL) ./config.status --recheck
|
|
|
|
$(RTEMS_ROOT)/configure: $(RTEMS_ROOT)/configure.in $(ACLOCAL_M4)
|
|
-cd $(RTEMS_ROOT) && $(AUTOCONF)
|
|
|
|
.PRECIOUS: $(ACLOCAL_M4) configure Makefile config.status
|
|
|