blob: 85daeddead861a588464b8777eff44871751c29c (
plain) (
tree)
|
|
#
# $Id$
#
@SET_MAKE@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
top_builddir = ..
subdir = src
RTEMS_ROOT = @RTEMS_ROOT@
PROJECT_ROOT = @PROJECT_ROOT@
VPATH = @srcdir@
# following are semi-implemented and untested
# C_PIECES=aio cancel devctl intr utsname
# These are really in the stand but not really functional
BUILD_FOR_NOW_C_PIECES = aio utsname
ENOSYS_C_PIECES = execl execle execlp execv execve execvp fork pthreadatfork \
wait waitpid
CANCEL_C_PIECES= cancel cancelrun cleanuppop cleanuppush setcancelstate \
setcanceltype testcancel
CONDITION_VARIABLE_C_PIECES= cond condattrdestroy condattrgetpshared \
condattrinit condattrsetpshared condbroadcast conddefaultattributes \
conddestroy condinit condmp condsignal condsignalsupp condtimedwait \
condwait condwaitsupp
ID_C_PIECES= getegid geteuid getgid getgroups getlogin getpgrp getpid getppid \
getuid setpgid setsid
KEY_C_PIECES= key keycreate keydelete keygetspecific keyrundestructors \
keysetspecific
MESSAGE_QUEUE_C_PIECES= mqueue mqueueclose mqueuecreatesupp mqueuedeletesupp \
mqueuegetattr mqueuenametoid mqueuenotify mqueueopen mqueuereceive \
mqueuerecvsupp mqueuesend mqueuesendsupp mqueuesetattr \
mqueuetimedreceive mqueuetimedsend mqueueunlink \
MUTEX_C_PIECES= mutex mutexattrdestroy mutexattrgetprioceiling \
mutexattrgetprotocol mutexattrgetpshared mutexattrinit \
mutexattrsetprioceiling mutexattrsetprotocol mutexattrsetpshared \
mutexdefaultattributes mutexdestroy mutexfromcorestatus \
mutexgetprioceiling mutexinit mutexlock mutexlocksupp mutexmp \
mutexsetprioceiling mutextimedlock mutextrylock mutexunlock
PTHREAD_C_PIECES = pthread pthreadsetcputime pthreadgetcputime \
pthreadgetcpuclockid pthreadonce pthreadequal pthreadself pthreadexit \
pthreaddetach pthreadjoin pthreadcreate pthreadattrsetdetachstate \
pthreadattrgetdetachstate pthreadattrgetstackaddr \
pthreadattrsetstackaddr pthreadattrgetstacksize pthreadattrsetstacksize \
pthreadattrinit pthreadattrdestroy pthreadsetschedparam \
pthreadgetschedparam pthreadattrsetschedparam pthreadattrgetschedparam \
pthreadattrgetschedpolicy pthreadattrsetschedpolicy \
pthreadattrgetinheritsched pthreadattrsetinheritsched \
pthreadattrgetscope pthreadattrsetscope
PSIGNAL_C_PIECES = psignal alarm kill killinfo pause \
psignalclearprocesssignals psignalsetprocesssignals \
psignalchecksignal psignalclearsignals \
psignalunblockthread pthreadkill \
pthreadsigmask sigaction sigaddset sigdelset sigemptyset sigfillset \
sigismember sigpending sigprocmask sigqueue sigsuspend sigtimedwait \
sigwait sigwaitinfo signal_2
SEMAPHORE_C_PIECES= semaphore semaphorecreatesupp semaphoredeletesupp \
semaphoremp semaphorenametoid semaphorewaitsupp semclose semdestroy \
semgetvalue seminit semopen sempost semtimedwait semtrywait \
semunlink semwait
TIME_C_PIECES= time posixtimespecsubtract posixtimespectointerval \
posixintervaltotimespec clockgetcpuclockid clockgetenableattr \
clockgetres clockgettime clocksetenableattr clocksettime nanosleep
# the timer manager needs to be split further but only after its
# dependence on the Classic API Timer Manager is removed.
TIMER_C_PIECES=ptimer ptimer1
C_PIECES = adasupp $(CANCEL_C_PIECES) $(CONDITION_VARIABLE_C_PIECES) \
$(ID_C_PIECES) $(KEY_C_PIECES) $(MESSAGE_QUEUE_C_PIECES) \
$(MUTEX_C_PIECES) $(PTHREAD_C_PIECES) \
$(PSIGNAL_C_PIECES) sched $(SEMAPHORE_C_PIECES) sleep sysconf \
$(TIME_C_PIECES) $(TIMER_C_PIECES) types $(ENOSYS_C_PIECES) \
$(BUILD_FOR_NOW_C_PIECES)
C_FILES = $(C_PIECES:%=%.c)
C_O_FILES = $(C_PIECES:%=${ARCH}/%.o)
SRCS = $(C_FILES) $(CC_FILES)
OBJS = $(C_O_FILES) $(CC_O_FILES)
include $(RTEMS_ROOT)/make/custom/@RTEMS_BSP@.cfg
include $(RTEMS_ROOT)/make/lib.cfg
INSTALL_CHANGE = @INSTALL_CHANGE@
#
# Add local stuff here using +=
#
DEFINES += -D__RTEMS_INSIDE__
CPPFLAGS +=
CFLAGS += $(CFLAGS_OS_V)
#
# Add your list of files to delete here. The config files
# already know how to delete some stuff, so you may want
# to just run 'make clean' first to see what gets missed.
# 'make clobber' already includes 'make clean'
#
CLEAN_ADDITIONS +=
CLOBBER_ADDITIONS +=
all: ${ARCH} $(SRCS) ${OBJS}
# temporary so we can see how many things are left to implement
not:
grep -i NOT_IMPL $(C_FILES) | grep -v MP_NOT_IMPL
@echo
@echo
@echo
@echo `grep -i NOT_IMPL $(C_FILES) | grep -v MP_NOT_IMPL | wc -l ` places marked not implemented
@echo `wc -l $(C_FILES) | grep total` lines of C code to test
Makefile: $(srcdir)/Makefile.in $(top_builddir)/config.status
cd $(top_builddir) \
&& CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
|