summaryrefslogtreecommitdiffstats
path: root/c/src/lib/libc/Makefile.in
diff options
context:
space:
mode:
authorJoel Sherrill <joel.sherrill@OARcorp.com>1998-11-23 19:07:58 +0000
committerJoel Sherrill <joel.sherrill@OARcorp.com>1998-11-23 19:07:58 +0000
commit07a3253de2c3f9bc2d96a351680ec72548dadd2d (patch)
treeb4f85e78927202cffe01b194c708c3dd800d8e57 /c/src/lib/libc/Makefile.in
parentAdded new tests in support of the file system infrastructure. (diff)
downloadrtems-07a3253de2c3f9bc2d96a351680ec72548dadd2d.tar.bz2
Added base version of file system infrastructure. This includes a major
overhaul of the RTEMS system call interface. This base file system is the "In-Memory File System" aka IMFS. The design and implementation was done by the following people: + Joel Sherrill (joel@OARcorp.com) + Jennifer Averett (jennifer@OARcorp.com) + Steve "Mr Mount" Salitasc (salitasc@OARcorp.com) + Kerwin Wade (wade@OARcorp.com) PROBLEMS ======== + It is VERY likely that merging this will break the UNIX port. This can/will be fixed. + There is likely some reentrancy/mutual exclusion needed. + Eventually, there should be a "mini-IMFS" description table to eliminate links, symlinks, etc to save memory. All you need to have "classic RTEMS" functionality is technically directories and device IO. All the rest could be left out to save memory.
Diffstat (limited to 'c/src/lib/libc/Makefile.in')
-rw-r--r--c/src/lib/libc/Makefile.in51
1 files changed, 38 insertions, 13 deletions
diff --git a/c/src/lib/libc/Makefile.in b/c/src/lib/libc/Makefile.in
index c9fbf72795..d3bc2afbc1 100644
--- a/c/src/lib/libc/Makefile.in
+++ b/c/src/lib/libc/Makefile.in
@@ -11,34 +11,59 @@ PROJECT_ROOT = @PROJECT_ROOT@
LIBNAME=libcsupport.a
LIB=${ARCH}/${LIBNAME}
-# define TARGET_PIECES later based on RTEMS_CPU definition
+BASE_FS_PIECES=base_fs mount unmount ioman \
+ libio eval
+
+IMFS_PIECES= imfs_chown imfs_creat imfs_directory imfs_eval imfs_free \
+ imfs_gtkn imfs_init imfs_link imfs_mknod imfs_mount imfs_fchmod \
+ imfs_rmnod imfs_unlink imfs_unmount imfs_utime imfs_ntype imfs_stat \
+ imfs_getchild memfile deviceio imfs_handlers imfs_debug imfs_symlink \
+ imfs_readlink
+
+TERMIOS_PIECES= cfgetispeed cfgetospeed cfsetispeed cfsetospeed \
+ tcgetattr tcsetattr tcdrain termios
+
+SYSTEM_CALL_PIECES=\
+ open close read write lseek ioctl \
+ mkdir mknod mkfifo rmdir chdir \
+ chmod fchmod chown \
+ link unlink umask ftruncate utime \
+ fstat fcntl fpathconf getdents \
+ fsync fdatasync pipe dup dup2 \
+ symlink readlink
+
+DIRECTORY_SCAN_PIECES=\
+ opendir closedir readdir rewinddir scandir seekdir telldir
+
+LIBC_GLUE_PIECES=\
+ malloc __brk __sbrk \
+ __gettod __times \
+ truncate access stat pathconf \
+ newlibc no_libc unixlibc hosterr
# C and C++ source names, if any, go here -- minus the .c or .cc
-C_PIECES=__times _execve malloc syscalls \
- no_libc support libio hosterr tcattr tcdrain \
- cfiospeed termios $(TARGET_PIECES)
+C_PIECES=\
+ $(LIBC_GLUE_PIECES) \
+ $(TERMIOS_PIECES) \
+ $(SYSTEM_CALL_PIECES) \
+ $(DIRECTORY_SCAN_PIECES) \
+ $(BASE_FS_PIECES) \
+ $(IMFS_PIECES)
+
C_FILES=$(C_PIECES:%=%.c)
C_O_FILES=$(C_PIECES:%=${ARCH}/%.o)
H_FILES=$(srcdir)/libcsupport.h
SYS_H_FILES=
RTEMS_H_FILES=$(srcdir)/libio.h
-PRIVATE_H_FILES=$(srcdir)/internal.h
INSTALLED_H_FILES=$(srcdir)/libio.h $(srcdir)/libcsupport.h
-SRCS=$(C_FILES) $(H_FILES) $(SYS_H_FILES) $(RTEMS_H_FILES) $(PRIVATE_H_FILES)
+SRCS=$(C_FILES) $(H_FILES) $(SYS_H_FILES) $(RTEMS_H_FILES)
OBJS=$(C_O_FILES)
include $(RTEMS_ROOT)/make/custom/$(RTEMS_BSP).cfg
include $(RTEMS_ROOT)/make/lib.cfg
-ifeq ($(RTEMS_CPU),unix)
-TARGET_PIECES=unixlibc
-else
-TARGET_PIECES=__brk __gettod newlibc newlibif newlibifr \
- getdents readdir opendir closedir rewinddir scandir seekdir telldir
-endif
-
#
# Add local stuff here using +=
#