config/cc.in
author Cody Schafer <dev@codyps.com>
Fri May 09 19:13:49 2014 -0700 (2014-05-09)
changeset 3312 4876ff97e039
parent 3254 e2e0f34eab6c
permissions -rw-r--r--
cc/gcc: allow CC_EXTRA_CONFIG_ARRAY on baremetal

The final bare-metal compiler is built using the core backend.
Currently the core uses the CC_CORE_EXTRA_CONFIG_ARRAY variable.

While this works as supposed to, this can leave the user puzzled
in the menuconfig, since all he can see is the core options, not
the final options.

Only show the core options if any of the core passes are needed,
and use the final options in the core-backend if we're issuing
the bare-metal compiler.

Signed-off-by: Cody P Schafer <dev@codyps.com>
[yann.morin.1998@free.fr: hide core options if no core pass needed;
use final option in core backend if issuing the bare-metal compiler]
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Message-Id: <22181e546ba746202489.1399688067@localhost>
Patchwork-Id: 347586
yann@1
     1
# Compiler options
yann@1
     2
yann@1
     3
menu "C compiler"
yann@1
     4
yann@923
     5
config CC
yann@923
     6
    string
yann@1
     7
yann@1
     8
config CC_VERSION
yann@1
     9
    string
yann@1
    10
diorcet@3131
    11
config CC_CORE_PASSES_NEEDED
yann@3299
    12
    bool
yann@3299
    13
    select CC_CORE_PASS_1_NEEDED
yann@3299
    14
    select CC_CORE_PASS_2_NEEDED
yann@3299
    15
yann@3299
    16
config CC_CORE_PASS_1_NEEDED
yann@3299
    17
    bool
yann@3299
    18
yann@3299
    19
config CC_CORE_PASS_2_NEEDED
yann@3299
    20
    bool
diorcet@3131
    21
yann@1870
    22
source "config.gen/cc.in"
yann@1
    23
yann@1
    24
config CC_SUPPORT_CXX
yann@1
    25
    bool
yann@1
    26
yann@1
    27
config CC_SUPPORT_FORTRAN
yann@1
    28
    bool
yann@1
    29
yann@1
    30
config CC_SUPPORT_JAVA
yann@1
    31
    bool
yann@1
    32
yann@1
    33
config CC_SUPPORT_ADA
yann@1
    34
    bool
yann@1
    35
yann@1
    36
config CC_SUPPORT_OBJC
yann@1
    37
    bool
yann@1
    38
yann@1
    39
config CC_SUPPORT_OBJCXX
yann@1
    40
    bool
yann@1
    41
richard@3244
    42
config CC_SUPPORT_GOLANG
richard@3244
    43
    bool
richard@3244
    44
yann@425
    45
comment "Additional supported languages:"
yann@1
    46
yann@1
    47
config CC_LANG_CXX
yann@1
    48
    bool
yann@1
    49
    prompt "C++"
yann@1
    50
    depends on CC_SUPPORT_CXX
yann@1
    51
    help
yann@346
    52
      Enable building a C++ compiler.
yann@346
    53
yann@346
    54
      Only select this if you know that your specific version of the
yann@346
    55
      compiler supports this language.
yann@1
    56
yann@1
    57
config CC_LANG_FORTRAN
yann@1
    58
    bool
yann@1
    59
    prompt "Fortran"
yann@1
    60
    depends on CC_SUPPORT_FORTRAN
yann@1
    61
    help
yann@346
    62
      Enable building a FORTRAN compiler.
yann@346
    63
yann@346
    64
      Only select this if you know that your specific version of the
yann@346
    65
      compiler supports this language.
yann@1
    66
zhenqiang@3254
    67
if ! BARE_METAL
zhenqiang@3254
    68
yann@1
    69
config CC_LANG_JAVA
yann@1
    70
    bool
yann@1
    71
    prompt "Java"
yann@1
    72
    depends on CC_SUPPORT_JAVA
yann@1
    73
    help
yann@346
    74
      Enable building a Java compiler.
yann@346
    75
yann@346
    76
      Only select this if you know that your specific version of the
yann@346
    77
      compiler supports this language.
yann@1
    78
yann@1
    79
config CC_LANG_ADA
yann@1
    80
    bool
yann@760
    81
    prompt "ADA (EXPERIMENTAL)"
yann@1
    82
    depends on CC_SUPPORT_ADA
yann@760
    83
    depends on EXPERIMENTAL
yann@1
    84
    help
yann@346
    85
      Enable building an Ada compiler.
yann@346
    86
yann@346
    87
      Only select this if you know that your specific version of the
yann@346
    88
      compiler supports this language.
yann@1
    89
yann@1
    90
config CC_LANG_OBJC
yann@1
    91
    bool
yann@760
    92
    prompt "Objective-C (EXPERIMENTAL)"
yann@1
    93
    depends on CC_SUPPORT_OBJC
yann@760
    94
    depends on EXPERIMENTAL
yann@1
    95
    help
yann@346
    96
      Enable building an Objective C compiler.
yann@346
    97
yann@346
    98
      Only select this if you know that your specific version of the
yann@346
    99
      compiler supports this language.
yann@1
   100
yann@1
   101
config CC_LANG_OBJCXX
yann@1
   102
    bool
yann@760
   103
    prompt "Objective-C++ (EXPERIMENTAL)"
yann@760
   104
    depends on EXPERIMENTAL
yann@1
   105
    depends on CC_SUPPORT_OBJCXX
yann@1
   106
    help
yann@346
   107
      Enable building an Objective C++ compiler.
yann@346
   108
yann@346
   109
      Only select this if you know that your specific version of the
yann@346
   110
      compiler supports this language.
yann@1
   111
richard@3244
   112
config CC_LANG_GOLANG
richard@3244
   113
    bool
richard@3244
   114
    prompt "Go (EXPERIMENTAL)"
richard@3244
   115
    depends on EXPERIMENTAL
richard@3244
   116
    depends on CC_SUPPORT_GOLANG
richard@3244
   117
    help
richard@3244
   118
      Enable building a Go compiler.
richard@3244
   119
richard@3244
   120
      Only select this if you know that your specific version of the
richard@3244
   121
      compiler supports this language.
richard@3244
   122
yann@1
   123
config CC_LANG_OTHERS
yann@1
   124
    string
yann@760
   125
    prompt "Other languages (EXPERIMENTAL)"
yann@1
   126
    default ""
yann@760
   127
    depends on EXPERIMENTAL
yann@1
   128
    help
yann@1
   129
      Enter here a comma-separated list of languages that you know your compiler
yann@1
   130
      supports, besides those listed above.
yann@1
   131
antony@2564
   132
      Eg. gcc-4.1+ has a toy programming language, treelang. As it is not useful
yann@1
   133
      in real life, it is not available in the selection above.
yann@1
   134
yann@850
   135
endif # ! BARE_METAL
yann@850
   136
yann@1976
   137
source "config.gen/cc.in.2"
yann@1976
   138
yann@1
   139
endmenu