source: rtems/cpukit/posix/Makefile.am @ 13482e5d

4.104.114.84.95
Last change on this file since 13482e5d was 13482e5d, checked in by Ralf Corsepius <ralf.corsepius@…>, on Jul 8, 2003 at 1:46:51 PM

2003-07-08 Ralf Corsepius <corsepiu@…>

  • configure.ac: Remove (Merged-in into ../configure.ac)
  • Makefile.am: Reflect having merged configure.ac into ../configure.ac.
  • src/config.h: New.
  • Property mode set to 100644
File size: 8.1 KB
Line 
1##
2## $Id$
3##
4
5include $(top_srcdir)/automake/multilib.am
6include $(top_srcdir)/automake/compile.am
7include $(top_srcdir)/automake/lib.am
8
9EXTRA_DIST =
10
11$(PROJECT_INCLUDE):
12        @$(mkinstalldirs) $@
13$(PROJECT_INCLUDE)/rtems/posix:
14        @$(mkinstalldirs) $@
15
16$(PROJECT_INCLUDE)/%.h: include/%.h
17        $(INSTALL_DATA) $< $@
18$(PROJECT_INCLUDE)/%.inl: $(INLINEdir)/%.inl
19        $(INSTALL_DATA) $< $@
20
21if HAS_POSIX
22
23PREINSTALL_FILES = $(PROJECT_INCLUDE)
24PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/posix
25
26# include
27
28noinst_HEADERS = include/devctl.h include/intr.h
29noinst_HEADERS += src/config.h
30
31include_HEADERS = include/sched.h include/aio.h include/mqueue.h include/semaphore.h
32
33PREINSTALL_FILES += $(include_HEADERS:include/%=$(PROJECT_INCLUDE)/%)
34
35# include/rtems/posix
36
37include_rtems_posixdir = $(includedir)/rtems/posix
38
39include_H_FILES = include/rtems/posix/cancel.h include/rtems/posix/cond.h include/rtems/posix/config.h \
40    include/rtems/posix/key.h include/rtems/posix/mqueue.h include/rtems/posix/mutex.h \
41    include/rtems/posix/posixapi.h include/rtems/posix/priority.h include/rtems/posix/psignal.h \
42    include/rtems/posix/pthread.h include/rtems/posix/ptimer.h include/rtems/posix/semaphore.h \
43    include/rtems/posix/threadsup.h include/rtems/posix/time.h include/rtems/posix/timer.h
44PREINSTALL_FILES += $(include_H_FILES:include/%=$(PROJECT_INCLUDE)/%)
45include_rtems_posix_HEADERS = $(include_H_FILES)
46
47include_MP_H_FILES = include/rtems/posix/condmp.h include/rtems/posix/mqueuemp.h include/rtems/posix/mutexmp.h \
48    include/rtems/posix/pthreadmp.h include/rtems/posix/semaphoremp.h
49if HAS_MP
50PREINSTALL_FILES += $(include_MP_H_FILES:include/%=$(PROJECT_INCLUDE)/%)
51include_rtems_posix_HEADERS += $(include_MP_H_FILES)
52endif
53
54noinst_HEADERS += include/rtems/posix/intr.h include/rtems/posix/threadsup.h
55noinst_HEADERS += $(include_H_FILES) $(include_MP_H_FILES)
56
57PREINSTALL_FILES += $(PROJECT_INCLUDE)/rtems/posix \
58    $(include_rtems_posix_HEADERS:include/%=$(PROJECT_INCLUDE)/%)
59
60## inline
61
62inline_H_FILES = inline/rtems/posix/cond.inl inline/rtems/posix/key.inl \
63    inline/rtems/posix/mqueue.inl inline/rtems/posix/mutex.inl \
64    inline/rtems/posix/pthread.inl inline/rtems/posix/priority.inl \
65    inline/rtems/posix/semaphore.inl inline/rtems/posix/timer.inl
66noinst_HEADERS += inline/rtems/posix/intr.inl $(inline_H_FILES)
67
68if INLINE
69PREINSTALL_FILES += $(inline_H_FILES:inline/%=$(PROJECT_INCLUDE)/%)
70include_rtems_posix_HEADERS += $(inline_H_FILES)
71endif
72
73## macros
74
75macros_H_FILES = macros/rtems/posix/cond.inl macros/rtems/posix/key.inl \
76    macros/rtems/posix/mqueue.inl macros/rtems/posix/mutex.inl \
77    macros/rtems/posix/pthread.inl macros/rtems/posix/priority.inl \
78    macros/rtems/posix/semaphore.inl macros/rtems/posix/timer.inl
79noinst_HEADERS += macros/rtems/posix/intr.inl $(macros_H_FILES)
80
81if MACROS
82PREINSTALL_FILES += $(macros_H_FILES:macros/%=$(PROJECT_INCLUDE)/%)
83include_rtems_posix_HEADERS += $(macros_H_FILES)
84endif
85
86## src
87LIB=$(ARCH)/libposix.a
88
89# following are semi-implemented and untested
90UNUSED_C_FILES = src/devctl.c src/intr.c
91
92# These are really in the stand but not really functional
93BUILD_FOR_NOW_C_FILES = src/aio.c
94
95ENOSYS_C_FILES = src/execl.c src/execle.c src/execlp.c src/execv.c src/execve.c src/execvp.c src/fork.c \
96    src/pthreadatfork.c src/wait.c src/waitpid.c
97
98CANCEL_C_FILES = src/cancel.c src/cancelrun.c src/cleanuppop.c src/cleanuppush.c \
99    src/setcancelstate.c src/setcanceltype.c src/testcancel.c
100
101CONDITION_VARIABLE_C_FILES = src/cond.c src/condattrdestroy.c src/condattrgetpshared.c \
102    src/condattrinit.c src/condattrsetpshared.c src/condbroadcast.c \
103    src/conddefaultattributes.c src/conddestroy.c src/condinit.c src/condmp.c src/condsignal.c \
104    src/condsignalsupp.c src/condtimedwait.c src/condwait.c src/condwaitsupp.c
105
106ID_C_FILES = src/getegid.c src/geteuid.c src/getgid.c src/getgroups.c src/getlogin.c src/getpgrp.c \
107    src/getpid.c src/getppid.c src/getuid.c src/setpgid.c src/setsid.c
108
109KEY_C_FILES = src/key.c src/keycreate.c src/keydelete.c src/keygetspecific.c \
110    src/keyrundestructors.c src/keysetspecific.c
111
112MEMORY_C_FILES = src/getpagesize.c src/mprotect.c
113
114MESSAGE_QUEUE_C_FILES = src/mqueue.c src/mqueueclose.c src/mqueuecreatesupp.c \
115    src/mqueuedeletesupp.c src/mqueuegetattr.c src/mqueuenametoid.c src/mqueuenotify.c \
116    src/mqueueopen.c src/mqueuereceive.c src/mqueuerecvsupp.c src/mqueuesend.c \
117    src/mqueuesendsupp.c src/mqueuesetattr.c src/mqueuetimedreceive.c src/mqueuetimedsend.c \
118    src/mqueuetranslatereturncode.c src/mqueueunlink.c
119
120MUTEX_C_FILES = src/mutex.c src/mutexattrdestroy.c src/mutexattrgetprioceiling.c \
121    src/mutexattrgetprotocol.c src/mutexattrgetpshared.c src/mutexattrinit.c \
122    src/mutexattrsetprioceiling.c src/mutexattrsetprotocol.c src/mutexattrsetpshared.c \
123    src/mutexdefaultattributes.c src/mutexdestroy.c src/mutexfromcorestatus.c \
124    src/mutexgetprioceiling.c src/mutexinit.c src/mutexlock.c src/mutexlocksupp.c src/mutexmp.c \
125    src/mutexsetprioceiling.c src/mutextimedlock.c src/mutextrylock.c src/mutexunlock.c
126
127PTHREAD_C_FILES = src/pthread.c src/pthreadsetcputime.c src/pthreadgetcputime.c \
128    src/pthreadgetcpuclockid.c src/pthreadonce.c src/pthreadequal.c src/pthreadself.c \
129    src/pthreadexit.c src/pthreaddetach.c src/pthreadjoin.c src/pthreadcreate.c \
130    src/pthreadattrsetdetachstate.c src/pthreadattrgetdetachstate.c \
131    src/pthreadattrgetstackaddr.c src/pthreadattrsetstackaddr.c \
132    src/pthreadattrgetstacksize.c src/pthreadattrsetstacksize.c src/pthreadattrinit.c \
133    src/pthreadattrdestroy.c src/pthreadsetschedparam.c src/pthreadgetschedparam.c \
134    src/pthreadattrsetschedparam.c src/pthreadattrgetschedparam.c \
135    src/pthreadattrgetschedpolicy.c src/pthreadattrsetschedpolicy.c \
136    src/pthreadattrgetinheritsched.c src/pthreadattrsetinheritsched.c \
137    src/pthreadattrgetscope.c src/pthreadattrsetscope.c
138
139PSIGNAL_C_FILES = src/psignal.c src/alarm.c src/kill.c src/killinfo.c src/pause.c \
140    src/psignalclearprocesssignals.c src/psignalsetprocesssignals.c \
141    src/psignalchecksignal.c src/psignalclearsignals.c src/psignalunblockthread.c \
142    src/pthreadkill.c src/pthreadsigmask.c src/sigaction.c src/sigaddset.c src/sigdelset.c \
143    src/sigemptyset.c src/sigfillset.c src/sigismember.c src/sigpending.c src/sigprocmask.c \
144    src/sigqueue.c src/sigsuspend.c src/sigtimedwait.c src/sigwait.c src/sigwaitinfo.c \
145    src/signal_2.c
146
147SEMAPHORE_C_FILES = src/semaphore.c src/semaphorecreatesupp.c src/semaphoredeletesupp.c \
148    src/semaphoremp.c src/semaphorenametoid.c src/semaphorewaitsupp.c src/semclose.c \
149    src/semdestroy.c src/semgetvalue.c src/seminit.c src/semopen.c src/sempost.c src/semtimedwait.c \
150    src/semtrywait.c src/semunlink.c src/semwait.c
151
152TIME_C_FILES = src/adjtime.c src/time.c src/posixtimespecsubtract.c \
153    src/posixtimespectointerval.c src/posixintervaltotimespec.c src/clockgetcpuclockid.c \
154    src/clockgetenableattr.c src/clockgetres.c src/clockgettime.c src/clocksetenableattr.c \
155    src/clocksettime.c src/nanosleep.c src/sleep.c
156
157# the timer manager needs to be split further but only after its
158# dependence on the Classic API Timer Manager is removed.
159TIMER_C_FILES = src/ptimer.c src/ptimer1.c
160
161EXTRA_DIST += src/README.mqueue
162
163C_FILES = src/adasupp.c $(CANCEL_C_FILES) $(CONDITION_VARIABLE_C_FILES) \
164    $(ID_C_FILES) $(KEY_C_FILES) $(MEMORY_C_FILES) $(MESSAGE_QUEUE_C_FILES) \
165    $(MUTEX_C_FILES) $(PTHREAD_C_FILES) $(PSIGNAL_C_FILES) src/sched.c \
166    $(SEMAPHORE_C_FILES) src/sysconf.c $(TIME_C_FILES) $(TIMER_C_FILES) src/types.c \
167    $(ENOSYS_C_FILES) $(BUILD_FOR_NOW_C_FILES)
168OBJS = $(C_FILES:src/%.c=${ARCH}/%.$(OBJEXT))
169
170#
171# Add local stuff here using +=
172#
173
174AM_CPPFLAGS += -I$(srcdir)/src -D__RTEMS_INSIDE__
175
176all-local: ${ARCH} $(PREINSTALL_FILES) $(LIB)
177
178$(LIB): ${OBJS}
179        $(make-library)
180endif
181
182${ARCH}/%.$(OBJEXT): src/%.c
183        ${COMPILE} -o $@ -c $<
184
185# temporary so we can see how many things are left to implement
186not:
187        grep -i NOT_IMPL $(C_FILES:%=$(srcdir)/%) | grep -v MP_NOT_IMPL
188        @echo
189        @echo
190        @echo
191        @echo `grep -i NOT_IMPL $(C_FILES:%=$(srcdir)/%) | grep -v MP_NOT_IMPL | wc -l ` places marked not implemented
192        @echo `wc -l $(C_FILES:%=$(srcdir)/%) | grep total` lines of C code to test
193
194EXTRA_DIST += $(C_FILES) $(UNUSED_C_FILES)
195
196include $(top_srcdir)/automake/local.am
Note: See TracBrowser for help on using the repository browser.