Patch from Ralf Corsepius <corsepiu@faw.uni-ulm.de>:

Here is another fix, which addresses a few more or less severe bugs in
    configuration and unix/posix:

    * Configuration fix: c/src/lib/configure.in didn't handle RDBG correctly

    * Configuration fix: make depend was non-functional in
      c/src/lib/libc/Makefile.in
    * Configuration fix: stray comment removed from aclocal/target.m4

    * RTEMS fix: termios support for unix/posix now uses the host's headers
      only (was completely broken).
    - Don't install RTEMS's newlib sys/termios.h for unix (sys/termios.h
      apparently is a newlib specific header)
    - To be able to compile RTEMS's  termios.c with glibc2.1, glibc-2.1
      needs __USE_MISC, which is a private define from gcc's features.h, being
      defined only when _BSD_SOURCE of _SVID_SOURCE is defined.  RTEMS's
      termios apparently implements BSD, thus -D_BSD_SOURCE was added to
      Linux-posix.cfg.
    - Conflicting definitions for  __USE_MISC and _BSD_SOURCE inside of
      RTEMS codes removed due to definition of _BSD_SOURCE on the toplevel.

    This fix has been tested with linux/posix (primary glibc2.1 native),
    linux/posix (secondary libc5 native), sh/gensh1, i386/pc386 and a couple
    of other bsp's/CPU.

    To apply:

        cd <srcdir>
        patch -p1 < rtems-rc-19990709-9.diff

    and
        aclocal -I aclocal && automake && autoconf
        cd c/src/lib; autoconf

    or
        ./autogen
This commit is contained in:
Joel Sherrill
1999-08-18 16:49:52 +00:00
parent ea562ee977
commit 6fc973e39b
15 changed files with 17 additions and 46 deletions

View File

@@ -27,10 +27,6 @@
#include <errno.h>
#include <string.h>
/* for sbrk prototype in linux */
#if defined(__linux__)
#define __USE_MISC
#endif
#include <unistd.h> /* sbrk(2) */
rtems_id RTEMS_Malloc_Heap;

2
c/src/lib/configure vendored
View File

@@ -2442,7 +2442,7 @@ fi
if test "$HAS_RDBG" = "yes"; then
if test "$RTEMS_HAS_RDBG" = "yes"; then
echo $ac_n "checking whether BSP supports librdbg""... $ac_c" 1>&6
echo "configure:2448: checking whether BSP supports librdbg" >&5
if eval "test \"`echo '$''{'rtems_cv_HAS_RDBG'+set}'`\" = set"; then

View File

@@ -124,7 +124,7 @@ if test "$HAS_NETWORKING" = "yes"; then
RTEMS_CHECK_MAKEFILE(libnetworking)
RTEMS_CHECK_MAKEFILE(librpc)
if test "$HAS_RDBG" = "yes"; then
if test "$RTEMS_HAS_RDBG" = "yes"; then
RTEMS_CHECK_RDBG(RTEMS_BSP)
if test "$HAS_RDBG" = "yes"; then

View File

@@ -31,7 +31,8 @@ H_FILES = $(H_PIECES:%=$(srcdir)/%.h)
SYS_H_PIECES_no_V = ioctl
SYS_H_PIECES_yes_V =
SYS_H_PIECES = termios utime $(SYS_H_PIECES_$(HAS_NETWORKING)_V)
@UNIX_FALSE@SYS_H_PIECES = termios
SYS_H_PIECES += utime $(SYS_H_PIECES_$(HAS_NETWORKING)_V)
SYS_H_FILES = $(SYS_H_PIECES:%=$(srcdir)/sys/%.h)
MOTOROLA_H_PIECES = mc68230 mc68681

View File

@@ -20,10 +20,6 @@
#include <stdio.h>
#include <stdlib.h>
/* for sbrk prototype in linux */
#if defined(__linux__)
#define __USE_MISC
#endif
#include <unistd.h>
#include <bsp.h>

View File

@@ -43,18 +43,6 @@ LIBC_GLUE_C_PIECES = __gettod __times truncate access stat lstat pathconf \
UNIX_LIBC_C_PIECES = unixlibc hosterr
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
include $(RTEMS_ROOT)/make/lib.cfg
INSTALL_CHANGE = @INSTALL_CHANGE@
mkinstalldirs = $(SHELL) $(top_srcdir)/@RTEMS_TOPdir@/mkinstalldirs
INSTALLDIRS = $(PROJECT_INCLUDE)/rtems $(PROJECT_INCLUDE)/sys \
$(PROJECT_INCLUDE)
$(INSTALLDIRS):
@$(mkinstalldirs) $(INSTALLDIRS)
# C and C++ source names, if any, go here -- minus the .c or .cc
UNIX_C_PIECES = $(UNIX_LIBC_C_PIECES) $(BASE_FS_C_PIECES) $(MALLOC_C_PIECES) \
$(TERMIOS_C_PIECES)
@@ -72,6 +60,18 @@ H_FILES = $(srcdir)/libcsupport.h
SYS_H_FILES =
RTEMS_H_FILES = $(srcdir)/libio.h
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
include $(RTEMS_ROOT)/make/lib.cfg
INSTALL_CHANGE = @INSTALL_CHANGE@
mkinstalldirs = $(SHELL) $(top_srcdir)/@RTEMS_TOPdir@/mkinstalldirs
INSTALLDIRS = $(PROJECT_INCLUDE)/rtems $(PROJECT_INCLUDE)/sys \
$(PROJECT_INCLUDE)
$(INSTALLDIRS):
@$(mkinstalldirs) $(INSTALLDIRS)
SRCS = $(C_FILES) $(H_FILES) $(SYS_H_FILES) $(RTEMS_H_FILES)
OBJS = $(C_O_FILES)

View File

@@ -27,10 +27,6 @@
#include <errno.h>
#include <string.h>
/* for sbrk prototype in linux */
#if defined(__linux__)
#define __USE_MISC
#endif
#include <unistd.h> /* sbrk(2) */
rtems_id RTEMS_Malloc_Heap;

View File

@@ -12,10 +12,6 @@
*/
/* for strcasecmp in linux and solaris */
#if defined(__linux__)
#include <features.h>
#define __USE_BSD
#endif
#include <string.h>
#define __RTEMS_VIOLATE_KERNEL_VISIBILITY__

View File

@@ -12,10 +12,6 @@
*/
/* for strcasecmp in linux and solaris */
#if defined(__linux__)
#include <features.h>
#define __USE_BSD
#endif
#include <string.h>
#define __RTEMS_VIOLATE_KERNEL_VISIBILITY__