1
# This makefile is compatible with BCB make. Use "make -fBMakefile" to compile.
3
# The variables $DLLDEST and $LIBDEST hold the destination directories for the
4
# dll and the lib, respectively. Probably all that needs to change is $DEVROOT.
6
# Currently only the recommended pthreadBC.dll is built by this makefile.
14
DLLDEST = $(DEVROOT)\DLL
15
LIBDEST = $(DEVROOT)\DLL
17
DLLS = pthreadBC$(DLL_VER).dll
24
CFLAGS = /q /I. /D_WIN32_WINNT=0x400 /DHAVE_CONFIG_H=1 /4 /tWD /tWM \
28
BCFLAGS = $(PTW32_FLAGS) $(CFLAGS)
30
# Agregate modules for inlinability
55
INCL = config.h implement.h semaphore.h pthread.h need_errno.h
59
pthread_attr_destroy.c \
60
pthread_attr_getdetachstate.c \
61
pthread_attr_setdetachstate.c \
62
pthread_attr_getstackaddr.c \
63
pthread_attr_setstackaddr.c \
64
pthread_attr_getstacksize.c \
65
pthread_attr_setstacksize.c \
66
pthread_attr_getscope.c \
67
pthread_attr_setscope.c
70
pthread_barrier_init.c \
71
pthread_barrier_destroy.c \
72
pthread_barrier_wait.c \
73
pthread_barrierattr_init.c \
74
pthread_barrierattr_destroy.c \
75
pthread_barrierattr_setpshared.c \
76
pthread_barrierattr_getpshared.c
79
pthread_setcancelstate.c \
80
pthread_setcanceltype.c \
81
pthread_testcancel.c \
85
ptw32_cond_check_need_init.c \
86
pthread_condattr_destroy.c \
87
pthread_condattr_getpshared.c \
88
pthread_condattr_init.c \
89
pthread_condattr_setpshared.c \
90
pthread_cond_destroy.c \
92
pthread_cond_signal.c \
100
pthread_getconcurrency.c \
103
pthread_setconcurrency.c \
110
ptw32_mutex_check_need_init.c \
111
pthread_mutex_init.c \
112
pthread_mutex_destroy.c \
113
pthread_mutexattr_init.c \
114
pthread_mutexattr_destroy.c \
115
pthread_mutexattr_getpshared.c \
116
pthread_mutexattr_setpshared.c \
117
pthread_mutexattr_settype.c \
118
pthread_mutexattr_gettype.c \
119
pthread_mutex_lock.c \
120
pthread_mutex_timedlock.c \
121
pthread_mutex_unlock.c \
122
pthread_mutex_trylock.c
125
pthread_mutexattr_setkind_np.c \
126
pthread_mutexattr_getkind_np.c \
127
pthread_getw32threadhandle_np.c \
129
pthread_num_processors_np.c \
130
pthread_win32_attach_detach_np.c \
131
pthread_timechange_handler_np.c
135
ptw32_processInitialize.c \
136
ptw32_processTerminate.c \
137
ptw32_threadStart.c \
138
ptw32_threadDestroy.c \
139
ptw32_tkAssocCreate.c \
140
ptw32_tkAssocDestroy.c \
141
ptw32_callUserDestroyRoutines.c \
143
ptw32_relmillisecs.c \
145
ptw32_InterlockedCompareExchange.c \
146
ptw32_getprocessors.c
149
ptw32_rwlock_check_need_init.c \
150
ptw32_rwlock_cancelwrwait.c \
151
pthread_rwlock_init.c \
152
pthread_rwlock_destroy.c \
153
pthread_rwlockattr_init.c \
154
pthread_rwlockattr_destroy.c \
155
pthread_rwlockattr_getpshared.c \
156
pthread_rwlockattr_setpshared.c \
157
pthread_rwlock_rdlock.c \
158
pthread_rwlock_timedrdlock.c \
159
pthread_rwlock_wrlock.c \
160
pthread_rwlock_timedwrlock.c \
161
pthread_rwlock_unlock.c \
162
pthread_rwlock_tryrdlock.c \
163
pthread_rwlock_trywrlock.c
166
pthread_attr_setschedpolicy.c \
167
pthread_attr_getschedpolicy.c \
168
pthread_attr_setschedparam.c \
169
pthread_attr_getschedparam.c \
170
pthread_attr_setinheritsched.c \
171
pthread_attr_getinheritsched.c \
172
pthread_setschedparam.c \
173
pthread_getschedparam.c \
174
sched_get_priority_max.c \
175
sched_get_priority_min.c \
176
sched_setscheduler.c \
177
sched_getscheduler.c \
187
sem_post_multiple.c \
194
ptw32_spinlock_check_need_init.c \
195
pthread_spin_init.c \
196
pthread_spin_destroy.c \
197
pthread_spin_lock.c \
198
pthread_spin_unlock.c \
199
pthread_spin_trylock.c
206
pthread_key_create.c \
207
pthread_key_delete.c \
208
pthread_setspecific.c \
209
pthread_getspecific.c
215
if exist pthread*.dll del pthread*.dll
216
if exist pthread*.lib del pthread*.lib
217
if exist *.stamp del *.stamp
220
if exist *.obj del *.obj
221
if exist *.ilk del *.ilk
222
if exist *.ilc del *.ilc
223
if exist *.ild del *.ild
224
if exist *.ilf del *.ilf
225
if exist *.ils del *.ils
226
if exist *.tds del *.tds
227
if exist *.pdb del *.pdb
228
if exist *.exp del *.exp
229
if exist *.map del *.map
232
if exist *.res del *.res
236
copy pthread*.dll $(DLLDEST)
237
copy pthread*.lib $(LIBDEST)
239
$(DLLS): $(DLL_OBJS) version.res
240
ilink32 /Tpd /Gi c0d32x.obj $(DLL_OBJS), \
242
cw32mti.lib import32.lib, ,\
246
$(CC) $(OPTIM) $(BCFLAGS) -c $<
251
attr.obj: attr.c $(ATTR_SRCS) $(INCL)
252
barrier.obj: barrier.c $(BARRIER_SRCS) $(INCL)
253
cancel.obj: cancel.c $(CANCEL_SRCS) $(INCL)
254
condvar.obj: condvar.c $(CONDVAR_SRCS) $(INCL)
255
exit.obj: exit.c $(EXIT_SRCS) $(INCL)
256
misc.obj: misc.c $(MISC_SRCS) $(INCL)
257
mutex.obj: mutex.c $(MUTEX_SRCS) $(INCL)
258
nonportable.obj: nonportable.c $(NONPORTABLE_SRCS) $(INCL)
259
private.obj: private.c $(PRIVATE_SRCS) $(INCL)
260
rwlock.obj: rwlock.c $(RWLOCK_SRCS) $(INCL)
261
sched.obj: sched.c $(SCHED_SRCS) $(INCL)
262
semaphore.obj: semaphore.c $(SEMAPHORE_SRCS) $(INCL)
263
spin.obj: spin.c $(SPIN_SRCS) $(INCL)
264
sync.obj: sync.c $(SYNC_SRCS) $(INCL)
265
tsd.obj: tsd.c $(TSD_SRCS) $(INCL)
266
version.res: version.rc $(INCL)