forked from Imagelibrary/rtems
.. a major configuration cleanup
... major enhancement of automake support.
... and it contains a *major* breakthough:
Automake support for libchip and libmisc *LEAF* directories.
To implement this I have used several nasty tricks
* The basical trick is to wrap an old Makefile.in's contents into a
Makefile.am and still continue to use (i.e include) the old
*.cfg files.
* Replaced each INSTALL_IF_CHANGE and INSTALL_VARIANT with make
dependencies
* Add a gnu-make ifdef AUTOMAKE to main.cfg to avoid conflicts between
automake and RTEMS make rules
* Replaced each install:: and preinstall:: rule with make dependencies
* Replaced SUB_DIRS with SUBDIRS in all Makefile.ins (Automake
convention)
* Removed each manually added autoconf substitution which automake
performs automatically.
This is not yet full automake support, because using the temporary
installation directory, preinstallation in general and building variants
are in contradiction to automake's basic working principles ...
... the new Makefile.ams work still somewhat clumsy
... nevertheless they work (quite well).
WARNING:
At first glance this patch is small, but
* it affects the whole configuration system.
* it opens the road to introducing automake to all Makefile.ins
currently not being under automake control.
JOEL> Does this remove or add any files?
Both, all Makefile.ins below libchip and libmisc get replaced with
Makefile.ams.
66 lines
1.8 KiB
INI
66 lines
1.8 KiB
INI
#
|
|
# Config file for the Linux 1.x based RTEMS UNIX
|
|
#
|
|
# $Id$
|
|
#
|
|
|
|
RTEMS_CPU=unix
|
|
RTEMS_CPU_FAMILY=i386
|
|
RTEMS_CPU_MODEL=i486dx
|
|
RTEMS_UNIX_FLAVOR=linux
|
|
|
|
# This is the actual bsp directory used during the build process.
|
|
RTEMS_BSP_FAMILY=posix
|
|
|
|
include $(RTEMS_ROOT)/make/custom/default.cfg
|
|
|
|
# RTEMS_LIBC_DIR must already be set (by configuration) DOES NOT MATTER
|
|
LIBC_DEFINES =-D_POSIX_C_SOURCE
|
|
LIBC_DEFINES+=-DRTEMS_UNIXLIB -DRTEMS_UNIX -DMALLOC_PROVIDED -DRTEMS_DEBUG
|
|
|
|
# The following define the memory reserved in the executable for the
|
|
# RTEMS Workspace and the C Program Heap.
|
|
LIBC_DEFINES += -DWORKSPACE_MB=2
|
|
LIBC_DEFINES += -DHEAPSPACE_MB=1
|
|
|
|
DEFINES += -D_BSD_SOURCE
|
|
|
|
# optimize flag: typically -0, could use -O4 or -fast
|
|
# -O4 is ok for RTEMS
|
|
CFLAGS_OPTIMIZE_V = -O2
|
|
|
|
# This section makes the target dependent options file.
|
|
|
|
# NDEBUG (C library)
|
|
# if defined asserts do not generate code. This is commonly used
|
|
# as a command line option.
|
|
#
|
|
# RTEMS_TEST_NO_PAUSE (RTEMS tests)
|
|
# do not pause between screens of output in the rtems tests
|
|
#
|
|
# NO_TABLE_MOVE (SPARC PORT)
|
|
# do not have a second trap table -- use the BSP's
|
|
#
|
|
# RTEMS_DEBUG (RTEMS)
|
|
# If defined, debug checks in RTEMS and support library code are enabled.
|
|
#
|
|
# RTEMS_UNIX (unix)
|
|
# Define this to indicate this is an RTEMS UNIX port.
|
|
|
|
define make-target-options
|
|
echo "/* #define NDEBUG 1 */ " >>$@
|
|
echo "#define RTEMS_TEST_NO_PAUSE 1" >>$@
|
|
echo "/* #define RTEMS_DEBUG 1 */" >>$@
|
|
echo "#define RTEMS_UNIX 1 " >>$@
|
|
endef
|
|
|
|
define make-exe
|
|
$(LINK.c) $(LDLIBS) -o $@ $(LINK_OBJS) $(LINK_LIBS)
|
|
$(NM) -ng $@ > $(basename $@).num
|
|
$(SIZE) $@
|
|
endef
|
|
|
|
|
|
# *****************************************************************
|
|
# Miscellaneous additions go here
|