Changeset ea562ee9 in rtems for make


Ignore:
Timestamp:
Aug 12, 1999, 6:22:17 PM (21 years ago)
Author:
Joel Sherrill <joel.sherrill@…>
Branches:
4.10, 4.11, 4.8, 4.9, 5, master
Children:
6fc973e
Parents:
8aefe83
Message:

Patch from Ralf Corsepius <corsepiu@…>:

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

Location:
make/custom
Files:
2 edited

Legend:

Unmodified
Added
Removed
  • make/custom/mcp750.cfg

    r8aefe83 rea562ee9  
    102102#           -Wl,-\( -Wl,-lc -Wl,-lrtemsall -Wl,-lgcc -Wl,-\)
    103103define make-exe
    104         $(CC) $(CFLAGS) -o $(basename $@).exe $(LINK_OBJS)
     104        $(CC) $(CPPFLAGS) $(CFLAGS) -o $(basename $@).exe $(LINK_OBJS)
    105105        $(NM) -g -n $(basename $@).exe > $(basename $@).num
    106106        $(SIZE) $(basename $@).exe
    107107        $(CP) $(basename $@).exe $(PROJECT_ROOT)/powerpc-rtems/c/mcp750/lib/libbsp/powerpc/mcp750/bootloader/$(ARCH); \
    108108        cd $(PROJECT_ROOT)/powerpc-rtems/c/mcp750/lib/libbsp/powerpc/mcp750/bootloader; \
    109         make bootloader BINARY_LOADED=$(basename $@).exe; \
     109        $(MAKE) bootloader BINARY_LOADED=$(basename $@).exe; \
    110110        COMPLETE_FILE_NAME=$(basename $@).exe ;\
    111111        echo $${COMPLETE_FILE_NAME} ;\
  • make/custom/posix.cfg

    r8aefe83 rea562ee9  
    55#
    66
    7 include $(RTEMS_ROOT)/make/target.cfg
     7# include $(RTEMS_ROOT)/make/target.cfg
    88include $(RTEMS_ROOT)/make/host.cfg
    99
Note: See TracChangeset for help on using the changeset viewer.