summaryrefslogtreecommitdiffstats
path: root/c/src/exec/posix/src/Makefile.in
blob: fb6146dc10a6db98de86ae89cfc6aa140cc76f34 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
#
#  $Id$
#

@SET_MAKE@
srcdir = @srcdir@
top_srcdir = @top_srcdir@
top_builddir = ../../../../..
subdir = c/src/exec/posix/src

INSTALL = @INSTALL@

RTEMS_ROOT = $(top_srcdir)/@RTEMS_TOPdir@
PROJECT_ROOT = @PROJECT_ROOT@

VPATH = @srcdir@

# following are semi-implemented and untested
# C_PIECES=aio cancel devctl intr mqueue semaphore utsname

# These are really in the stand but not really functional
BUILD_FOR_NOW_C_PIECES=aio cancel mqueue semaphore utsname

ENOSYS_C_PIECES=\
    execl execle execlp execv execve execvp fork \
    pthreadatfork wait waitpid

PTHREAD_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_PIECES=\
  psignal alarm kill killinfo pause pthreadkill pthreadsigmask \
  sigaction sigaddset sigdelset sigemptyset sigfillset sigismember \
  sigpending sigprocmask sigqueue sigsuspend sigtimedwait sigwait \
  sigwaitinfo signal_2

C_PIECES= adasupp cond getpid key mutex $(PTHREAD_PIECES) \
  $(PSIGNAL_PIECES) ptimer sched time \
  types unistd $(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

#
# 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