source: rtems/c/src/lib/libc/Makefile.in @ fcee56c0

4.104.114.84.95
Last change on this file since fcee56c0 was 5adf355a, checked in by Joel Sherrill <joel.sherrill@…>, on 05/27/99 at 16:11:52

Split initialization and reserve resources from termios to reduce
size of mininum application.

  • Property mode set to 100644
File size: 2.9 KB
Line 
1#
2#  $Id$
3#
4
5@SET_MAKE@
6srcdir = @srcdir@
7top_srcdir = @top_srcdir@
8top_builddir = ../../../..
9subdir = c/src/lib/libc
10
11INSTALL = @INSTALL@
12
13RTEMS_ROOT = $(top_srcdir)/@RTEMS_TOPdir@
14PROJECT_ROOT = @PROJECT_ROOT@
15
16VPATH = @srcdir@
17
18LIBNAME=libcsupport.a
19LIB=${ARCH}/${LIBNAME}
20
21BASE_FS_PIECES=base_fs mount unmount ioman \
22  libio libio_sockets eval
23
24IMFS_PIECES= imfs_chown imfs_creat imfs_directory imfs_eval imfs_free \
25    imfs_gtkn imfs_init imfs_link imfs_mknod imfs_mount imfs_fchmod \
26    imfs_rmnod imfs_unlink imfs_unmount imfs_utime imfs_ntype imfs_stat \
27    imfs_getchild memfile deviceio imfs_handlers imfs_debug imfs_symlink \
28    imfs_readlink imfs_fdatasync
29
30TERMIOS_PIECES= cfgetispeed cfgetospeed cfsetispeed cfsetospeed \
31  tcgetattr tcsetattr tcdrain termios termiosinitialize \
32  termiosreserveresources
33
34SYSTEM_CALL_PIECES=\
35  open close read write lseek ioctl \
36  mkdir mknod mkfifo rmdir chdir \
37  chmod fchmod chown \
38  link unlink umask ftruncate utime \
39  fstat fcntl fpathconf getdents \
40  fsync fdatasync pipe dup dup2  \
41  symlink readlink
42
43DIRECTORY_SCAN_PIECES=\
44  opendir closedir readdir rewinddir scandir seekdir telldir getcwd
45
46MALLOC_PIECES=\
47  malloc __brk __sbrk \
48
49LIBC_GLUE_PIECES=\
50  __gettod __times \
51  truncate access stat lstat pathconf \
52  newlibc no_libc
53
54UNIX_LIBC_PIECES=unixlibc hosterr
55
56C_FILES=$(C_PIECES:%=%.c)
57C_O_FILES=$(C_PIECES:%=${ARCH}/%.o)
58
59H_FILES=$(srcdir)/libcsupport.h
60SYS_H_FILES=
61RTEMS_H_FILES=$(srcdir)/libio.h
62
63SRCS=$(C_FILES) $(H_FILES) $(SYS_H_FILES) $(RTEMS_H_FILES)
64OBJS=$(C_O_FILES)
65
66include $(RTEMS_ROOT)/make/custom/${RTEMS_BSP}.cfg
67include $(RTEMS_ROOT)/make/lib.cfg
68
69# C and C++ source names, if any, go here -- minus the .c or .cc
70ifeq ($(RTEMS_CPU),unix)
71C_PIECES=\
72    $(UNIX_LIBC_PIECES) \
73    $(BASE_FS_PIECES) \
74    $(MALLOC_PIECES) \
75    $(TERMIOS_PIECES)
76else
77C_PIECES=\
78    $(LIBC_GLUE_PIECES) \
79    $(BASE_FS_PIECES) \
80    $(MALLOC_PIECES) \
81    $(TERMIOS_PIECES) \
82    $(SYSTEM_CALL_PIECES) \
83    $(DIRECTORY_SCAN_PIECES) \
84    $(IMFS_PIECES)
85endif
86
87#
88# Add local stuff here using +=
89#
90
91DEFINES  +=
92CPPFLAGS +=
93CFLAGS   += $(LIBC_DEFINES)
94
95#
96# Add your list of files to delete here.  The config files
97#  already know how to delete some stuff, so you may want
98#  to just run 'make clean' first to see what gets missed.
99#  'make clobber' already includes 'make clean'
100#
101
102CLEAN_ADDITIONS += $(LIB)
103CLOBBER_ADDITIONS +=
104
105all:    ${ARCH} preinstall $(LIB)
106        $(INSTALL_VARIANT) -m 644 ${LIB} ${PROJECT_RELEASE}/lib
107
108$(LIB): $(SRCS) ${OBJS}
109        $(make-library)
110
111# Install the library, appending _g or _p as appropriate.
112# for include files, just use $(INSTALL_CHANGE)
113preinstall:
114        $(INSTALL_CHANGE) -m 444 ${RTEMS_H_FILES} $(PROJECT_INCLUDE)/rtems
115        $(INSTALL_CHANGE) -m 444 $(H_FILES) $(PROJECT_INCLUDE)
116        $(INSTALL_CHANGE) -m 444 $(SYS_H_FILES) $(PROJECT_INCLUDE)/sys
117
118Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
119        cd $(top_builddir) \
120         && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
Note: See TracBrowser for help on using the repository browser.