Makefile.in 9.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227
  1. # uClibc-ng NPTL tests
  2. # Licensed under the LGPL v2.1, see the file COPYING.LIB in this tarball.
  3. ifeq ($(TARGET_ARCH),metag)
  4. TESTS_DISABLED := tst-cleanup0 tst-cleanupx0
  5. endif
  6. ifeq ($(TARGET_ARCH),riscv32)
  7. TESTS_DISABLED := tst-rwlock9
  8. endif
  9. # qemu crash
  10. ifeq ($(TARGET_ARCH),microblaze)
  11. TESTS_DISABLED := tst-tls2 tst-cancelx4 tst-cancelx8 tst-cancelx9 tst-cancelx10 tst-cancelx11 \
  12. tst-cancelx12 tst-cancelx13 tst-cancelx14 tst-cancelx15 \
  13. tst-cancelx16 tst-cancelx18 tst-cancelx20 tst-cancelx21 \
  14. tst-cleanupx0 tst-cleanupx1 tst-cleanupx3 tst-oncex3 tst-oncex4 \
  15. tst-sem11 tst-sem12
  16. endif
  17. # deadlock
  18. ifeq ($(TARGET_ARCH),sh)
  19. TESTS_DISABLED := tst-cond1 tst-cond4 tst-cond6 tst-cond7 tst-cond10 \
  20. tst-cond13 tst-cond14 tst-cond15 tst-cond18 tst-cond20 \
  21. tst-cond21 tst-cond22 tst-cputimer1 tst-cputimer2 tst-cputimer3 \
  22. tst-mutex8 tst-timer4 tst-timer5
  23. endif
  24. TESTS := tst-align tst-align2 tst-atfork1 tst-attr1 tst-attr2 tst-attr3 \
  25. tst-barrier1 tst-barrier2 tst-barrier3 tst-barrier4 tst-basic1 \
  26. tst-basic2 tst-basic3 tst-basic4 tst-basic5 tst-basic6 \
  27. tst-cancel1 tst-cancel2 tst-cancel3 tst-cancel6 tst-cancel7 \
  28. tst-cancel8 tst-cancel9 tst-cancel10 tst-cancel11 tst-cancel12 \
  29. tst-cancel13 tst-cancel14 tst-cancel15 tst-cancel16 \
  30. tst-cancel19 tst-cancel20 tst-cancel21 tst-cancel22 \
  31. tst-cleanup0 tst-cleanup1 tst-cleanup2 tst-cleanup3 \
  32. tst-cleanup4 tst-clock1 tst-clock2 tst-cond1 tst-cond2 \
  33. tst-cond3 tst-cond4 tst-cond5 tst-cond6 tst-cond7 tst-cond8 \
  34. tst-cond9 tst-cond10 tst-cond11 tst-cond12 tst-cond13 \
  35. tst-cond14 tst-cond15 tst-cond16 tst-cond17 tst-cond18 \
  36. tst-cond19 tst-cond20 tst-cond21 tst-detach1 tst-eintr1 \
  37. tst-eintr2 tst-eintr3 tst-eintr4 tst-eintr5 tst-exec2 tst-exec3 \
  38. tst-exec4 tst-exit1 tst-exit2 tst-exit3 tst-flock1 tst-flock2 \
  39. tst-fork1 tst-fork2 tst-fork3 tst-fork4 tst-initializers1 \
  40. tst-join1 tst-join2 tst-join3 tst-join4 tst-join5 tst-key1 \
  41. tst-key2 tst-key3 tst-key4 tst-kill1 tst-kill2 tst-kill3 \
  42. tst-kill4 tst-kill5 tst-kill6 tst-mutex1 tst-mutex2 tst-mutex3 \
  43. tst-mutex4 tst-mutex5 tst-mutex6 tst-mutex7 tst-mutex8 \
  44. tst-mutex9 tst-mutex5a tst-mutex7a tst-once1 tst-once2 \
  45. tst-once3 tst-once4 tst-popen1 tst-raise1 tst-rwlock1 \
  46. tst-rwlock2 tst-rwlock3 tst-rwlock4 tst-rwlock5 tst-rwlock6 \
  47. tst-rwlock7 tst-rwlock8 tst-rwlock9 tst-rwlock10 tst-rwlock11 \
  48. tst-rwlock12 tst-rwlock13 tst-rwlock14 tst-sched1 tst-sem1 \
  49. tst-sem2 tst-sem3 tst-sem4 tst-sem5 tst-sem6 tst-sem7 tst-sem8 \
  50. tst-sem9 tst-signal1 tst-signal2 tst-signal3 tst-signal4 \
  51. tst-signal5 tst-signal6 tst-spin1 tst-spin2 tst-spin3 \
  52. tst-stack1 tst-stack2 tst-stdio1 tst-stdio2 tst-sysconf \
  53. tst-tls1 tst-tls2 tst-tls3 tst-tls4 tst-tls5 tst-tsd1 tst-tsd2 \
  54. tst-tsd3 tst-tsd4 tst-tsd5 tst-umask1 tst-cond-deadlock \
  55. tst-align3 tst-cancel4 tst-cancel5 tst-cancel18 tst-cancel23 \
  56. tst-cancel25 tst-cancelx2 tst-cancelx3 tst-cancelx4 tst-cancelx6 \
  57. tst-cancelx7 tst-cancelx8 tst-cancelx9 tst-cancelx10 tst-cancelx11 \
  58. tst-cancelx12 tst-cancelx13 tst-cancelx14 tst-cancelx15 tst-cancelx16 \
  59. tst-cancelx18 tst-cancelx20 tst-cancelx21 tst-cleanupx0 tst-cleanupx1 \
  60. tst-cleanupx2 tst-cleanupx3 tst-cleanupx4 tst-cond22 tst-cond23 \
  61. tst-getpid1 tst-getpid2 tst-getpid3 tst-join6 tst-tsd6 \
  62. tst-oddstacklimit tst-oncex3 tst-oncex4 tst-rwlock2a \
  63. tst-basic7 tst-signal7 tst-vfork1x tst-vfork2x tst-sem10 tst-sem11 \
  64. tst-sem12 tst-initializers1-c89 tst-initializers1-c99 \
  65. tst-initializers1-gnu89 tst-initializers1-gnu99 \
  66. tst-atfork2 tst-clockid
  67. #
  68. # These are for the RT library and POSIX timers.
  69. #
  70. TESTS += tst-clock tst-clock_nanosleep tst-cpuclock1 tst-cpuclock2 \
  71. tst-cputimer1 tst-cputimer2 tst-cputimer3 tst-mqueue1 \
  72. tst-mqueue2 tst-mqueue3 tst-mqueue4 tst-mqueue5 tst-mqueue6 \
  73. tst-mqueue7 tst-mqueue8 tst-mqueue9 tst-timer2 tst-timer3 \
  74. tst-timer4 tst-timer5
  75. ifeq ($(TARGET_ARCH),i386)
  76. CFLAGS_tst-align := -malign-double -mpreferred-stack-boundary=4
  77. endif
  78. ifeq ($(TARGET_ARCH),i686)
  79. CFLAGS_tst-align := -malign-double -mpreferred-stack-boundary=4 -msse
  80. endif
  81. CFLAGS_tst-cleanup4aux.o := -W
  82. CFLAGS_tst-initializers1 := -W -Werror
  83. CFLAGS_tst-tls3mod.so := -fPIC -DPIC -DSHARED -shared
  84. CFLAGS_tst-tls4moda.so := -fPIC -DPIC -DSHARED -shared
  85. CFLAGS_tst-tls4modb.so := -fPIC -DPIC -DSHARED -shared
  86. CFLAGS_tst-tls5mod.so := -fPIC -DPIC -DSHARED -shared
  87. CFLAGS_tst-tls5moda.so := -fPIC -DPIC -DSHARED -shared
  88. CFLAGS_tst-tls5modb.so := -fPIC -DPIC -DSHARED -shared
  89. CFLAGS_tst-tls5modc.so := -fPIC -DPIC -DSHARED -shared
  90. CFLAGS_tst-tls5modd.so := -fPIC -DPIC -DSHARED -shared
  91. CFLAGS_tst-tls5mode.so := -fPIC -DPIC -DSHARED -shared
  92. CFLAGS_tst-tls5modf.so := -fPIC -DPIC -DSHARED -shared
  93. CFLAGS_tst-fini1mod.so := -fPIC -DPIC -DSHARED -shared
  94. LDFLAGS_tst-cond11 = -lrt
  95. LDFLAGS_tst-cond19 = -lrt
  96. LDFLAGS_tst-rwlock14 = -lrt
  97. LDFLAGS_tst-fini1 = -Wl,-rpath=./ tst-fini1mod.so
  98. LDFLAGS_tst-fini1mod.so = -Wl,-soname=tst-fini1mod.so
  99. LDFLAGS_tst-unload = -ldl
  100. LDFLAGS_tst-cancel5 := -lpthread
  101. LDFLAGS_tst-cancel18 := -lrt
  102. LDFLAGS_tst-cancelx18 := -lrt
  103. LDFLAGS_tst-cancel23 := -lc -lpthread
  104. LDFLAGS_tst-vfork1x := -lc -lpthread
  105. LDFLAGS_tst-vfork2x := -lc -lpthread
  106. CFLAGS_tst-cancelx2 += -fexceptions
  107. CFLAGS_tst-cancelx3 += -fexceptions
  108. CFLAGS_tst-cancelx4 += -fexceptions
  109. CFLAGS_tst-cancelx6 += -fexceptions
  110. CFLAGS_tst-cancelx7 += -fexceptions
  111. CFLAGS_tst-cancelx8 += -fexceptions
  112. CFLAGS_tst-cancelx9 += -fexceptions
  113. CFLAGS_tst-cancelx10 += -fexceptions
  114. CFLAGS_tst-cancelx11 += -fexceptions
  115. CFLAGS_tst-cancelx12 += -fexceptions
  116. CFLAGS_tst-cancelx13 += -fexceptions
  117. CFLAGS_tst-cancelx14 += -fexceptions
  118. CFLAGS_tst-cancelx15 += -fexceptions
  119. CFLAGS_tst-cancelx16 += -fexceptions
  120. CFLAGS_tst-cancelx18 += -fexceptions
  121. CFLAGS_tst-cancelx20 += -fexceptions -fasynchronous-unwind-tables
  122. CFLAGS_tst-cancelx21 += -fexceptions -fasynchronous-unwind-tables
  123. CFLAGS_tst-cleanupx0 += -fexceptions -fasynchronous-unwind-tables
  124. CFLAGS_tst-cleanupx1 += -fexceptions -fasynchronous-unwind-tables
  125. CFLAGS_tst-cleanupx2 += -fexceptions
  126. CFLAGS_tst-cleanupx3 += -fexceptions
  127. CFLAGS_tst-oncex3 += -fexceptions
  128. CFLAGS_tst-oncex4 += -fexceptions
  129. CFLAGS_tst-align += $(stack-align-test-flags)
  130. CFLAGS_tst-align3 += $(stack-align-test-flags)
  131. CFLAGS_tst-initializers1 = -W -Wall -Werror
  132. CFLAGS_tst-sem11 += -fexceptions -fasynchronous-unwind-tables
  133. CFLAGS_tst-sem12 += -fexceptions -fasynchronous-unwind-tables
  134. CFLAGS_tst-initializers1 = -W -Wall -Werror
  135. CFLAGS_tst-initializers1-c89 = $(CFLAGS-tst-initializers1) -std=c89
  136. CFLAGS_tst-initializers1-c99 = $(CFLAGS-tst-initializers1) -std=c99
  137. CFLAGS_tst-initializers1-gnu89 = $(CFLAGS-tst-initializers1) -std=gnu89
  138. CFLAGS_tst-initializers1-gnu99 = $(CFLAGS-tst-initializers1) -std=gnu99
  139. CFLAGS_tst-cpuclock1 += -std=c99
  140. CFLAGS_tst-cpuclock2 += -std=c99
  141. CFLAGS_tst-cputimer1 += -std=c99
  142. CFLAGS_tst-cputimer2 += -std=c99
  143. CFLAGS_tst-cputimer3 += -std=c99
  144. CFLAGS_tst-mqueue1 += -std=c99
  145. CFLAGS_tst-mqueue7 += -std=c99
  146. CFLAGS_tst-mqueue8 += -std=c99
  147. CFLAGS_tst-tsd6 += -std=c99
  148. EXTRA_LDFLAGS = $(if $(findstring -lpthread,$(LDFLAGS_$@)),,-lpthread)
  149. LDFLAGS_tst-atfork2 := -ldl -rdynamic
  150. LDFLAGS_tst-atfork2mod.so := -shared -static-libgcc -lpthread
  151. LDFLAGS_tst-cleanup4 := tst-cleanup4aux.o
  152. LDFLAGS_tst-cleanupx4 := tst-cleanup4aux.o
  153. LDFLAGS_tst-clock2 := -lrt
  154. LDFLAGS_tst-cond11 := -lrt
  155. LDFLAGS_tst-cond19 := -lrt
  156. LDFLAGS_tst-rwlock14 := -lrt
  157. LDFLAGS_tst-tls3 := -ldl -rdynamic
  158. LDFLAGS_tst-tls4 := -ldl
  159. LDFLAGS_tst-tls5 := tst-tls5mod.so
  160. LDFLAGS_tst-clock := -lrt
  161. LDFLAGS_tst-clock_nanosleep := -lrt
  162. LDFLAGS_tst-cpuclock1 := -lrt
  163. LDFLAGS_tst-cpuclock2 := -lrt -lpthread
  164. LDFLAGS_tst-cputimer1 := -lrt -lpthread
  165. LDFLAGS_tst-cputimer2 := -lrt -lpthread
  166. LDFLAGS_tst-cputimer3 := -lrt -lpthread
  167. LDFLAGS_tst-mqueue1 := -lrt
  168. LDFLAGS_tst-mqueue2 := -lrt
  169. LDFLAGS_tst-mqueue3 := -lrt -lpthread
  170. LDFLAGS_tst-mqueue4 := -lrt
  171. LDFLAGS_tst-mqueue5 := -lrt -lpthread
  172. LDFLAGS_tst-mqueue6 := -lrt -lpthread
  173. LDFLAGS_tst-mqueue7 := -lrt
  174. LDFLAGS_tst-mqueue8 := -lrt
  175. LDFLAGS_tst-mqueue9 := -lrt
  176. LDFLAGS_tst-timer2 := -lrt -lpthread
  177. LDFLAGS_tst-timer3 := -lrt -lpthread
  178. LDFLAGS_tst-timer4 := -lrt -lpthread
  179. LDFLAGS_tst-timer5 := -lrt -lpthread
  180. LDFLAGS_tst-dlsym1 := -ldl -rdynamic
  181. LDFLAGS_tst-tls3mod.so := -shared -static-libgcc -lpthread
  182. LDFLAGS_tst-tls4moda.so := -shared -static-libgcc
  183. LDFLAGS_tst-tls4modb.so := -shared -static-libgcc
  184. LDFLAGS_tst-tls5mod.so := -shared -static-libgcc -Wl,-soname,tst-tls5mod.so
  185. LDFLAGS_tst-tls5moda.so := -shared -static-libgcc
  186. LDFLAGS_tst-tls5modb.so := -shared -static-libgcc
  187. LDFLAGS_tst-tls5modc.so := -shared -static-libgcc
  188. LDFLAGS_tst-tls5modd.so := -shared -static-libgcc
  189. LDFLAGS_tst-tls5mode.so := -shared -static-libgcc
  190. LDFLAGS_tst-tls5modf.so := -shared -static-libgcc
  191. LDFLAGS_tst-cleanupx4 := tst-cleanup4aux.o
  192. #
  193. # Special case
  194. #
  195. tst-cleanup4aux.o:
  196. $(Q)$(CC) $(CFLAGS) $(CFLAGS_$@) $(EXTRA_CFLAGS) -c tst-cleanup4aux.c -o $@
  197. tst-cleanup4: tst-cleanup4aux.o
  198. tst-tls3: tst-tls3mod.so
  199. tst-tls4: tst-tls4moda.so tst-tls4modb.so
  200. tst-tls5: tst-tls5mod.so
  201. tst-cleanupx4 : tst-cleanup4aux.o
  202. tst-fini1: tst-fini1mod.so
  203. tst-atfork2: tst-atfork2mod.so
  204. OPTS_tst-cancel7 = -c ./tst-cancel7
  205. OPTS_tst-mqueue7 = -- ./tst-mqueue7
  206. OPTS_tst-exec4 = ./tst-exec4
  207. WRAPPER := env LD_LIBRARY_PATH="$$PWD:.:$(LD_LIBRARY_PATH)" TIMEOUTFACTOR=10