blob: d234c1c55277060ade254c2782319032e1ead37e [file] [log] [blame]
Bernhard Reutner-Fischer4b0d5a82007-09-26 21:12:38 +00001if BR2_TOOLCHAIN_EXTERNAL
"Steven J. Hill"02f71aa2007-02-06 18:19:38 +00002
Petri Gynther8218ab82016-08-08 11:34:59 -07003comment "Toolchain External Options"
4
Thomas Petazzoni6c492d52010-12-13 17:27:39 +01005choice
6 prompt "Toolchain"
7
Thomas Petazzoni416fd9c2016-06-08 23:40:54 +02008comment "glibc toolchains only available with shared lib support"
Thomas Petazzoni665e13c2014-12-03 22:41:29 +01009 depends on BR2_STATIC_LIBS
Thomas Petazzonied3f3e42013-11-11 18:57:32 +010010
Thomas Petazzonif1f2ae52016-11-07 02:20:00 +010011# Kept toolchains sorted by architecture in order to use some toolchain
12# as default choice
13
Romain Naourd74c1332018-10-09 22:07:01 +020014# Aarch64 (use ARM toolchain by default)
15source "toolchain/toolchain-external/toolchain-external-arm-aarch64/Config.in"
Thomas Petazzonif1f2ae52016-11-07 02:20:00 +010016source "toolchain/toolchain-external/toolchain-external-linaro-aarch64/Config.in"
Thomas Petazzonif0f24982016-11-07 02:20:01 +010017source "toolchain/toolchain-external/toolchain-external-codesourcery-aarch64/Config.in"
Thomas Petazzonif1f2ae52016-11-07 02:20:00 +010018
Ofer Heifetz680047e2018-06-28 10:24:22 +030019# Aarch64 big-endian
Romain Naourd1b99022018-10-09 22:07:02 +020020source "toolchain/toolchain-external/toolchain-external-arm-aarch64-be/Config.in"
Ofer Heifetz680047e2018-06-28 10:24:22 +030021source "toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/Config.in"
22
Thomas Petazzonia7ec3582016-11-07 02:20:16 +010023# ARC
24source "toolchain/toolchain-external/toolchain-external-synopsys-arc/Config.in"
25
Nylon Chenef058dc2019-04-16 15:25:44 +080026# Andes
27source "toolchain/toolchain-external/toolchain-external-andes-nds32/Config.in"
28
Romain Naoura98f7232018-10-09 22:07:00 +020029# ARM (use ARM toolchain by default)
30source "toolchain/toolchain-external/toolchain-external-arm-arm/Config.in"
Thomas Petazzoni21cb9d42016-11-07 02:20:02 +010031source "toolchain/toolchain-external/toolchain-external-linaro-arm/Config.in"
Thomas Petazzoni5b3c5b32016-11-07 02:20:03 +010032source "toolchain/toolchain-external/toolchain-external-codesourcery-arm/Config.in"
Thomas Petazzoni21cb9d42016-11-07 02:20:02 +010033
Thomas Petazzonic428f452016-11-07 02:20:05 +010034# ARM big-endian
35source "toolchain/toolchain-external/toolchain-external-linaro-armeb/Config.in"
Yann E. MORIN997ef602015-10-27 00:49:40 +010036
Thomas Petazzoni1e1bef52016-11-07 02:20:07 +010037# MIPS (use codesourcery toolchain by default)
38source "toolchain/toolchain-external/toolchain-external-codesourcery-mips/Config.in"
Thomas Petazzoni95c75fc2016-11-07 02:20:08 +010039source "toolchain/toolchain-external/toolchain-external-codescape-img-mips/Config.in"
Thomas Petazzonic4a62fa2016-11-07 02:20:09 +010040source "toolchain/toolchain-external/toolchain-external-codescape-mti-mips/Config.in"
Thomas Petazzoni1e1bef52016-11-07 02:20:07 +010041
Thomas Petazzonif61661b2016-11-07 02:20:10 +010042# NIOSII
43source "toolchain/toolchain-external/toolchain-external-codesourcery-niosII/Config.in"
44
Baruch Siach06cac642017-06-16 06:32:47 +030045# x86_64
Romain Naoura66b8192016-11-07 02:20:12 +010046source "toolchain/toolchain-external/toolchain-external-codesourcery-amd64/Config.in"
47
Thomas Petazzoniec540922016-11-07 02:20:15 +010048# Kept last, so it remains the non-default choice, unless there isn't
49# any available toolchain profile for the currently selected
50# architecture.
51source "toolchain/toolchain-external/toolchain-external-custom/Config.in"
52
Thomas Petazzoni6c492d52010-12-13 17:27:39 +010053endchoice
54
Thomas De Schampheleiredf0c1252012-06-22 07:42:38 +020055choice
56 prompt "Toolchain origin"
Thomas Petazzoni70194072012-07-22 20:57:26 +020057 # Keep compatibility with old defconfig files that are using
58 # custom toolchains, and which are therefore assuming that
59 # "preinstalled" in the default choice.
60 default BR2_TOOLCHAIN_EXTERNAL_PREINSTALLED if BR2_TOOLCHAIN_EXTERNAL_CUSTOM
Thomas De Schampheleiredf0c1252012-06-22 07:42:38 +020061
Thomas Petazzoni6c492d52010-12-13 17:27:39 +010062config BR2_TOOLCHAIN_EXTERNAL_DOWNLOAD
Thomas De Schampheleiredf0c1252012-06-22 07:42:38 +020063 bool "Toolchain to be downloaded and installed"
Thomas Petazzoni6c492d52010-12-13 17:27:39 +010064 help
Ricardo Martincoski6d4f66f2018-04-01 02:08:45 -030065 Select this option if you want Buildroot to download and
66 install the toolchain. If you have selected a custom
67 toolchain, specify the URL in BR2_TOOLCHAIN_EXTERNAL_URL.
Thomas De Schampheleiredf0c1252012-06-22 07:42:38 +020068
69config BR2_TOOLCHAIN_EXTERNAL_PREINSTALLED
70 bool "Pre-installed toolchain"
71 help
Ricardo Martincoski6d4f66f2018-04-01 02:08:45 -030072 Select this option if you want to use a pre-installed
73 toolchain. Specify the path to this toolchain in
74 BR2_TOOLCHAIN_EXTERNAL_PATH.
Thomas De Schampheleiredf0c1252012-06-22 07:42:38 +020075
76endchoice
Thomas Petazzoni6c492d52010-12-13 17:27:39 +010077
78config BR2_TOOLCHAIN_EXTERNAL_PATH
79 string "Toolchain path"
Arnout Vandecappelle392b0a22017-07-10 01:21:23 +020080 default ""
Thomas De Schampheleiredf0c1252012-06-22 07:42:38 +020081 depends on BR2_TOOLCHAIN_EXTERNAL_PREINSTALLED
Thomas Petazzoni6c492d52010-12-13 17:27:39 +010082 help
Arnout Vandecappelle392b0a22017-07-10 01:21:23 +020083 Path to where the external toolchain is installed. The
84 compiler itself is expected to be in the "bin" subdirectory
85 of this path.
86
87 If empty, the compiler will be searched in $PATH.
Thomas Petazzoni6c492d52010-12-13 17:27:39 +010088
Thomas Petazzoni643aa232009-05-29 18:37:41 +020089config BR2_TOOLCHAIN_EXTERNAL_GLIBC
Thomas Petazzoni6c492d52010-12-13 17:27:39 +010090 bool
Thomas Petazzoni381616e2013-06-30 21:29:09 +020091 select BR2_TOOLCHAIN_USES_GLIBC
Thomas Petazzoni643aa232009-05-29 18:37:41 +020092
Thomas Petazzoni6c492d52010-12-13 17:27:39 +010093config BR2_TOOLCHAIN_EXTERNAL_UCLIBC
94 bool
Thomas Petazzoni381616e2013-06-30 21:29:09 +020095 select BR2_TOOLCHAIN_USES_UCLIBC
Thomas Petazzoni6c492d52010-12-13 17:27:39 +010096
Thomas Petazzonia1d94aa2013-10-08 20:17:09 +020097config BR2_TOOLCHAIN_EXTERNAL_MUSL
98 bool
99 select BR2_TOOLCHAIN_USES_MUSL
Yann E. MORINe31eb722016-08-18 23:50:13 +0200100 # Compatibility headers: cdefs.h, queue.h
101 select BR2_PACKAGE_MUSL_COMPAT_HEADERS
Thomas Petazzonia1d94aa2013-10-08 20:17:09 +0200102
Arnout Vandecappelle1c99d702016-11-07 02:19:59 +0100103# Make sure the virtual-package infra checks the provider
104config BR2_PACKAGE_HAS_TOOLCHAIN_EXTERNAL
105 bool
106 default y
107
108config BR2_PACKAGE_PROVIDES_TOOLCHAIN_EXTERNAL
109 string
110
Arnout Vandecappelleb5c00f02016-11-07 02:20:17 +0100111config BR2_TOOLCHAIN_EXTERNAL_PREFIX
112 string
113
Thomas Petazzonif1f2ae52016-11-07 02:20:00 +0100114# Kept toolchains sorted as in the choice above
115# The toolchain Config.in.options must define
116# BR2_PACKAGE_PROVIDES_TOOLCHAIN_EXTERNAL and BR2_TOOLCHAIN_EXTERNAL_PREFIX
117
118# Aarch64
Romain Naourd74c1332018-10-09 22:07:01 +0200119source "toolchain/toolchain-external/toolchain-external-arm-aarch64/Config.in.options"
Thomas Petazzonif1f2ae52016-11-07 02:20:00 +0100120source "toolchain/toolchain-external/toolchain-external-linaro-aarch64/Config.in.options"
Thomas Petazzonif0f24982016-11-07 02:20:01 +0100121source "toolchain/toolchain-external/toolchain-external-codesourcery-aarch64/Config.in.options"
Thomas Petazzonif1f2ae52016-11-07 02:20:00 +0100122
Ofer Heifetz680047e2018-06-28 10:24:22 +0300123# Aarch64 big-endian
Romain Naourd1b99022018-10-09 22:07:02 +0200124source "toolchain/toolchain-external/toolchain-external-arm-aarch64-be/Config.in.options"
Ofer Heifetz680047e2018-06-28 10:24:22 +0300125source "toolchain/toolchain-external/toolchain-external-linaro-aarch64-be/Config.in.options"
126
Thomas Petazzonia7ec3582016-11-07 02:20:16 +0100127# ARC
128source "toolchain/toolchain-external/toolchain-external-synopsys-arc/Config.in.options"
129
Nylon Chenef058dc2019-04-16 15:25:44 +0800130# Andes
131source "toolchain/toolchain-external/toolchain-external-andes-nds32/Config.in.options"
132
Thomas Petazzoni21cb9d42016-11-07 02:20:02 +0100133# ARM
Romain Naoura98f7232018-10-09 22:07:00 +0200134source "toolchain/toolchain-external/toolchain-external-arm-arm/Config.in.options"
Thomas Petazzoni21cb9d42016-11-07 02:20:02 +0100135source "toolchain/toolchain-external/toolchain-external-linaro-arm/Config.in.options"
Thomas Petazzoni5b3c5b32016-11-07 02:20:03 +0100136source "toolchain/toolchain-external/toolchain-external-codesourcery-arm/Config.in.options"
Thomas Petazzoni21cb9d42016-11-07 02:20:02 +0100137
Thomas Petazzonic428f452016-11-07 02:20:05 +0100138# ARM big-endian
139source "toolchain/toolchain-external/toolchain-external-linaro-armeb/Config.in.options"
140
Thomas Petazzoni1e1bef52016-11-07 02:20:07 +0100141# MIPS
142source "toolchain/toolchain-external/toolchain-external-codesourcery-mips/Config.in.options"
Thomas Petazzoni95c75fc2016-11-07 02:20:08 +0100143source "toolchain/toolchain-external/toolchain-external-codescape-img-mips/Config.in.options"
Thomas Petazzonic4a62fa2016-11-07 02:20:09 +0100144source "toolchain/toolchain-external/toolchain-external-codescape-mti-mips/Config.in.options"
Thomas Petazzoni1e1bef52016-11-07 02:20:07 +0100145
Thomas Petazzonif61661b2016-11-07 02:20:10 +0100146# NIOSII
147source "toolchain/toolchain-external/toolchain-external-codesourcery-niosII/Config.in.options"
148
Baruch Siach06cac642017-06-16 06:32:47 +0300149# x86_64
Romain Naoura66b8192016-11-07 02:20:12 +0100150source "toolchain/toolchain-external/toolchain-external-codesourcery-amd64/Config.in.options"
151
Thomas Petazzoniec540922016-11-07 02:20:15 +0100152# Custom toolchains
153source "toolchain/toolchain-external/toolchain-external-custom/Config.in.options"
Thomas Petazzonifff71172010-12-13 17:27:37 +0100154
Thomas Petazzonia0b6faa2013-04-07 00:04:33 +0000155config BR2_TOOLCHAIN_EXTERNAL_GDB_SERVER_COPY
156 bool "Copy gdb server to the Target"
157 depends on BR2_TOOLCHAIN_EXTERNAL
158 help
159 Copy the gdbserver provided by the external toolchain to the
160 target.
161
Thomas Petazzoni6c492d52010-12-13 17:27:39 +0100162endif # BR2_TOOLCHAIN_EXTERNAL