config/debug/gdb.in
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Thu Mar 26 18:47:34 2009 +0000 (2009-03-26)
changeset 1268 5594b05bc2d8
parent 1198 5b6539923eea
child 1269 17e37102a037
permissions -rw-r--r--
Add support for building toolchains with gcc-4.4 snapshots.
Initial patch by Dmitry PLOTNIKOV: http://sourceware.org/ml/crossgcc/2009-03/msg00053.html
It [the toolchain] uses current ct-ng (nightly snapshot 20090324, latest
release 1.3.2 work also), glibc 2.9 (from CVS), binutils 2.19 and latest
snapshot of GCC 4.4.0 (as of March 20, 2009).

We have successfully built linux kernel 2.6.29 and a lot of other stuff
with this toolchain.

Here's the patch that adds GCC 4.4.0 to the ct-ng menu and enables it to
download a 4.4.0 snapshot from ftp.

Patch was adpated by me, mostly to better fit the configuration layout.

/trunk/scripts/build/cc/gcc.sh | 34 22 12 0 ++++++++++++++++++++++------------
/trunk/config/cc/gcc.in | 35 30 5 0 ++++++++++++++++++++++++++++++-----
2 files changed, 52 insertions(+), 17 deletions(-)
yann@96
     1
# GDB menu
yann@96
     2
yann@916
     3
config DEBUG_gdb
yann@96
     4
    help
yann@96
     5
      Enable gdb for the target
yann@96
     6
yann@96
     7
config GDB_CROSS
yann@96
     8
    bool
yann@96
     9
    prompt "Cross-gdb"
yann@96
    10
    default y
yann@850
    11
    select GDB_GDBSERVER if ! BARE_METAL
yann@96
    12
    help
yann@583
    13
      Build and install a cross-gdb for the target, to run on host.
yann@96
    14
yann@583
    15
config GDB_CROSS_STATIC
yann@457
    16
    bool
yann@457
    17
    prompt "Build a static cross gdb"
yann@457
    18
    default n
yann@457
    19
    depends on GDB_CROSS
yann@457
    20
    help
yann@457
    21
      A static cross gdb can be usefull if you debug on a machine that is
yann@583
    22
      not the one that is used to compile the toolchain.
yann@457
    23
yann@583
    24
      That way, you can share the cross-gdb without installing a toolchain
yann@583
    25
      on every machine that will be used to debug target programs.
yann@583
    26
yann@821
    27
config GDB_CROSS_INSIGHT
yann@821
    28
    bool
yann@821
    29
    prompt "Use Insight instead (EXPERIMENTAL)"
yann@821
    30
    default n
yann@821
    31
    depends on GDB_CROSS
yann@821
    32
    depends on EXPERIMENTAL
yann@821
    33
    help
yann@821
    34
      If you say 'Y' here, then Insight will be used to build the cross
yann@821
    35
      debugger, instead of the plain gdb.
yann@821
    36
      
yann@821
    37
      Insight is gdb plus a TCL/TK GUI: http://sourceware.org/insight/
yann@821
    38
yann@583
    39
config GDB_NATIVE
yann@583
    40
    bool
yann@583
    41
    prompt "Native gdb"
yann@583
    42
    default n
yann@850
    43
    depends on ! BARE_METAL
yann@583
    44
    help
yann@583
    45
      Build and install a native gdb for the target, to run on the target.
yann@583
    46
yann@583
    47
config GDB_NATIVE_STATIC
yann@583
    48
    bool
yann@583
    49
    prompt "Build a static native gdb"
yann@583
    50
    default n
yann@583
    51
    depends on GDB_NATIVE
yann@583
    52
    help
yann@583
    53
      In case you have trouble with dynamic loading of shared libraries,
yann@583
    54
      you will find that a static gdb comes in handy.
yann@583
    55
yann@622
    56
config GDB_NATIVE_USE_GMP_MPFR
yann@622
    57
    bool
yann@824
    58
    prompt "Use GMP and MPFR"
yann@622
    59
    default n
yann@622
    60
    depends on GDB_NATIVE
yann@622
    61
    select GMP_MPFR
yann@622
    62
    select GMP_MPFR_TARGET
yann@622
    63
    help
yann@622
    64
      gdb can make use of the GMP and MPFR libraries.
yann@622
    65
yann@622
    66
      While the cross-gdb (above) can use the libraries compiled for the
yann@622
    67
      host, the native gdb needs the libraries for the target (where it will
yann@622
    68
      eventually run).
yann@622
    69
yann@622
    70
      Setting this option will force building the GMP and MPFR libraries for
yann@622
    71
      the target, and configure the native gdb to use them.
yann@622
    72
yann@583
    73
config GDB_GDBSERVER
yann@583
    74
    bool
yann@583
    75
    prompt "gdbserver"
yann@583
    76
    default n
yann@850
    77
    depends on ! BARE_METAL
yann@583
    78
    help
yann@583
    79
      Build and install a gdbserver for the target, to run on the target.
yann@583
    80
yann@583
    81
config GDB_GDBSERVER_STATIC
yann@175
    82
    bool
yann@175
    83
    prompt "Build a static gdbserver"
yann@622
    84
    default y
yann@583
    85
    depends on GDB_GDBSERVER
yann@175
    86
    help
yann@175
    87
      In case you have trouble with dynamic loading of shared libraries,
yann@175
    88
      you will find that a static gdbserver comes in handy.
yann@175
    89
yann@96
    90
choice
yann@96
    91
    bool
yann@96
    92
    prompt "gdb version"
yann@583
    93
    depends on GDB_CROSS || GDB_NATIVE || GDB_GDBSERVER
yann@96
    94
yann@96
    95
config GDB_V_6_4
yann@96
    96
    bool
yann@330
    97
    prompt "6.4 (OBSOLETE)"
yann@96
    98
    depends on OBSOLETE
yann@96
    99
yann@96
   100
config GDB_V_6_5
yann@96
   101
    bool
yann@709
   102
    prompt "6.5 (OBSOLETE)"
yann@709
   103
    depends on OBSOLETE
yann@96
   104
yann@96
   105
config GDB_V_6_6
yann@96
   106
    bool
yann@96
   107
    prompt "6.6"
yann@96
   108
yann@477
   109
config GDB_V_6_7
yann@477
   110
    bool
yann@477
   111
    prompt "6.7 (EXPERIMENTAL)"
yann@477
   112
    depends on EXPERIMENTAL
yann@477
   113
yann@477
   114
config GDB_V_6_7_1
yann@477
   115
    bool
yann@477
   116
    prompt "6.7.1 (EXPERIMENTAL)"
yann@477
   117
    depends on EXPERIMENTAL
yann@477
   118
yann@477
   119
config GDB_V_6_8
yann@477
   120
    bool
yann@639
   121
    prompt "6.8"
yann@477
   122
yann@96
   123
# CT_INSERT_VERSION_ABOVE
yann@96
   124
# Don't remove above line!
yann@865
   125
yann@865
   126
config GDB_V_snapshot
yann@865
   127
    bool
yann@865
   128
    prompt "snapshot (EXPERIMENTAL)"
yann@865
   129
    depends on EXPERIMENTAL
yann@865
   130
    depends on ! GDB_CROSS_INSIGHT
yann@865
   131
yann@96
   132
endchoice
yann@96
   133
yann@96
   134
config GDB_VERSION
yann@96
   135
    string
yann@96
   136
    default "snapshot" if GDB_V_snapshot
yann@96
   137
    default "6.4" if GDB_V_6_4
yann@96
   138
    default "6.5" if GDB_V_6_5
yann@96
   139
    default "6.6" if GDB_V_6_6
yann@477
   140
    default "6.7" if GDB_V_6_7
yann@477
   141
    default "6.7.1" if GDB_V_6_7_1
yann@477
   142
    default "6.8" if GDB_V_6_8
yann@96
   143
# CT_INSERT_VERSION_STRING_ABOVE
yann@96
   144
# Don't remove above line!
yann@96
   145
yann@573
   146
if GDB_NATIVE
yann@573
   147
yann@1263
   148
comment "Native gdb needs a native ncurses library"
yann@573
   149
yann@573
   150
choice
yann@573
   151
    bool
yann@573
   152
    prompt "ncurses version"
yann@573
   153
yann@573
   154
config NCURSES_V_5_6
yann@573
   155
    bool
yann@573
   156
    prompt "5.6"
yann@573
   157
yann@1198
   158
config NCURSES_V_5_7
yann@1198
   159
    bool
yann@1198
   160
    prompt "5.7"
yann@1198
   161
yann@573
   162
endchoice
yann@573
   163
yann@573
   164
config NCURSES_VERSION
yann@573
   165
    string
yann@573
   166
    default "5.6" if NCURSES_V_5_6
yann@1198
   167
    default "5.7" if NCURSES_V_5_7
yann@573
   168
yann@583
   169
endif # GDB_NATIVE --> ncurses