Files
rtems/make/custom/posix.cfg
Joel Sherrill ea562ee977 Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>:
After upgrading my linux box to the brand new SuSE 6.2 release, which is
    glibc-2.1 based, I came across a bug in RTEMS - IIRC, I even warned you
    about it about 1/2 a year ago, but nothing has been done since then :-.

    The *.m4 macros to check for SYSV/IPC are broken for linux/glibc2.1,
    because they assume that linux always defines union semun, which isn't
    true anymore for glibc2.1 (the manpage for semctl states _X_OPEN
    specifies it this way). Therefore I have tried to implement a more
    general approach for handling SYSV for unix/posix which checks for
    presence of struct semun, instead of trying  to evaluate OS specific
    preprocessor symbols.

    This approach is a bit adventureous, because I only tested it with
    linux/glibc2.1 and linux/libc5, but not under other Unix variants RTEMS
    supports. I am quite confident it will work on other hosts, too, but who
    knows :-.

    [FYI: I think this might also is the cause of some problems with RedHat
    6.X / Mandrake linux recently reported on the rtems list -- rtems-4.0.0
    can not be build for posix on any glibc2.1 based host]

    Furthermore the patch below contains a couple of minor fixes and
    configuration cleanups, which IMO should be applied before releasing a
    new snapshot.

    To apply this patch:

        cd <source-tree>
        patch -p1 < rtems-rc-19990709-8.diff
        ./autogen
1999-08-12 18:22:17 +00:00

37 lines
938 B
INI

#
# Config file for the posix based RTEMS
#
# $Id$
#
# include $(RTEMS_ROOT)/make/target.cfg
include $(RTEMS_ROOT)/make/host.cfg
# Set them here, otherwise gcc-target-default.cfg will set them to values
# not working on some os variants (linux-RH5.0, glibc versions 2.0.0 - 2.0.7)
# These should be available on all unices
LIBC_LIBC=-lc
LIBC_LIBM=-lm
include $(RTEMS_ROOT)/make/custom/$(RTEMS_HOST)-posix.cfg
# Not applicable - let's override 'em
LINKCMDS=
START_FILE=
START_BASE=
# Here is the rule to actually build a $(ARCH)/foo.exe
# It also builds $(ARCH)/foo.sr and $(ARCH)/foo.nm
# Usage ref: src/tests/sptest/sp1/Makefile
#
# 'NODE' is set to 1 or 2 for multi cpu tests (ref: mptests/mp01/node1/Makefile)
# If NODE is set as an environment variable, don't trust it, zero it out.
# (NODE turns out to be a very common environment variable)
ifeq (,$(NODE))
NODE=0
else
ifeq "$(origin NODE)" "environment"
NODE=0
endif
endif