]>
Commit | Line | Data |
---|---|---|
9759bbf1 | 1 | # Copyright (C) 1997-2004, 2006 Free Software Foundation, Inc. |
cbdee279 UD |
2 | # This file is part of the GNU C Library. |
3 | ||
4 | # The GNU C Library is free software; you can redistribute it and/or | |
41bdb6e2 AJ |
5 | # modify it under the terms of the GNU Lesser General Public |
6 | # License as published by the Free Software Foundation; either | |
7 | # version 2.1 of the License, or (at your option) any later version. | |
cbdee279 UD |
8 | |
9 | # The GNU C Library is distributed in the hope that it will be useful, | |
10 | # but WITHOUT ANY WARRANTY; without even the implied warranty of | |
11 | # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
41bdb6e2 | 12 | # Lesser General Public License for more details. |
cbdee279 | 13 | |
41bdb6e2 AJ |
14 | # You should have received a copy of the GNU Lesser General Public |
15 | # License along with the GNU C Library; if not, write to the Free | |
16 | # Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA | |
17 | # 02111-1307 USA. | |
cbdee279 UD |
18 | |
19 | # | |
20 | # Sub-makefile for real-time portion of the library. | |
21 | # | |
22 | subdir := rt | |
23 | ||
1b82c6c7 | 24 | headers := aio.h mqueue.h bits/mqueue.h |
cbdee279 | 25 | |
5ec73bb9 | 26 | aio-routines := aio_cancel aio_error aio_fsync aio_misc aio_read \ |
cbdee279 | 27 | aio_read64 aio_return aio_suspend aio_write \ |
d71b808a | 28 | aio_write64 lio_listio lio_listio64 aio_sigqueue \ |
5ec73bb9 RM |
29 | aio_notify |
30 | clock-routines := get_clockfreq clock_getcpuclockid \ | |
6689a188 | 31 | clock_getres clock_gettime clock_settime \ |
5ec73bb9 RM |
32 | clock_nanosleep |
33 | timer-routines := timer_create timer_delete timer_getoverr \ | |
34 | timer_gettime timer_settime | |
35 | shm-routines := shm_open shm_unlink | |
1b82c6c7 UD |
36 | mq-routines := mq_open mq_close mq_unlink mq_getattr mq_setattr \ |
37 | mq_notify mq_send mq_receive mq_timedsend \ | |
38 | mq_timedreceive | |
cbdee279 | 39 | |
5ec73bb9 RM |
40 | librt-routines = $(aio-routines) \ |
41 | $(clock-routines) $(timer-routines) \ | |
1b82c6c7 | 42 | $(shm-routines) $(mq-routines) |
f649c201 | 43 | |
a7f6c66e | 44 | tests := tst-shm tst-clock tst-clock_nanosleep tst-timer tst-timer2 \ |
ffa8d2a0 | 45 | tst-aio tst-aio64 tst-aio2 tst-aio3 tst-aio4 tst-aio5 tst-aio6 \ |
b957e864 | 46 | tst-aio7 tst-aio8 tst-aio9 tst-aio10 \ |
679d83ba | 47 | tst-mqueue1 tst-mqueue2 tst-mqueue3 tst-mqueue4 \ |
0a901ba4 | 48 | tst-mqueue5 tst-mqueue6 tst-mqueue7 tst-mqueue8 tst-mqueue9 \ |
84060bad RM |
49 | tst-timer3 tst-timer4 tst-timer5 \ |
50 | tst-cpuclock1 tst-cpuclock2 \ | |
f1762c0c UD |
51 | tst-cputimer1 tst-cputimer2 tst-cputimer3 \ |
52 | tst-clock2 | |
ee74a442 | 53 | |
f649c201 UD |
54 | extra-libs := librt |
55 | extra-libs-others := $(extra-libs) | |
56 | ||
5ec73bb9 | 57 | distribute := aio_misc.h |
cbdee279 UD |
58 | |
59 | include ../Rules | |
60 | ||
7a114794 UD |
61 | CFLAGS-aio_suspend.c = -fexceptions |
62 | CFLAGS-clock_nanosleep.c = -fexceptions -fasynchronous-unwind-tables | |
7d7ff54c | 63 | CFLAGS-librt-cancellation.c = -fasynchronous-unwind-tables |
7a114794 | 64 | |
1b82c6c7 UD |
65 | LDFLAGS-rt.so = -Wl,--enable-new-dtags,-z,nodelete |
66 | ||
cbdee279 UD |
67 | # Depend on libc.so so a DT_NEEDED is generated in the shared objects. |
68 | # This ensures they will load libc.so for needed symbols if loaded by | |
69 | # a statically-linked program that hasn't already loaded it. | |
639c3248 | 70 | $(objpfx)librt.so: $(common-objpfx)libc.so $(common-objpfx)libc_nonshared.a \ |
a7f7b879 UD |
71 | $(shared-thread-library) \ |
72 | $(if $(filter yes,$(elf)), $(elfobjdir)/ld.so) | |
b9337b6a | 73 | |
df455ccb | 74 | ifeq (yes,$(build-shared)) |
e64911d1 | 75 | $(addprefix $(objpfx),$(tests)): $(objpfx)librt.so $(shared-thread-library) |
df455ccb | 76 | else |
e64911d1 GM |
77 | $(addprefix $(objpfx),$(tests)): $(objpfx)librt.a $(static-thread-library) |
78 | endif | |
79 | ifeq (yes,$(build-bounded)) | |
80 | $(tests:%=$(objpfx)%-bp): $(objpfx)librt_b.a $(bounded-thread-library) | |
b85697f6 | 81 | endif |
80ff3e34 | 82 | |
efa8adf5 UD |
83 | tst-mqueue7-ARGS = -- $(built-program-cmd) |
84 | ||
80ff3e34 AJ |
85 | ifeq (yes,$(build-static-nss)) |
86 | otherlibs += $(nssobjdir)/libnss_files.a $(resolvobjdir)/libnss_dns.a \ | |
87 | $(resolvobjdir)/libresolv.a | |
88 | endif |