Config-devel.in 6.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213
  1. # SPDX-License-Identifier: GPL-2.0-only
  2. #
  3. # Copyright (C) 2006-2013 OpenWrt.org
  4. menuconfig DEVEL
  5. bool "Advanced configuration options (for developers)"
  6. config BROKEN
  7. bool "Show broken platforms / packages / devices" if DEVEL
  8. config BINARY_FOLDER
  9. string "Binary folder" if DEVEL
  10. default ""
  11. help
  12. Store built firmware images and filesystem images in this directory.
  13. If not set, uses './bin/$(BOARD)'
  14. config DOWNLOAD_TOOL_CUSTOM
  15. string "Use custom download tool" if DEVEL
  16. default ""
  17. help
  18. Use and force custom download tool instead of relying on autoselection
  19. between curl if available and wget as a fallback.
  20. download.pl supports 3 tools officially aria2c, curl and wget.
  21. If one of the tool is used in this config, download.pl will use the
  22. default args to make use of them.
  23. If the provided string is different than aria2c, curl or wget, the command
  24. is used as is and the download url will be appended at the end of such command.
  25. config DOWNLOAD_FOLDER
  26. string "Download folder" if DEVEL
  27. default ""
  28. help
  29. Store downloaded source bundles in this directory.
  30. If not set then defaults to './dl', which is removed by operations such as
  31. 'git clean -xdf' or 'make distclean'.
  32. This option is useful if you have a low bandwidth Internet connection, and by
  33. setting a path outside the OpenWrt tree downloads will be saved.
  34. config LOCALMIRROR
  35. string "Local mirror for source packages" if DEVEL
  36. default ""
  37. config AUTOREBUILD
  38. bool "Automatic rebuild of packages" if DEVEL
  39. default y
  40. help
  41. Automatically rebuild packages when their files change.
  42. config AUTOREMOVE
  43. bool "Automatic removal of build directories" if DEVEL
  44. help
  45. Automatically delete build directories after make target completed.
  46. This allows you to symlink build_dir into a scratch location, e.g. a ramdisk,
  47. which does not have enough space to keep a complete build_dir.
  48. config BUILD_ALL_HOST_TOOLS
  49. bool "Compile all host tools" if DEVEL
  50. help
  51. Compile all host host tools even if not needed. This is needed to prepare a
  52. universal precompiled host tools archive to use in another buildroot.
  53. menuconfig OPTIMIZE_HOST_TOOLS
  54. bool "Host Tools compile options" if DEVEL
  55. if OPTIMIZE_HOST_TOOLS
  56. config HOST_FLAGS_OPT
  57. string "Host Tools optimization flags"
  58. default "-O2"
  59. help
  60. Compiler flags which are used to build host tools.
  61. E.g.: "-O2", "-O3 -fno-tree-vectorize".
  62. Default is "-O2".
  63. config HOST_TOOLS_STRIP
  64. bool "Strip Host Tools"
  65. help
  66. Instructs compiler/linker to use flags from HOST_FLAGS_STRIP
  67. in order to reduce binary size of host tools.
  68. config HOST_FLAGS_STRIP
  69. string "Host Tools compiler/linker flags for stripping symbols"
  70. depends on HOST_TOOLS_STRIP
  71. default "-Wl,-s"
  72. help
  73. Compiler flags which are used to strip symbols from host tools.
  74. Each flag should be prefixed with "-Wl," string
  75. because compiler (GCC) passes this value to linker.
  76. Default is "-Wl,-s" which means "strip all symbols" - specifically,
  77. debug symbols and other symbols not needed for relocation processing.
  78. comment "Host Tools miscellaneous flags"
  79. config HOST_EXTRA_CFLAGS
  80. string "Host Tools extra CFLAGS"
  81. default ""
  82. config HOST_EXTRA_CXXFLAGS
  83. string "Host Tools extra CXXFLAGS"
  84. default ""
  85. config HOST_EXTRA_CPPFLAGS
  86. string "Host Tools extra CPPFLAGS"
  87. default ""
  88. config HOST_EXTRA_LDFLAGS
  89. string "Host Tools extra LDFLAGS"
  90. default ""
  91. endif
  92. config BUILD_SUFFIX
  93. string "Build suffix to append to the target BUILD_DIR variable" if DEVEL
  94. default ""
  95. help
  96. Build suffix to append to the BUILD_DIR variable, i.e: './build_dir/{target-build-dir}_$(BUILD_SUFFIX)'.
  97. This allows you to switch to a different .config whilst retaining all the build
  98. objects generated by the first .config
  99. config TARGET_ROOTFS_DIR
  100. string "Override the default TARGET_ROOTFS_DIR variable" if DEVEL
  101. default ""
  102. help
  103. Override the default TARGET_ROOTFS_DIR variable content $(BUILD_DIR) with
  104. custom path. Use this option to re-define the location of the target
  105. root filesystem directory.
  106. config CCACHE
  107. bool "Use ccache" if DEVEL
  108. help
  109. Compiler cache; see https://ccache.samba.org/
  110. config CCACHE_DIR
  111. string "Set ccache directory" if CCACHE
  112. default ""
  113. help
  114. Store ccache in this directory.
  115. If not set, uses './.ccache'
  116. config KERNEL_CFLAGS
  117. string "Kernel extra CFLAGS" if DEVEL
  118. default "-falign-functions=32" if TARGET_bcm53xx
  119. default ""
  120. config EXTERNAL_KERNEL_TREE
  121. string "Use external kernel tree" if DEVEL
  122. default ""
  123. config KERNEL_GIT_CLONE_URI
  124. string "Enter git repository to clone" if DEVEL
  125. default ""
  126. help
  127. Enter the full git repository path i.e.:
  128. git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git
  129. This will create a git clone of the kernel in your build directory.
  130. config KERNEL_GIT_LOCAL_REPOSITORY
  131. string "Enter path to local reference repository" if DEVEL
  132. depends on (KERNEL_GIT_CLONE_URI != "")
  133. default ""
  134. help
  135. Enter a full pathname to a local reference git repository.
  136. In this instance, the --reference option of git clone will
  137. be used thus creating a quick local clone of your repo.
  138. config KERNEL_GIT_REF
  139. string "Enter git ref at which to checkout" if DEVEL
  140. depends on (KERNEL_GIT_CLONE_URI != "")
  141. default ""
  142. help
  143. Enter the git ref at which to checkout the git repository
  144. after it is cloned, and before making it a tar-ball.
  145. It can be a git hash or a branch name.
  146. If unused, the clone's repository HEAD will be checked-out.
  147. config KERNEL_GIT_MIRROR_HASH
  148. string "Enter hash of Git kernel tree source checkout tarball" if DEVEL
  149. depends on (KERNEL_GIT_CLONE_URI != "")
  150. default ""
  151. config BUILD_LOG
  152. bool "Enable log files during build process" if DEVEL
  153. help
  154. If enabled, log files will be written to the ./log directory.
  155. config BUILD_LOG_DIR
  156. string "Log folder" if DEVEL
  157. default ""
  158. help
  159. Store build logs in this directory.
  160. If not set, uses './logs'
  161. config SRC_TREE_OVERRIDE
  162. bool "Enable package source tree override" if DEVEL
  163. help
  164. If enabled, you can force a package to use a git tree as source
  165. code instead of the normal tarball. Create a symlink 'git-src'
  166. in the package directory, pointing to the .git tree that you want
  167. to pull the source code from.
  168. config EXTRA_OPTIMIZATION
  169. string "Additional compiler options" if DEVEL
  170. default "-fno-caller-saves -fno-plt" if !CONFIG_EXTERNAL_TOOLCHAIN && !arc
  171. default "-fno-caller-saves"
  172. help
  173. Extra target-independent optimizations to use when building for the target.