Config.in 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214
  1. #
  2. menuconfig EXTERNAL_TOOLCHAIN
  3. bool
  4. prompt "Use external toolchain" if DEVEL
  5. help
  6. If enabled, OpenWrt will compile using an existing toolchain instead of compiling one
  7. config NATIVE_TOOLCHAIN
  8. bool
  9. prompt "Use host's toolchain" if DEVEL
  10. depends EXTERNAL_TOOLCHAIN
  11. select NO_STRIP
  12. help
  13. If enabled, OpenWrt will compile using the native toolchain for your host instead of compiling one
  14. config TARGET_NAME
  15. string
  16. prompt "Target name" if DEVEL
  17. depends EXTERNAL_TOOLCHAIN && !NATIVE_TOOLCHAIN
  18. default "arm-unknown-linux-gnu" if arm
  19. default "armeb-unknown-linux-gnu" if armeb
  20. default "i486-unknown-linux-gnu" if i386
  21. default "mips-unknown-linux-gnu" if mips
  22. default "mipsel-unknown-linux-gnu" if mipsel
  23. default "powerpc-unknown-linux-gnu" if powerpc
  24. default "x86_64-unknown-linux-gnu" if x86_64
  25. config TOOLCHAIN_PREFIX
  26. string
  27. prompt "Toolchain prefix" if DEVEL
  28. depends EXTERNAL_TOOLCHAIN && !NATIVE_TOOLCHAIN
  29. default "arm-unknown-linux-gnu-" if arm
  30. default "armeb-unknown-linux-gnu-" if armeb
  31. default "i486-unknown-linux-gnu-" if i386
  32. default "mips-unknown-linux-gnu-" if mips
  33. default "mipsel-unknown-linux-gnu-" if mipsel
  34. default "powerpc-unknown-linux-gnu-" if powerpc
  35. default "x86_64-unknown-linux-gnu-" if x86_64
  36. config TOOLCHAIN_ROOT
  37. string
  38. prompt "Toolchain root" if DEVEL
  39. depends EXTERNAL_TOOLCHAIN && !NATIVE_TOOLCHAIN
  40. default "/opt/cross/arm-unknown-linux-gnu" if arm
  41. default "/opt/cross/armeb-unknown-linux-gnu" if armeb
  42. default "/opt/cross/i486-unknown-linux-gnu" if i386
  43. default "/opt/cross/mips-unknown-linux-gnu" if mips
  44. default "/opt/cross/mipsel-unknown-linux-gnu" if mipsel
  45. default "/opt/cross/powerpc-unknown-linux-gnu" if powerpc
  46. default "/opt/cross/x86_64-unknown-linux-gnu" if x86_64
  47. config TOOLCHAIN_BIN_PATH
  48. string
  49. prompt "Toolchain program path" if DEVEL
  50. depends EXTERNAL_TOOLCHAIN && !NATIVE_TOOLCHAIN
  51. default "./usr/bin ./bin"
  52. help
  53. Specify additional directories searched for toolchain binaries (override PATH)
  54. Use ./DIR for directories relative to the root above
  55. config TOOLCHAIN_INC_PATH
  56. string
  57. prompt "Toolchain include path" if DEVEL
  58. depends EXTERNAL_TOOLCHAIN && !NATIVE_TOOLCHAIN
  59. default "./usr/include ./include"
  60. help
  61. Specify additional directories searched for header files (override CPPFLAGS)
  62. Use ./DIR for directories relative to the root above
  63. config TOOLCHAIN_LIB_PATH
  64. string
  65. prompt "Toolchain library path" if DEVEL
  66. depends EXTERNAL_TOOLCHAIN && !NATIVE_TOOLCHAIN
  67. default "./usr/lib ./lib"
  68. help
  69. Specify additional directories searched for libraries (override LDFLAGS)
  70. Use ./DIR for directories relative to the root above
  71. config NEED_TOOLCHAIN
  72. bool
  73. depends DEVEL
  74. default y if !EXTERNAL_TOOLCHAIN
  75. menuconfig TOOLCHAINOPTS
  76. bool "Toolchain Options" if DEVEL
  77. depends NEED_TOOLCHAIN
  78. config EABI_SUPPORT
  79. bool
  80. depends arm||armeb
  81. prompt "Enable EABI support" if TOOLCHAINOPTS
  82. default n if TARGET_gemini
  83. default n if TARGET_cns21xx
  84. default y
  85. help
  86. Enable ARM EABI support
  87. menuconfig EXTRA_TARGET_ARCH
  88. bool
  89. prompt "Enable an extra toolchain target architecture" if TOOLCHAINOPTS
  90. depends !sparc
  91. default y if powerpc64
  92. default n
  93. help
  94. Some builds may require a 'biarch' toolchain. This option
  95. allows you to specify an additional target arch.
  96. Most people will answer N here.
  97. config EXTRA_TARGET_ARCH_NAME
  98. string
  99. default "powerpc64" if powerpc64
  100. prompt "Extra architecture name" if EXTRA_TARGET_ARCH
  101. help
  102. Specify the cpu name (eg powerpc64 or x86_64) of the
  103. additional target architecture.
  104. config EXTRA_TARGET_ARCH_OPTS
  105. string
  106. default "-m64" if powerpc64
  107. prompt "Extra architecture compiler options" if EXTRA_TARGET_ARCH
  108. help
  109. If you're specifying an addition target architecture,
  110. you'll probably need to also provide options to make
  111. the compiler use this alternate arch.
  112. For example, if you're building a compiler that can build
  113. both powerpc and powerpc64 binaries, you'll need to
  114. specify -m64 here.
  115. comment "Binary tools"
  116. depends TOOLCHAINOPTS
  117. source "toolchain/binutils/Config.in"
  118. comment "Compiler"
  119. depends TOOLCHAINOPTS
  120. source "toolchain/gcc/Config.in"
  121. comment "C Library"
  122. depends TOOLCHAINOPTS
  123. choice
  124. prompt "C Library implementation" if TOOLCHAINOPTS
  125. default USE_UCLIBC
  126. help
  127. Select the C library implementation.
  128. config USE_EGLIBC
  129. bool "Use eglibc"
  130. depends !avr32
  131. config USE_GLIBC
  132. bool "Use glibc"
  133. depends !avr32
  134. config USE_UCLIBC
  135. bool "Use uClibc"
  136. endchoice
  137. source "toolchain/eglibc/Config.in"
  138. source "toolchain/glibc/Config.in"
  139. source "toolchain/uClibc/Config.in"
  140. comment "Debuggers"
  141. depends TOOLCHAINOPTS
  142. config GDB
  143. bool
  144. prompt "Build gdb" if TOOLCHAINOPTS
  145. default n
  146. help
  147. Enable if you want to build the gdb
  148. config INSIGHT
  149. bool
  150. prompt "Build insight-gdb" if TOOLCHAINOPTS
  151. select GDB
  152. default n
  153. help
  154. Enable if you want to build insight-gdb
  155. config USE_UCLIBC
  156. bool
  157. default y if !TOOLCHAINOPTS
  158. source "toolchain/gcc/Config.version"
  159. source "toolchain/eglibc/Config.version"
  160. source "toolchain/glibc/Config.version"
  161. source "toolchain/uClibc/Config.version"
  162. config LIBC
  163. string
  164. default "eglibc" if USE_EGLIBC
  165. default "glibc" if USE_GLIBC
  166. default "uClibc" if USE_UCLIBC
  167. config LIBC_VERSION
  168. string
  169. default EGLIBC_VERSION if USE_EGLIBC
  170. default GLIBC_VERSION if USE_GLIBC
  171. default UCLIBC_VERSION if USE_UCLIBC
  172. config TARGET_SUFFIX
  173. string
  174. default "gnueabi" if (USE_EGLIBC || USE_GLIBC) && EABI_SUPPORT
  175. default "gnu" if (USE_EGLIBC || USE_GLIBC) && !EABI_SUPPORT
  176. default "uclibcgnueabi" if USE_UCLIBC && EABI_SUPPORT
  177. default "uclibc" if USE_UCLIBC && !EABI_SUPPORT