]>
Commit | Line | Data |
---|---|---|
dff8da6b | 1 | # Copyright (C) 1997-2024 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 | 14 | # You should have received a copy of the GNU Lesser General Public |
59ba27a6 | 15 | # License along with the GNU C Library; if not, see |
5a82c748 | 16 | # <https://www.gnu.org/licenses/>. |
cbdee279 UD |
17 | |
18 | # | |
19 | # Sub-makefile for real-time portion of the library. | |
20 | # | |
21 | subdir := rt | |
22 | ||
a5f891ac JM |
23 | include ../Makeconfig |
24 | ||
3a50811c | 25 | headers := aio.h mqueue.h bits/mqueue.h bits/mqueue2.h |
cbdee279 | 26 | |
c6e7ec2f FW |
27 | routines = \ |
28 | shm_open \ | |
ae830b2d | 29 | shm_unlink \ |
c6e7ec2f | 30 | |
30639e79 | 31 | librt-routines = librt-compat |
3df6dcc5 FW |
32 | librt-shared-only-routines = librt-compat |
33 | ||
a2014d31 | 34 | $(librt-routines-var) += \ |
3df6dcc5 | 35 | aio_cancel \ |
1a7d0ded | 36 | aio_error \ |
1f3a8e71 | 37 | aio_fsync \ |
d12506b2 FW |
38 | aio_misc \ |
39 | aio_notify \ | |
7ad553b9 FW |
40 | aio_read \ |
41 | aio_read64 \ | |
406fb327 | 42 | aio_return \ |
d12506b2 | 43 | aio_sigqueue \ |
32e75051 | 44 | aio_suspend \ |
496919b1 FW |
45 | aio_write \ |
46 | aio_write64 \ | |
3fe3f807 FW |
47 | lio_listio \ |
48 | lio_listio64 \ | |
12028b50 | 49 | mq_close \ |
f66d9abc | 50 | mq_getattr \ |
2da5f22f | 51 | mq_notify \ |
983f43b5 | 52 | mq_open \ |
903e6f99 | 53 | mq_receive \ |
5b3a2abf | 54 | mq_send \ |
a752cb67 | 55 | mq_setattr \ |
903e6f99 | 56 | mq_timedreceive \ |
5b3a2abf | 57 | mq_timedsend \ |
1a5a653b | 58 | mq_unlink \ |
273a2a2a FW |
59 | timer_create \ |
60 | timer_delete \ | |
df6d227e | 61 | timer_getoverr \ |
a1d6ed02 | 62 | timer_gettime \ |
477910b8 | 63 | timer_settime \ |
ad201afe | 64 | |
30639e79 FW |
65 | ifeq ($(pthread-in-libc),yes) |
66 | # Pretend that librt.so is a linker script, so that the symbolic | |
67 | # link is not installed. | |
68 | install-lib-ldscripts = librt.so | |
69 | $(inst_libdir)/librt.so: | |
70 | endif | |
71 | ||
7b5af2d8 | 72 | tests := tst-shm tst-timer tst-timer2 \ |
ffa8d2a0 | 73 | tst-aio tst-aio64 tst-aio2 tst-aio3 tst-aio4 tst-aio5 tst-aio6 \ |
b957e864 | 74 | tst-aio7 tst-aio8 tst-aio9 tst-aio10 \ |
679d83ba | 75 | tst-mqueue1 tst-mqueue2 tst-mqueue3 tst-mqueue4 \ |
0a901ba4 | 76 | tst-mqueue5 tst-mqueue6 tst-mqueue7 tst-mqueue8 tst-mqueue9 \ |
4cc79c21 | 77 | tst-bz28213 \ |
84060bad | 78 | tst-timer3 tst-timer4 tst-timer5 \ |
7b5af2d8 | 79 | tst-cpuclock2 tst-cputimer1 tst-cputimer2 tst-cputimer3 \ |
e9e912d3 AZ |
80 | tst-shm-cancel \ |
81 | tst-mqueue10 | |
27d83441 | 82 | tests-internal := tst-timer-sigmask |
ee74a442 | 83 | |
088d3291 AZ |
84 | tests-time64 := \ |
85 | tst-aio6-time64 \ | |
86 | tst-cpuclock2-time64 \ | |
87 | tst-mqueue1-time64 \ | |
88 | tst-mqueue2-time64 \ | |
89 | tst-mqueue4-time64 \ | |
90 | tst-mqueue8-time64 \ | |
e9e912d3 | 91 | tst-mqueue10-time64 \ |
088d3291 AZ |
92 | tst-timer4-time64 |
93 | ||
f649c201 UD |
94 | extra-libs := librt |
95 | extra-libs-others := $(extra-libs) | |
96 | ||
cbdee279 UD |
97 | include ../Rules |
98 | ||
36975e8e L |
99 | CFLAGS-aio_suspend.c += -fexceptions |
100 | CFLAGS-mq_timedreceive.c += -fexceptions -fasynchronous-unwind-tables | |
101 | CFLAGS-mq_timedsend.c += -fexceptions -fasynchronous-unwind-tables | |
7a114794 | 102 | |
20c894d2 FB |
103 | # Exclude fortified routines from being built with _FORTIFY_SOURCE |
104 | routines_no_fortify += \ | |
105 | mq_open \ | |
106 | # routines_no_fortify | |
107 | ||
1b82c6c7 UD |
108 | LDFLAGS-rt.so = -Wl,--enable-new-dtags,-z,nodelete |
109 | ||
fab7ce3f | 110 | $(objpfx)librt.so: $(shared-thread-library) |
b9337b6a | 111 | |
30639e79 | 112 | ifneq ($(pthread-in-libc),yes) |
df455ccb | 113 | ifeq (yes,$(build-shared)) |
27d83441 AZ |
114 | $(addprefix $(objpfx),$(tests) $(tests-internal)): \ |
115 | $(objpfx)librt.so $(shared-thread-library) | |
df455ccb | 116 | else |
27d83441 AZ |
117 | $(addprefix $(objpfx),$(tests)) $(tests-internal): \ |
118 | $(objpfx)librt.a $(static-thread-library) | |
e64911d1 | 119 | endif |
30639e79 | 120 | endif # !$(pthread-in-libc) |
80ff3e34 | 121 | |
740b3dbe | 122 | tst-mqueue7-ARGS = -- $(host-test-program-cmd) |