Makefile 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138
  1. ifeq ($(subdir),iconvdata)
  2. ISO-8859-1_CP037_Z900-routines := iso-8859-1_cp037_z900
  3. ISO-8859-1_CP037_Z900-map := gconv.map
  4. UTF8_UTF32_Z9-routines := utf8-utf32-z9
  5. UTF8_UTF32_Z9-map := gconv.map
  6. UTF16_UTF32_Z9-routines := utf16-utf32-z9
  7. UTF16_UTF32_Z9-map := gconv.map
  8. UTF8_UTF16_Z9-routines := utf8-utf16-z9
  9. UTF8_UTF16_Z9-map := gconv.map
  10. s390x-iconv-modules = ISO-8859-1_CP037_Z900 UTF8_UTF16_Z9 UTF16_UTF32_Z9 UTF8_UTF32_Z9
  11. extra-modules-left += $(s390x-iconv-modules)
  12. include extra-module.mk
  13. cpp-srcs-left := $(foreach mod,$(s390x-iconv-modules),$($(mod)-routines))
  14. lib := iconvdata
  15. include $(patsubst %,$(..)libof-iterator.mk,$(cpp-srcs-left))
  16. extra-objs += $(addsuffix .so, $(s390x-iconv-modules))
  17. install-others += $(patsubst %, $(inst_gconvdir)/%.so, \
  18. $(s390x-iconv-modules)) \
  19. $(inst_gconvdir)/gconv-modules.d/gconv-modules-s390.conf
  20. $(patsubst %, $(inst_gconvdir)/%.so, $(s390x-iconv-modules)) : \
  21. $(inst_gconvdir)/%.so: $(objpfx)%.so $(+force)
  22. $(do-install-program)
  23. ifdef objpfx
  24. generated += gconv-modules.d/gconv-modules-s390.conf
  25. endif
  26. $(inst_gconvdir)/gconv-modules.d/gconv-modules-s390.conf: \
  27. $(modpfx)gconv-modules-s390.conf $(+force)
  28. $(do-install)
  29. $(modpfx)gconv-modules-s390.conf: ../sysdeps/s390/gconv-modules-s390.conf \
  30. $(modpfx)
  31. cp $< $@
  32. endif
  33. ifeq ($(subdir),elf)
  34. ifeq ($(build-shared),yes)
  35. tests += tst-dl-runtime-resolve-noaudit tst-dl-runtime-resolve-audit \
  36. tst-dl-runtime-profile-noaudit
  37. # FIXME: When both LD_PROFILE and LD_AUDIT are set, a segfault occurs.
  38. #tests += tst-dl-runtime-profile-audit
  39. modules-names += tst-dl-runtime-mod
  40. $(objpfx)tst-dl-runtime-resolve-noaudit: $(objpfx)tst-dl-runtime-mod.so
  41. $(objpfx)tst-dl-runtime-resolve-audit: $(objpfx)tst-dl-runtime-mod.so
  42. $(objpfx)tst-dl-runtime-profile-noaudit: $(objpfx)tst-dl-runtime-mod.so
  43. $(objpfx)tst-dl-runtime-profile-audit: $(objpfx)tst-dl-runtime-mod.so
  44. $(objpfx)tst-dl-runtime-resolve-audit.out: $(objpfx)tst-auditmod1.so
  45. $(objpfx)tst-dl-runtime-profile-audit.out: $(objpfx)tst-auditmod1.so
  46. # The profiling output goes to $LD_PROFILE_OUTPUT/$LD_PROFILE.profile
  47. env-profile = LD_PROFILE=$(objpfx)tst-dl-runtime-mod.so \
  48. LD_PROFILE_OUTPUT=/
  49. env-audit = LD_AUDIT=$(objpfx)tst-auditmod1.so
  50. tst-dl-runtime-resolve-audit-ENV = $(env-audit)
  51. tst-dl-runtime-profile-noaudit-ENV = $(env-profile)
  52. tst-dl-runtime-profile-audit-ENV = $(env-profile) $(env-audit)
  53. endif
  54. endif
  55. ifeq ($(subdir),string)
  56. sysdep_routines += memset memset-z900 \
  57. memcmp memcmp-z900 \
  58. mempcpy memcpy memcpy-z900 \
  59. memmove memmove-c \
  60. strstr strstr-arch13 strstr-vx strstr-c \
  61. memmem memmem-arch13 memmem-vx memmem-c \
  62. strlen strlen-vx strlen-c \
  63. strnlen strnlen-vx strnlen-c \
  64. strcpy strcpy-vx strcpy-z900 \
  65. stpcpy stpcpy-vx stpcpy-c \
  66. strncpy strncpy-vx strncpy-z900 \
  67. stpncpy stpncpy-vx stpncpy-c \
  68. strcat strcat-vx strcat-c \
  69. strncat strncat-vx strncat-c \
  70. strcmp strcmp-vx strcmp-z900 \
  71. strncmp strncmp-vx strncmp-c \
  72. strchr strchr-vx strchr-c \
  73. strchrnul strchrnul-vx strchrnul-c \
  74. strrchr strrchr-vx strrchr-c \
  75. strspn strspn-vx strspn-c \
  76. strpbrk strpbrk-vx strpbrk-c \
  77. strcspn strcspn-vx strcspn-c \
  78. memchr memchr-vx memchr-z900 \
  79. rawmemchr rawmemchr-vx rawmemchr-c \
  80. memccpy memccpy-vx memccpy-c \
  81. memrchr memrchr-vx memrchr-c
  82. # Exclude fortified routines from being built with _FORTIFY_SOURCE
  83. routines_no_fortify += \
  84. memmove-c \
  85. stpcpy-c \
  86. stpncpy-c \
  87. strcat-c \
  88. strncat-c \
  89. # routines_no_fortify
  90. endif
  91. ifeq ($(subdir),wcsmbs)
  92. sysdep_routines += wcslen wcslen-vx wcslen-c \
  93. wcsnlen wcsnlen-vx wcsnlen-c \
  94. wcscpy wcscpy-vx wcscpy-c \
  95. wcpcpy wcpcpy-vx wcpcpy-c \
  96. wcsncpy wcsncpy-vx wcsncpy-c \
  97. wcpncpy wcpncpy-vx wcpncpy-c \
  98. wcscat wcscat-vx wcscat-c \
  99. wcsncat wcsncat-vx wcsncat-c \
  100. wcscmp wcscmp-vx wcscmp-c \
  101. wcsncmp wcsncmp-vx wcsncmp-c \
  102. wcschr wcschr-vx wcschr-c \
  103. wcschrnul wcschrnul-vx wcschrnul-c \
  104. wcsrchr wcsrchr-vx wcsrchr-c \
  105. wcsspn wcsspn-vx wcsspn-c \
  106. wcspbrk wcspbrk-vx wcspbrk-c \
  107. wcscspn wcscspn-vx wcscspn-c \
  108. wmemchr wmemchr-vx wmemchr-c \
  109. wmemset wmemset-vx wmemset-c \
  110. wmemcmp wmemcmp-vx wmemcmp-c
  111. # Exclude fortified routines from being built with _FORTIFY_SOURCE
  112. routines_no_fortify += \
  113. wcpcpy-c \
  114. wcpncpy-c \
  115. wcscat-c \
  116. wcscpy-c \
  117. wcsncat-c \
  118. wcsncpy-c \
  119. wmemset-c \
  120. # routines_no_fortify
  121. endif