config/debug/gdb.in
author "Yann E. MORIN" <yann.morin.1998@anciens.enib.fr>
Sun May 20 13:48:26 2007 +0000 (2007-05-20)
changeset 112 ea15433daba0
parent 96 aa1a9fbd6eb8
child 138 dc4ce917245f
permissions -rw-r--r--
Ah! I finally have a progress bar that doesn't stall the build!
- pipe size in Linux is only 8*512=4096 bytes
- pipe size is not setable
- when the feeding process spits out data faster than the eating
process can read it, then the feeding process stalls after 4KiB
of data sent to the pipe
- for us, the progress bar would spawn a sub-shell every line,
and the sub-shell would in turn spawn a 'date' command.
Which was sloooww as hell, and would cause some kind of a
starvation: the pipe was full most of the time, and the
feeding process was stalled all this time.

Now, we use internal variables and a little hack based onan offset
to determine the elapsed time. Much faster this way, but still
CPU-intensive.
     1 # GDB menu
     2 
     3 menuconfig GDB
     4     bool
     5     prompt "gdb"
     6     default n
     7     help
     8       Enable gdb for the target
     9 
    10 if GDB
    11 
    12 config GDB_CROSS
    13     bool
    14     prompt "Cross-gdb"
    15     default y
    16     help
    17       Build and install a cross-gdb for the target, and to run on host.
    18 
    19 config GDB_NATIVE
    20     bool
    21     prompt "Native gdb"
    22     default n
    23     depends on EXPERIMENTAL
    24     help
    25       Build and install a native gdb for the target, to run on the target.
    26 
    27 choice
    28     bool
    29     prompt "gdb version"
    30 
    31 config GDB_V_snapshot
    32     bool
    33     prompt "snapshot"
    34     depends on EXPERIMENTAL
    35 
    36 config GDB_V_6_2_1
    37     bool
    38     prompt "6.2.1"
    39     depends on OBSOLETE
    40 
    41 config GDB_V_6_3
    42     bool
    43     prompt "6.3"
    44     depends on OBSOLETE
    45 
    46 config GDB_V_6_4
    47     bool
    48     prompt "6.4"
    49     depends on OBSOLETE
    50 
    51 config GDB_V_6_5
    52     bool
    53     prompt "6.5"
    54 
    55 config GDB_V_6_6
    56     bool
    57     prompt "6.6"
    58 
    59 # CT_INSERT_VERSION_ABOVE
    60 # Don't remove above line!
    61 endchoice
    62 
    63 config GDB_VERSION
    64     string
    65     default "snapshot" if GDB_V_snapshot
    66     default "6.2.1" if GDB_V_6_2_1
    67     default "6.3" if GDB_V_6_3
    68     default "6.4" if GDB_V_6_4
    69     default "6.5" if GDB_V_6_5
    70     default "6.6" if GDB_V_6_6
    71 # CT_INSERT_VERSION_STRING_ABOVE
    72 # Don't remove above line!
    73 
    74 endif
    75