Config.in.libc 6.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224
  1. # This file is part of the OpenADK project. OpenADK is copyrighted
  2. # material, please see the LICENCE file in the top-level directory.
  3. choice
  4. prompt "C library"
  5. config ADK_TARGET_LIB_UCLIBC_NG
  6. bool "uClibc-ng embedded C library"
  7. depends on \
  8. !ADK_TARGET_ARCH_AARCH64 && \
  9. !ADK_TARGET_ARCH_MOXIE && \
  10. !ADK_TARGET_ARCH_NDS32 && \
  11. !ADK_TARGET_ARCH_S390 && \
  12. !ADK_TARGET_ARCH_SPARC64 && \
  13. !ADK_TARGET_ARCH_PPC64 && \
  14. !ADK_TARGET_ARCH_TILE && \
  15. !ADK_TARGET_ARCH_V850
  16. help
  17. http://uclibc-ng.org
  18. config ADK_TARGET_LIB_MUSL
  19. bool "musl C library"
  20. depends on !ADK_TARGET_UCLINUX
  21. depends on \
  22. ADK_TARGET_ARCH_AARCH64 || \
  23. ADK_TARGET_ARCH_ARM || \
  24. ADK_TARGET_ARCH_MICROBLAZE || \
  25. ADK_TARGET_ARCH_MIPS || \
  26. ADK_TARGET_ARCH_OR1K || \
  27. ADK_TARGET_ARCH_PPC || \
  28. ADK_TARGET_ARCH_SH || \
  29. ADK_TARGET_ARCH_X86 || \
  30. ADK_TARGET_ARCH_X86_64
  31. help
  32. http://musl-libc.org
  33. config ADK_TARGET_LIB_GLIBC
  34. bool "GNU C library"
  35. depends on !ADK_TARGET_ARCH_ARC
  36. depends on !ADK_TARGET_ARCH_AVR32
  37. depends on !ADK_TARGET_ARCH_BFIN
  38. depends on !ADK_TARGET_ARCH_CRIS
  39. depends on !ADK_TARGET_ARCH_H8300
  40. depends on !ADK_TARGET_ARCH_MOXIE
  41. depends on !ADK_TARGET_ARCH_NDS32
  42. depends on !ADK_TARGET_ARCH_SPARC
  43. depends on !ADK_TARGET_ARCH_XTENSA
  44. depends on !ADK_TARGET_UCLINUX
  45. depends on !ADK_TARGET_WITHOUT_MMU
  46. help
  47. http://www.gnu.org/libc
  48. config ADK_TARGET_LIB_NEWLIB
  49. bool "newlib C library"
  50. select ADK_TARGET_WITHOUT_CXX
  51. select ADK_TARGET_WITHOUT_THREADS
  52. depends on \
  53. ADK_TARGET_ARCH_AARCH64 || \
  54. ADK_TARGET_ARCH_ARC || \
  55. ADK_TARGET_ARCH_ARM || \
  56. ADK_TARGET_ARCH_BFIN || \
  57. ADK_TARGET_ARCH_CRIS || \
  58. ADK_TARGET_ARCH_FRV || \
  59. ADK_TARGET_ARCH_H8300 || \
  60. ADK_TARGET_ARCH_LM32 || \
  61. ADK_TARGET_ARCH_MICROBLAZE || \
  62. ADK_TARGET_ARCH_MIPS || \
  63. ADK_TARGET_ARCH_NIOS2 || \
  64. ADK_TARGET_ARCH_MOXIE || \
  65. ADK_TARGET_ARCH_NDS32 || \
  66. ADK_TARGET_ARCH_OR1K || \
  67. ADK_TARGET_ARCH_PPC || \
  68. ADK_TARGET_ARCH_SPARC || \
  69. ADK_TARGET_ARCH_V850 || \
  70. ADK_TARGET_ARCH_X86
  71. help
  72. https://sourceware.org/newlib/
  73. endchoice
  74. choice
  75. prompt "C library version"
  76. config ADK_TARGET_LIB_UCLIBC_NG_1_0_12
  77. bool "1.0.12"
  78. depends on ADK_TARGET_LIB_UCLIBC_NG
  79. config ADK_TARGET_LIB_UCLIBC_NG_1_0_11
  80. bool "1.0.11"
  81. depends on ADK_TARGET_LIB_UCLIBC_NG
  82. config ADK_TARGET_LIB_UCLIBC_NG_1_0_10
  83. bool "1.0.10"
  84. depends on ADK_TARGET_LIB_UCLIBC_NG
  85. config ADK_TARGET_LIB_UCLIBC_NG_GIT
  86. bool "git"
  87. depends on ADK_TARGET_LIB_UCLIBC_NG
  88. config ADK_TARGET_LIB_GLIBC_2_23
  89. bool "2.23"
  90. depends on ADK_TARGET_LIB_GLIBC && !ADK_TARGET_ARCH_OR1K
  91. config ADK_TARGET_LIB_GLIBC_2_22
  92. bool "2.22"
  93. depends on ADK_TARGET_LIB_GLIBC && !ADK_TARGET_ARCH_HPPA \
  94. && !ADK_TARGET_ARCH_OR1K
  95. config ADK_TARGET_LIB_GLIBC_2_21
  96. bool "2.21"
  97. depends on ADK_TARGET_LIB_GLIBC && !ADK_TARGET_ARCH_HPPA \
  98. && !ADK_TARGET_ARCH_OR1K
  99. config ADK_TARGET_LIB_GLIBC_OR1K
  100. bool "2.20-or1k"
  101. depends on ADK_TARGET_LIB_GLIBC && ADK_TARGET_ARCH_OR1K
  102. config ADK_TARGET_LIB_GLIBC_GIT
  103. bool "git"
  104. depends on ADK_TARGET_LIB_GLIBC && !ADK_TARGET_ARCH_OR1K
  105. config ADK_TARGET_LIB_MUSL_1_1_14
  106. bool "1.1.14"
  107. depends on ADK_TARGET_LIB_MUSL
  108. config ADK_TARGET_LIB_MUSL_1_1_13
  109. bool "1.1.13"
  110. depends on ADK_TARGET_LIB_MUSL
  111. config ADK_TARGET_LIB_MUSL_1_1_12
  112. bool "1.1.12"
  113. depends on ADK_TARGET_LIB_MUSL
  114. config ADK_TARGET_LIB_MUSL_GIT
  115. bool "git"
  116. depends on ADK_TARGET_LIB_MUSL
  117. config ADK_TARGET_LIB_NEWLIB_2_2_0
  118. bool "2.2.0"
  119. depends on ADK_TARGET_LIB_NEWLIB
  120. config ADK_TARGET_LIB_NEWLIB_GIT
  121. bool "git"
  122. depends on ADK_TARGET_LIB_NEWLIB
  123. endchoice
  124. choice
  125. prompt "Threading"
  126. depends on ADK_TARGET_LIB_UCLIBC_NG && !ADK_TARGET_WITHOUT_THREADS
  127. config ADK_TARGET_LIB_WITH_THREADS
  128. bool "enable threads"
  129. config ADK_TARGET_LIB_WITHOUT_THREADS
  130. bool "disable threads"
  131. endchoice
  132. config ADK_TARGET_WITH_LT
  133. bool
  134. config ADK_TARGET_WITH_NPTL
  135. bool
  136. config ADK_TARGET_WITHOUT_THREADS
  137. bool
  138. config ADK_TARGET_WITHOUT_CXX
  139. bool
  140. config ADK_TARGET_LIBC
  141. string
  142. default "uclibc-ng" if ADK_TARGET_LIB_UCLIBC_NG
  143. default "glibc" if ADK_TARGET_LIB_GLIBC
  144. default "musl" if ADK_TARGET_LIB_MUSL
  145. default "newlib" if ADK_TARGET_LIB_NEWLIB
  146. config ADK_LIBC_VERSION
  147. string
  148. default "1.0.12" if ADK_TARGET_LIB_UCLIBC_NG_1_0_12
  149. default "1.0.11" if ADK_TARGET_LIB_UCLIBC_NG_1_0_11
  150. default "1.0.10" if ADK_TARGET_LIB_UCLIBC_NG_1_0_10
  151. default "1.1.14" if ADK_TARGET_LIB_MUSL_1_1_14
  152. default "1.1.13" if ADK_TARGET_LIB_MUSL_1_1_13
  153. default "1.1.12" if ADK_TARGET_LIB_MUSL_1_1_12
  154. default "2.23" if ADK_TARGET_LIB_GLIBC_2_23
  155. default "2.22" if ADK_TARGET_LIB_GLIBC_2_22
  156. default "2.21" if ADK_TARGET_LIB_GLIBC_2_21
  157. default "2.20-or1k" if ADK_TARGET_LIB_GLIBC_OR1K
  158. default "2.2.0" if ADK_TARGET_LIB_NEWLIB_2_2_0
  159. default "git" if ADK_TARGET_LIB_UCLIBC_NG_GIT || \
  160. ADK_TARGET_LIB_MUSL_GIT || \
  161. ADK_TARGET_LIB_GLIBC_GIT || \
  162. ADK_TARGET_LIB_NEWLIB_GIT
  163. config ADK_TARGET_SUFFIX
  164. string
  165. default "gnueabihf" if ADK_TARGET_LIB_GLIBC && ADK_TARGET_ARCH_ARM && ADK_TARGET_HARD_FLOAT
  166. default "gnueabi" if ADK_TARGET_LIB_GLIBC && ADK_TARGET_ARCH_ARM
  167. default "gnuabi64" if ADK_TARGET_LIB_GLIBC && ADK_TARGET_ABI_N64
  168. default "gnuabin32" if ADK_TARGET_LIB_GLIBC && ADK_TARGET_ABI_N32
  169. default "gnuabi32" if ADK_TARGET_LIB_GLIBC && ADK_TARGET_ABI_O64
  170. default "gnu32" if ADK_TARGET_LIB_GLIBC && ADK_TARGET_ABI_32 && ADK_LINUX_64
  171. default "gnux32" if ADK_TARGET_LIB_GLIBC && ADK_TARGET_ABI_X32 && ADK_LINUX_64
  172. default "gnu" if ADK_TARGET_LIB_GLIBC
  173. default "uclibceabihf" if ADK_TARGET_LIB_UCLIBC_NG && ADK_TARGET_ARCH_ARM && ADK_TARGET_HARD_FLOAT
  174. default "uclibceabi" if ADK_TARGET_LIB_UCLIBC_NG && ADK_TARGET_ARCH_ARM
  175. default "uclinuxeabi" if ADK_TARGET_LIB_UCLIBC_NG && ADK_TARGET_ARCH_ARM && ADK_TARGET_WITHOUT_MMU
  176. default "uclibcabi64" if ADK_TARGET_LIB_UCLIBC_NG && ADK_TARGET_ABI_N64
  177. default "uclibcabin32" if ADK_TARGET_LIB_UCLIBC_NG && ADK_TARGET_ABI_N32
  178. default "uclibcabi32" if ADK_TARGET_LIB_UCLIBC_NG && ADK_TARGET_ABI_O32
  179. default "uclibc32" if ADK_TARGET_LIB_UCLIBC_NG && ADK_TARGET_ABI_32 && ADK_LINUX_64
  180. default "uclibc" if ADK_TARGET_LIB_UCLIBC_NG
  181. default "musleabihf" if ADK_TARGET_LIB_MUSL && ADK_TARGET_ARCH_ARM && ADK_TARGET_HARD_FLOAT
  182. default "musleabi" if ADK_TARGET_LIB_MUSL && ADK_TARGET_ARCH_ARM
  183. default "muslabi64" if ADK_TARGET_LIB_MUSL && ADK_TARGET_ABI_N64
  184. default "muslabin32" if ADK_TARGET_LIB_MUSL && ADK_TARGET_ABI_N32
  185. default "muslabi32" if ADK_TARGET_LIB_MUSL && ADK_TARGET_ABI_O32
  186. default "musl32" if ADK_TARGET_LIB_MUSL && ADK_TARGET_ABI_32 && ADK_LINUX_64
  187. default "muslx32" if ADK_TARGET_LIB_MUSL && ADK_TARGET_ABI_X32 && ADK_LINUX_64
  188. default "musl" if ADK_TARGET_LIB_MUSL
  189. default "eabi" if ADK_TARGET_LIB_NEWLIB && ADK_TARGET_ARCH_ARM
  190. default "elf" if ADK_TARGET_LIB_NEWLIB