Fix based on bug report from Ralf Corsepius <corsepiu@faw.uni-ulm.de>:

There seems to be an ugly dependency between posix-headers and
    libcsupport.

    Configuring rtems with
    ../rtems-rc-19990324-0/configure \
    --target=i386-rtems \
    --prefix=<somewhere> \
    --disable-posix

    "make RTEMS_BSP=pc386" results into:

    [...]
    /opt/rtems/bin/i386-rtems-gcc --pipe
    -B/users/rtems/src/multi/build/pc386/lib/ -specs bsp_specs -qrtems
    -I/users/rtems/src/multi/build/pc386/lib/include/networking  -g -Wall
    -ansi -fasm  -O4 -fomit-frame-pointer    -c -o o-pc386/utime.o
    ../../../../../rtems-rc-19990324-0/c/src/lib/libc/utime.c
    In file included from
    ../../../../../rtems-rc-19990324-0/c/src/lib/libc/utime.c:16:
    /opt/rtems/i386-rtems/include/utime.h:4: sys/utime.h: No such file or
    directory
    ../../../../../rtems-rc-19990324-0/c/src/lib/libc/utime.c:24: warning:
    `struct utimbuf' declared inside parameter list
    ../../../../../rtems-rc-19990324-0/c/src/lib/libc/utime.c:24: warning:
    its scope is only this definition or declaration,
    ../../../../../rtems-rc-19990324-0/c/src/lib/libc/utime.c:24: warning:
    which is probably not what you want.
    ../../../../../rtems-rc-19990324-0/c/src/lib/libc/utime.c: In function
    `utime':
    ../../../../../rtems-rc-19990324-0/c/src/lib/libc/utime.c:34:
    dereferencing pointer to incomplete type
    ../../../../../rtems-rc-19990324-0/c/src/lib/libc/utime.c:34:
    dereferencing pointer to incomplete type
    make[4]: *** [o-pc386/utime.o] Error 1
    make[3]: *** [all] Error 1
    make[2]: *** [all] Error 1
    make[1]: *** [all] Error 1
    make[1]: Leaving directory `/lfs/poseidon/users/rtems/src/multi/build/c'

    make: *** [all] Error 1

    Apparently sys/utime.h is one of the posix headers and therefore gets
    not installed (I suppose this is correct).

    IMO, this probably indicates that sys/utime.h has to be moved to another
    include subdirectory and should not be part of the posix-package.
    [AFAIK, sys/*.h are system dependent headers, so why should it be a
    posix-header? - Hmm]
This commit is contained in:
Joel Sherrill
1999-03-24 22:52:47 +00:00
parent c9b07e92d1
commit a432c4b710
4 changed files with 51 additions and 1 deletions

View File

@@ -19,7 +19,7 @@ H_PIECES=chain console clockdrv iosupp ringbuf \
spurious timerdrv vmeintr
H_FILES=$(H_PIECES:%=$(srcdir)/%.h)
SYS_H_PIECES=ioctl termios
SYS_H_PIECES=ioctl termios utime
SYS_H_FILES=$(SYS_H_PIECES:%=$(srcdir)/sys/%.h)
MOTOROLA_H_PIECES=mc68230 mc68681

View File

@@ -0,0 +1,25 @@
/*
* $Id$
*/
#ifndef __UTIME_h__
#define __UTIME_h__
/*
* POSIX 1003.1b 5.6.6 Set File Access and Modification Times
*/
struct utimbuf {
time_t actime; /* Access time */
time_t modtime; /* Modification time */
};
/* Functions */
int utime(
const char *path,
const struct utimbuf *times
);
#endif
/* end of include file */