toolchain-common.in 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175
  1. # Generic toolchain options
  2. # we want gdb config in the middle of both source and external
  3. # toolchains, but mconf won't let us source the same file twice,
  4. # so put it here instead
  5. source "toolchain/gdb/Config.in"
  6. comment "Common Toolchain Options"
  7. config BR2_LARGEFILE
  8. bool "Enable large file (files > 2 GB) support?"
  9. help
  10. If you are building your own toolchain and you want to
  11. support files larger than 2GB then enable this option.
  12. If you have an external binary toolchain that has been
  13. built with large file support (files > 2GB) then enable
  14. this option.
  15. config BR2_INET_IPV6
  16. bool "Enable IPv6"
  17. help
  18. If you are building your own toolchain and you want to
  19. enable IPV6 support then enable this option.
  20. If you have an external binary toolchain that has been
  21. built with IPV6 support then enable this option.
  22. config BR2_INET_RPC
  23. bool "Enable RPC"
  24. help
  25. Enable RPC. RPC support is needed for nfs.
  26. If you are building your own toolchain and you want to
  27. enable RPC support then enable this option.
  28. If you have an external binary toolchain that has been
  29. built with RPC support then enable this option.
  30. config BR2_ENABLE_LOCALE
  31. bool "Enable toolchain locale/i18n support?"
  32. select BR2_USE_WCHAR
  33. help
  34. If you are building your own toolchain and you want to
  35. enable locale/i18n support then enable this option.
  36. If you have an external binary toolchain that has been
  37. built with locale/i18n support then enable this option.
  38. config BR2_ENABLE_LOCALE_PURGE
  39. bool "Purge unwanted locales"
  40. help
  41. Explicitly specify what locales to install on target. If N
  42. then all locales supported by packages are installed.
  43. config BR2_ENABLE_LOCALE_WHITELIST
  44. string "Locales to keep"
  45. default "C en_US de fr"
  46. depends on BR2_ENABLE_LOCALE_PURGE
  47. help
  48. Whitespace seperated list of locales to allow on target.
  49. Locales not listed here will be removed from the target.
  50. See 'locale -a' on your host for a list of locales available
  51. on your build host, or have a look in /usr/share/locale in
  52. the target file system for available locales.
  53. Notice that listing a locale here doesn't guarantee that it
  54. will be available on the target - That purely depends on the
  55. support for that locale in the selected packages.
  56. # glibc and eglibc directly include gettext, so a separatly compiled
  57. # gettext isn't needed and shouldn't be built to avoid conflicts. Some
  58. # packages always need gettext, other packages only need gettext when
  59. # locale support is enabled. See the documentation for how packages
  60. # should rely on the following two options.
  61. config BR2_NEEDS_GETTEXT
  62. bool
  63. default y if BR2_TOOLCHAIN_BUILDROOT
  64. default y if BR2_TOOLCHAIN_EXTERNAL_UCLIBC
  65. config BR2_NEEDS_GETTEXT_IF_LOCALE
  66. bool
  67. default y if (BR2_NEEDS_GETTEXT && BR2_ENABLE_LOCALE)
  68. config BR2_USE_WCHAR
  69. bool "Enable WCHAR support"
  70. help
  71. If you are building your own toolchain and you want to
  72. enable WCHAR support then enable this option.
  73. If you have an external binary toolchain that has been built
  74. with WCHAR support then enable this option.
  75. config BR2_PREFER_SOFT_FLOAT
  76. bool
  77. default y if BR2_arm || BR2_armeb || BR2_avr32 || BR2_mips || BR2_mipsel
  78. config BR2_SOFT_FLOAT
  79. bool "Use software floating point by default"
  80. depends on BR2_arm || BR2_armeb || BR2_avr32 || BR2_mips || BR2_mipsel || BR2_powerpc
  81. default $(BR2_PREFER_SOFT_FLOAT)
  82. help
  83. If your target CPU does not have a Floating Point Unit (FPU) or a
  84. kernel FPU emulator, but you still wish to support floating point
  85. functions, then everything will need to be compiled with soft
  86. floating point support (-msoft-float).
  87. config BR2_USE_SSP
  88. bool "Enable stack protection support"
  89. help
  90. Enable stack smashing protection support using GCCs
  91. -fstack-protector[-all] option.
  92. See http://www.linuxfromscratch.org/hints/downloads/files/ssp.txt
  93. for details.
  94. choice
  95. prompt "Thread library implementation"
  96. default BR2_PTHREADS_OLD
  97. help
  98. If you are building your own toolchain then select the type of
  99. libpthreads you want to use.
  100. Not all thread variants work with all versions of uClibc,
  101. the "linuxthreads (stable/old)" may be a working fallback
  102. if you need threading at all.
  103. If you have an external binary toolchain then select the type
  104. of libpthreads it was built with.
  105. config BR2_PTHREADS_NONE
  106. bool "none"
  107. config BR2_PTHREADS
  108. bool "linuxthreads"
  109. config BR2_PTHREADS_OLD
  110. bool "linuxthreads (stable/old)"
  111. config BR2_PTHREADS_NATIVE
  112. bool "Native POSIX Threading (NPTL)"
  113. depends on BR2_UCLIBC_VERSION_SNAPSHOT
  114. endchoice
  115. config BR2_PROGRAM_INVOCATION
  116. bool "Enable 'program invocation name'"
  117. help
  118. Support for the GNU-specific program_invocation_name and
  119. program_invocation_short_name strings. Some GNU packages
  120. (like tar and coreutils) utilize these for extra useful
  121. output, but in general are not required.
  122. If you have an external binary toolchain that has been built
  123. with program invocation support then enable this option.
  124. config BR2_GCC_CROSS_CXX
  125. bool
  126. help
  127. If you are building your own toolchain and want to build
  128. a C++ cross-compiler this needs to be enabled.
  129. If you have an external binary toolchain that has a C++ compiler
  130. and you want to use it then you need to enable this option.
  131. config BR2_INSTALL_LIBSTDCPP
  132. bool "Build/install c++ compiler and libstdc++?"
  133. select BR2_GCC_CROSS_CXX
  134. depends on !(! BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE && BR2_ENABLE_LOCALE && BR2_UCLIBC_VERSION_0_9_31)
  135. help
  136. If you are building your own toolchain and want to build and install
  137. the C++ compiler and library then you need to enable this option.
  138. If you have an external toolchain that has been built with C++
  139. support and you want to use the compiler / library then you need
  140. to select this option.
  141. comment "C++ support broken in uClibc 0.9.31 with locale enabled with gcc 4.2"
  142. depends on !BR2_GCC_SUPPORTS_FINEGRAINEDMTUNE && BR2_ENABLE_LOCALE && BR2_UCLIBC_VERSION_0_9_31
  143. config BR2_TARGET_OPTIMIZATION
  144. string "Target Optimizations"
  145. default "-pipe"
  146. help
  147. Optimizations to use when building for the target host.
  148. NOTE: gcc optimization level is defined in build options.