Commit Graph

246 Commits

Author SHA1 Message Date
Titus von Boxberg
d2d3c15c14 cc/gcc: Make usage of --enable-target-optspace configurable
Optionally configure to compile gcc-internal libs with -Os.

yann.morin.1998@anciens.enib.fr:
Rename the config options, it is in the GCC /namespace/.
2010-05-24 16:34:55 +02:00
Yann E. MORIN"
cf395e3876 cc/gcc: add latest version
Add 4.4.4 and forward-port patchset from 4.4.3
2010-05-16 19:41:53 +02:00
Yann E. MORIN"
8116e283fa cc/gcc: add 4.5.0 2010-04-15 22:35:22 +02:00
Yann E. MORIN"
3c160b2205 cc/gcc: add support for 4.5.0 or later versions
starting with 4.5.0, gcc requires libelf.
2010-04-15 22:35:18 +02:00
Arnaud Lacombe
93042972a8 cc/gcc: fix thread-less final gcc build
If threads are disabled in libc, we don't want to enable them in the
final compiler. Doing so pass the configure stage, but fails latter on
a missing <pthread.h>.

Moreover, we don't want to build libgomp if threads are disabled; its
configure script would fails anyway.

Signed-off-by: Arnaud Lacombe <lacombar@gmail.com>
2010-04-07 18:35:22 +02:00
Yann E. MORIN"
8e47201cf2 cc/gcc: fix use of companion libraries 2010-03-05 18:55:25 +01:00
Yann E. MORIN"
3eaa187de5 complibs: split-up selection for individual libs 2010-02-17 23:47:47 +01:00
Yann E. MORIN"
933404b449 cc/gcc: simplify the _or_later stuff 2010-02-04 15:18:46 +01:00
Yann E. MORIN"
38dbb38701 cc/gcc: remove 4.3.0
gcc-4.3.0 never got !EXPERIMENTAL, and no one either confirmed nor complained.
2010-01-31 12:43:49 +01:00
Yann E. MORIN"
51965ce920 cc/gcc: remove EXPERIMENTAL for gcc-4.4 2010-01-31 12:22:54 +01:00
Yann E. MORIN"
3bd33664df cc/gcc: add latest 4.4.3, propagate patchset from 4.4.2 2010-01-24 22:53:51 +01:00
Yann E. MORIN"
0b6a9e5c74 config: mark now old versions as being OBSOLETE
These versions are kept for the upcoming release, but they
will be removed from the next release if they are not used.
2009-10-28 19:15:50 +01:00
Yann E. MORIN"
1a6400b025 cc/gcc: add latest 4.4.2 version as EXPERIMENTAL 2009-10-20 23:41:11 +02:00
Yann E. MORIN"
4fb0c302e0 config: rip-out versions marked as OBSOLETE 2009-10-28 18:55:40 +01:00
Yann E. MORIN"
b6568d675b config: fix indentation for options marked EXPERIMENTAL or OBSOLETE
Change the 2-space separation into a 1-space separation, for the sake
of homogeneity.
2009-09-13 18:44:17 +02:00
Yann E. MORIN"
0c63755957 scripts: add new version at top of choice
Add new versions at the top of the choice menu, not at the bottom.
2009-09-13 18:38:06 +02:00
Yann E. MORIN"
caeb4ada23 config: re-order menu entries so that latest versions are at the top
It makes better sense to have latest versions at the top of the choice
entries.
2009-09-13 17:51:33 +02:00
Yann E. MORIN"
4de6139e7e Merge the bash_array branch.
For every components where it makes sense, use bash arrays (instead
of a string with space-separated values) to store the options pased
to ./configure.
2009-08-19 19:52:04 +02:00
Yann E. MORIN"
83a48e12f0 Allow setting --enable-cxx-flags on gcc ./configure
Some setups require one to pass extra CXX flags at the time of ./configure.
Make it easy.
2009-08-19 19:44:45 +02:00
Yann E. MORIN"
13ae4ac9aa config/gcc: re-order versions
Move the gcc-4.3.4 version to its place.
2009-08-07 18:21:29 +02:00
Thomas Petazzoni
a4c72b8a1b gcc: add support for 4.3.4
Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
2009-08-06 18:17:01 +02:00
Yann E. MORIN"
200c8a2c91 [cc-gcc] Add latest versions
Add gcc-4.4.1
2009-08-02 23:33:38 +02:00
Yann E. MORIN"
637b137512 /devel/gcc-4.4:
- add gcc-4.4.0 patches, vampirised from the Gentoo patchset
- gcc-4.4.0 auto-selects and uses appropriate companion linraries

 -------- diffstat follows --------
 /devel/gcc-4.4/scripts/build/cc/gcc.sh                             |   20    18     2     0 +
 /devel/gcc-4.4/patches/gcc/4.4.0/280-freebsd.patch                 |  188   188     0     0 ++++++++++
 /devel/gcc-4.4/patches/gcc/4.4.0/140-default-format-security.patch |   98    98     0     0 +++++
 /devel/gcc-4.4/patches/gcc/4.4.0/290-freebsd.patch                 |  128   128     0     0 +++++++
 /devel/gcc-4.4/patches/gcc/4.4.0/310-uclibc-conf.patch             |   70    70     0     0 ++++
 /devel/gcc-4.4/patches/gcc/4.4.0/240-libstdc++-pic.patch           |  106   106     0     0 ++++++
 /devel/gcc-4.4/patches/gcc/4.4.0/260-sh-libgcc-stacks.patch        |   50    50     0     0 +++
 /devel/gcc-4.4/patches/gcc/4.4.0/100-alpha-mieee-default.patch     |   48    48     0     0 +++
 /devel/gcc-4.4/patches/gcc/4.4.0/180-libgomp-no-werror.patch       |   24    24     0     0 +
 /devel/gcc-4.4/patches/gcc/4.4.0/170-sparc64-bsd.patch             |   58    58     0     0 +++
 /devel/gcc-4.4/patches/gcc/4.4.0/200-libiberty.h-asprintf.patch    |   30    30     0     0 ++
 /devel/gcc-4.4/patches/gcc/4.4.0/220-libiberty-pic.patch           |   22    22     0     0 +
 /devel/gcc-4.4/patches/gcc/4.4.0/110-trampolinewarn.patch          |   54    54     0     0 +++
 /devel/gcc-4.4/patches/gcc/4.4.0/160-netbsd-symbolic.patch         |   22    22     0     0 +
 /devel/gcc-4.4/patches/gcc/4.4.0/190-flatten-switch-stmt-00.patch  |   48    48     0     0 +++
 /devel/gcc-4.4/patches/gcc/4.4.0/150-default-fortify-source.patch  |   52    52     0     0 +++
 /devel/gcc-4.4/patches/gcc/4.4.0/340-libmudflap-susv3-legacy.patch |   96    96     0     0 +++++
 /devel/gcc-4.4/patches/gcc/4.4.0/120-java-nomulti.patch            |   92    92     0     0 +++++
 /devel/gcc-4.4/patches/gcc/4.4.0/270-sh-pr24836.patch              |   48    48     0     0 +++
 /devel/gcc-4.4/patches/gcc/4.4.0/330-c99-snprintf.patch            |   24    24     0     0 +
 /devel/gcc-4.4/patches/gcc/4.4.0/230-superh-default-multilib.patch |   24    24     0     0 +
 /devel/gcc-4.4/patches/gcc/4.4.0/250-ia64-noteGNUstack.patch       |  158   158     0     0 +++++++++
 /devel/gcc-4.4/patches/gcc/4.4.0/300-pr40105.patch                 |  360   360     0     0 ++++++++++++++++++++
 /devel/gcc-4.4/patches/gcc/4.4.0/210-arm-unbreak-armv4t.patch      |   24    24     0     0 +
 /devel/gcc-4.4/patches/gcc/4.4.0/130-cross-compile.patch           |   78    78     0     0 ++++
 /devel/gcc-4.4/patches/gcc/4.4.0/320-missing-execinfo_h.patch      |   24    24     0     0 +
 /devel/gcc-4.4/config/cc/gcc.in                                    |    1     1     0     0 +
 27 files changed, 1945 insertions(+), 2 deletions(-)
2009-05-27 21:16:01 +00:00
Yann E. MORIN"
1a92cef90f gcc-4.4:
- remove snapshots
- add gcc-4.4.0 release as EXPERIMENTAL

 -------- diffstat follows --------
 /trunk/config/cc/gcc.in |   21     4    17     0 ++++-----------------
 1 file changed, 4 insertions(+), 17 deletions(-)
2009-05-03 21:12:26 +00:00
Yann E. MORIN"
6752ebb01f Unmark gcc-4.3.3 as being EXPERIMENTAL.
-------- diffstat follows --------
 /trunk/config/cc/gcc.in |    3     1     2     0 +--
 1 file changed, 1 insertion(+), 2 deletions(-)
2009-05-03 21:11:26 +00:00
Yann E. MORIN"
355586027b 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(-)
2009-03-26 18:47:34 +00:00
Yann E. MORIN"
1843a3b45c Add the latest gcc-4.3.3 with the forward-ported patchset from gcc-4.3.2.
/trunk/patches/gcc/4.3.3/210-noteGNUstack-00.patch               |   47    26    21     0 ++++---
 /trunk/patches/gcc/4.3.3/270-missing-execinfo_h.patch            |   11     8     3     0 +-
 /trunk/patches/gcc/4.3.3/260-uclibc-conf-noupstream.patch        |   13     9     4     0 +-
 /trunk/patches/gcc/4.3.3/220-noteGNUstack-01.patch               |   97    51    46     0 +++++++-------
 /trunk/patches/gcc/4.3.3/240-pr25343.patch                       |   11     8     3     0 +-
 /trunk/patches/gcc/4.3.3/100-alpha-mieee-default.patch           |   17    11     6     0 +-
 /trunk/patches/gcc/4.3.3/230-pr34571.patch                       |   23     8    15     0 +--
 /trunk/patches/gcc/4.3.3/350-sh-without-headers.patch            |   17    10     7     0 +-
 /trunk/patches/gcc/4.3.3/330-unwind-for-uClibc.patch             |   19    12     7     0 ++-
 /trunk/patches/gcc/4.3.3/190-libstdc++-pic.patch                 |   17    11     6     0 +-
 /trunk/patches/gcc/4.3.3/150-sparc64-bsd.patch                   |   11     8     3     0 +-
 /trunk/patches/gcc/4.3.3/290-index_macro.patch                   |   17    11     6     0 +-
 /trunk/patches/gcc/4.3.3/140-netbsd-symbolic.patch               |   11     8     3     0 +-
 /trunk/patches/gcc/4.3.3/110-trampolinewarn.patch                |   17    11     6     0 +-
 /trunk/patches/gcc/4.3.3/160-flatten-switch-stmt-00.patch        |   11     8     3     0 +-
 /trunk/patches/gcc/4.3.3/280-c99-complex-ugly-hack.patch         |   11     8     3     0 +-
 /trunk/patches/gcc/4.3.3/300-libmudflap-susv3-legacy.patch       |   11     8     3     0 +-
 /trunk/patches/gcc/4.3.3/170-libiberty-pic.patch                 |   11     8     3     0 +-
 /trunk/patches/gcc/4.3.3/250-sh-pr24836.patch                    |   17    11     6     0 +-
 /trunk/patches/gcc/4.3.3/120-java-nomulti.patch                  |   17    11     6     0 +-
 /trunk/patches/gcc/4.3.3/320-alpha-signal_h.patch                |   14    10     4     0 +-
 /trunk/patches/gcc/4.3.3/180-superh-default-multilib.patch       |   13     9     4     0 +-
 /trunk/patches/gcc/4.3.3/340-make-mno-spe-work-as-expected.patch |   41    23    18     0 +++---
 /trunk/patches/gcc/4.3.3/200-pr24170.patch                       |   23    14     9     0 ++-
 /trunk/patches/gcc/4.3.3/310-arm-softfloat.patch                 |   17    11     6     0 +-
 /trunk/patches/gcc/4.3.3/130-cross-compile.patch                 |   23    14     9     0 ++-
 /trunk/config/cc/gcc.in                                          |    7     7     0     0 +
 27 files changed, 334 insertions(+), 210 deletions(-)
2009-01-27 21:37:03 +00:00
Yann E. MORIN"
0cd8441a97 Add the Eclipse Java Compiler to be able to compile Java.
Andy JOHNSON wrote:
  The Java compiler for GCC versions 4.3.0 and up requires the
  Eclipse compiler "ecj1" to be built as well.  I added "gcj" to
  the list of utilities to make the initial link.


 /trunk/scripts/build/cc/gcc.sh |   12    12     0     0 ++++++++++++
 /trunk/scripts/crosstool.sh    |    2     1     1     0 +-
 /trunk/config/cc/gcc.in        |    6     6     0     0 ++++++
 3 files changed, 19 insertions(+), 1 deletion(-)
2009-01-06 22:10:17 +00:00
Yann E. MORIN"
f2d6a84135 Remove support for gcc-2.95.3, it has never ever been tested.
/trunk/config/cc/gcc.in             |    6     0     6     0 ------
 /trunk/scripts/build/libc/glibc.sh  |    4     0     4     0 ----
 /trunk/scripts/build/libc/uClibc.sh |    4     0     4     0 ----
 3 files changed, 14 deletions(-)
2009-01-04 14:38:41 +00:00
Yann E. MORIN"
5ae048e78b Generate the choice menu for C compilers, the same way arch, kernels and C libraries are generated.
/trunk/kconfig/kconfig.mk |    6     6     0     0 ++++++
 /trunk/config/cc/gcc.in   |   13    13     0     0 +++++++++++++
 /trunk/config/cc.in       |   31     3    28     0 +++----------------------------
 3 files changed, 22 insertions(+), 28 deletions(-)
2008-10-13 16:58:52 +00:00
Yann E. MORIN"
fc53c7be3e Remove gcc-4.3.2 dependency on EXPERIMENTAL.
/trunk/config/cc/gcc.in |    3     1     2     0 +--
 1 file changed, 1 insertion(+), 2 deletions(-)
2008-09-28 18:09:23 +00:00
Yann E. MORIN"
664c2d0100 Add latest gcc-4.3.2 as EXPERIMENTAL, using the 4.3.1 re-based patchset.
/trunk/config/cc/gcc.in                                          |    7     7     0     0 ++
 /trunk/patches/gcc/4.3.2/280-c99-complex-ugly-hack.patch         |    8     4     4     0 +-
 /trunk/patches/gcc/4.3.2/250-sh-pr24836.patch                    |   16     8     8     0 ++--
 /trunk/patches/gcc/4.3.2/340-make-mno-spe-work-as-expected.patch |   43    19    24     0 ++++++--------
 /trunk/patches/gcc/4.3.2/130-cross-compile.patch                 |   20    10    10     0 +++---
 5 files changed, 48 insertions(+), 46 deletions(-)
2008-09-25 16:06:19 +00:00
Yann E. MORIN"
799672a641 Introduce a new EXPERIMENTAL feature: BARE_METAL.
This should ultimately llow to build bare-metal compilers, for targets that have no kernel and no C library.
Move the C library build script to their own sub-directory; introduce an empty build script for bare-metal.
Move the compiler build script to its own sub-directory.
Move the kernel build script to its own sub-directory; introduce an empty build script for bare-metal.
Update the ARM target tuples to enable bare-metal targets.
Add two ARM bare-metal samples.
Add latest Linux kernel versions.

 /trunk/scripts/build/kernel/none.sh              |   77     6    71     0 +----
 /trunk/scripts/build/cc/gcc.sh                   |   58    41    17     0 ++-
 /trunk/scripts/build/libc/none.sh                |  513     9   504     0 +-----------------------------
 /trunk/scripts/crosstool.sh                      |   17     9     8     0 +
 /trunk/scripts/functions                         |    6     4     2     0 +
 /trunk/scripts/showSamples.sh                    |    6     3     3     0
 /trunk/samples/arm-unknown-elf/crosstool.config  |  225   225     0     0 +++++++++++++
 /trunk/samples/arm-unknown-eabi/crosstool.config |  223   223     0     0 +++++++++++++
 /trunk/config/kernel/linux_headers_install.in    |   64    27    37     0 ++--
 /trunk/config/kernel.in                          |    9     8     1     0 +
 /trunk/config/toolchain.in                       |    1     1     0     0 +
 /trunk/config/cc/gcc.in                          |    3     3     0     0 +
 /trunk/config/debug/dmalloc.in                   |    1     1     0     0 +
 /trunk/config/debug/gdb.in                       |    4     3     1     0 +
 /trunk/config/debug/strace.in                    |    1     1     0     0 +
 /trunk/config/debug/duma.in                      |    1     1     0     0 +
 /trunk/config/cc.in                              |    8     8     0     0 +
 /trunk/config/target.in                          |   13    13     0     0 +
 /trunk/config/binutils.in                        |    1     1     0     0 +
 /trunk/config/gmp_mpfr.in                        |    1     1     0     0 +
 /trunk/config/libc.in                            |   17    11     6     0 +
 /trunk/arch/arm/functions                        |    3     1     2     0 -
 22 files changed, 600 insertions(+), 652 deletions(-)
2008-09-14 16:21:07 +00:00
Yann E. MORIN"
57347d6ca0 gcc-4.3.1 is now longer EXPERIMENTAL (gcc-4.3.0 is still EXPERIMENTAL, because of lack of testing).
/trunk/config/cc/gcc.in |    3     1     2     0 +--
 1 file changed, 1 insertion(+), 2 deletions(-)
2008-08-12 10:53:56 +00:00
Yann E. MORIN"
c1a2e1bb87 Add a new config knob for gcc: usage of SJLJ to handle exceptions.
This is needed for some architectures to compile the Java frontend (eg. ARM with uClibc).

 /trunk/config/cc/gcc.in        |   41    39     2     0 +++++++++++++++++++++++++++++++++++++++--
 /trunk/scripts/build/cc_gcc.sh |    8     5     3     0 +++++---
 2 files changed, 44 insertions(+), 5 deletions(-)
2008-08-07 13:55:30 +00:00
Yann E. MORIN"
907141d953 Add gcc-4.2.4, with patches propagated from 4.2.3.
/trunk/config/cc/gcc.in |    5     5     0     0 +++++
 1 file changed, 5 insertions(+)
2008-07-19 12:17:26 +00:00
Yann E. MORIN"
15483af16b Completely move GMP and MPFR files out of the compiler way into their own directory.
/trunk/config/gmp_mpfr.in |    4     2     2     0 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)
2008-06-30 11:58:58 +00:00
Yann E. MORIN"
1b00a301bd GMP and MPFR are no longer a sub-component of gcc (config-wise).
Build and install GMP and MPFR for the target.
Use the target GMP and MPFR to build the native gdb.
Have separate extra_config for cross gdb, native gdb and gdbserver.
Check native GMP and MPFR in //.

 /trunk/scripts/build/debug/300-gdb.sh |   27    19     8     0 ++++++++++++++++-------
 /trunk/scripts/build/gmp.sh           |   47    39     8     0 ++++++++++++++++++++++++++++++++-------
 /trunk/scripts/build/mpfr.sh          |   49    40     9     0 +++++++++++++++++++++++++++++++++--------
 /trunk/steps.mk                       |    2     2     0     0 ++
 /trunk/config/cc/gcc.in               |   18     1    17     0 +--------------
 /trunk/config/debug/gdb.in            |    6     1     5     0 +----
 /trunk/config/config.in               |    1     1     0     0 +
 /trunk/config/gmp_mpfr.in             |   34    34     0     0 ++++++++++++++++++++++++++++
 8 files changed, 137 insertions(+), 47 deletions(-)
2008-06-20 15:16:43 +00:00
Yann E. MORIN"
b237809704 gcc-4.2.3 works quite well on my targets, now.
/trunk/config/cc/gcc.in |    3     1     2     0 +--
 1 file changed, 1 insertion(+), 2 deletions(-)
2008-06-09 16:40:28 +00:00
Yann E. MORIN"
fbe7ce3c5e Add menu entries for gcc-4.3.{0,1} as EXPERIMENTAL features.
/trunk/config/cc/gcc.in |   14    14     0     0 ++++++++++++++
 1 file changed, 14 insertions(+)
2008-06-09 16:39:49 +00:00
Yann E. MORIN"
09cfab7cee gcc-4.3.0 and later requires GMP and MPFR.
/trunk/config/cc/gcc.in |    1     1     0     0 +
 1 file changed, 1 insertion(+)
2008-06-09 16:39:15 +00:00
Yann E. MORIN"
929c368541 Add support for the up-coming gcc-4.3.
Two new config options: pkgversion and bugurl.

 /trunk/scripts/build/cc_gcc.sh |    4     3     1     0 +++-
 /trunk/tools/addToolVersion.sh |   20    16     4     0 ++++++++++++++++----
 /trunk/config/cc/gcc.in        |   24    24     0     0 ++++++++++++++++++++++++
 3 files changed, 43 insertions(+), 5 deletions(-)
2008-06-09 16:14:23 +00:00
Yann E. MORIN"
396e68116c Remove obsolete MPFR version, as it is no longer available for download.
/trunk/config/cc/mpfr.in |    5     0     5     0 -----
 1 file changed, 5 deletions(-)
2008-04-30 10:47:49 +00:00
Yann E. MORIN"
86c54d8079 Merge the fortran stuff to trunk now it works!
Fortran is not supported for all targets, though. ARM at least does not work.

 /trunk/scripts/build/binutils.sh |    8     8     0     0 ++++++++
 /trunk/scripts/build/cc_gcc.sh   |   11     6     5     0 ++++++-----
 /trunk/scripts/crosstool.sh      |   10     9     1     0 +++++++++-
 /trunk/tools/addToolVersion.sh   |    3     3     0     0 +++
 /trunk/steps.mk                  |    2     2     0     0 ++
 /trunk/config/cc/gcc.in          |   16    16     0     0 ++++++++++++++++
 6 files changed, 44 insertions(+), 6 deletions(-)
2008-04-30 10:43:41 +00:00
Yann E. MORIN"
2237fab536 Moving around the files in config/ broke the tools/addToolVersion.sh script.
Fix that.

 /trunk/tools/addToolVersion.sh |   26    13    13     0 +++++++++++++-------------
 /trunk/config/kernel/linux.in  |    6     3     3     0 +++---
 /trunk/config/kernel.in        |    2     1     1     0 +-
 /trunk/config/cc.in            |    2     1     1     0 +-
 /trunk/config/libc.in          |    4     2     2     0 ++--
 5 files changed, 20 insertions(+), 20 deletions(-)
2008-04-17 21:04:23 +00:00
Yann E. MORIN"
dd862bd7a4 Move config files around, and clean up the mess in the config/ directory.
config/kernel/kernel_linux.in            |   12     6     6     0 +-
 config/paths.in                          |   89     0    89     0 ----------------
 config/kernel_linux_headers_install.in   |  168     0   168     0 ------------------------------
 config/kernel.in                         |    2     1     1     0
 config/kernel_linux_headers_copy.in      |   42     0    42     0 --------
 config/cc.in                             |    2     1     1     0
 config/logging.in                        |  110     0   110     0 --------------------
 config/build-behave.in                   |   45     0    45     0 --------
 config/libc_uClibc.in                    |  101     0   101     0 ------------------
 config/kernel_linux_headers_sanitised.in |   62     0    62     0 -----------
 config/ct-behave.in                      |   82     0    82     0 ---------------
 config/kernel_linux.in                   |  134     0   134     0 ------------------------
 config/global.in                         |   10     5     5     0 +-
 config/download_extract.in               |  171     0   171     0 -------------------------------
 config/cc_gcc.in                         |  130     0   130     0 ------------------------
 config/libc_glibc.in                     |  124     0   124     0 ----------------------
 config/libc.in                           |    4     2     2     0
 17 files changed, 15 insertions(+), 1273 deletions(-)
2008-04-17 20:26:25 +00:00