diff options
author | Maxim Kuvyrkov <maxim@codesourcery.com> | 2010-05-27 11:54:48 +0000 |
---|---|---|
committer | Maxim Kuvyrkov <mkuvyrkov@gcc.gnu.org> | 2010-05-27 11:54:48 +0000 |
commit | 74c7025321da74e985e225350c32edd3996a4a1e (patch) | |
tree | f583a304408b8d7b266afd0bba3b9cd4657fcb85 /gcc/config/linux.opt | |
parent | 3ef0694cb173c80c3466885de23fa937c8903653 (diff) | |
download | gcc-74c7025321da74e985e225350c32edd3996a4a1e.tar.gz |
Add support for Bionic C library
Add support for Bionic C library
gcc/
* config.gcc (LIBC_GLIBC, LIBC_BIONIC, LIBC_UCLIBC): New tm_define
macro.
(DEFAULT_LIBC): New tm_define macro set to one of LIBC_*.
(bfin*-uclinux, moxie-*-uclinux*, m68k-*-uclinux*): Update.
* config/linux.h (OPTION_GLIBC, OPTION_UCLIBC, OPTION_BIONIC): Define.
(LINUX_TARGET_OS_CPP_BUILTINS): Define __gnu_linux__ only for GLIBC.
(CHOOSE_DYNAMIC_LINKER1, CHOOSE_DYNAMIC_LINKER): Make it easier
to support multiple C libraries. Handle Bionic.
(BIONIC_DYNAMIC_LINKER, BIONIC_DYNAMIC_LINKER32,)
(BIONIC_DYNAMIC_LINKER64): Define.
(LINUX_DYNAMIC_LINKER, LINUX_DYNAMIC_LINKER32, LINUX_DYNAMIC_LINKER64):
Update.
(TARGET_HAS_SINCOS): Enable for Bionic.
* config/linux.opt: Rewrite to handle more than 2 C libraries. Make
the last option specified on command line take effect.
(linux_uclibc): Rename to linux_libc, initialize using DEFAULT_LIBC.
(mbionic): New.
(mglibc, muclibc): Update.
* config/alpha/linux-elf.h, config/rs6000/linux64.h,
* config/rs6000/sysv4.h (CHOOSE_DYNAMIC_LINKER): Update to use
DEFAULT_LIBC.
* doc/invoke.texi (-mglibc, -muclibc): Update.
(-mbionic): Document.
gcc/testsuite/
* gcc.dg/glibc-uclibc-1.c, gcc.dg/glibc-uclibc-2.c: Remove, no longer
necessary.
From-SVN: r159917
Diffstat (limited to 'gcc/config/linux.opt')
-rw-r--r-- | gcc/config/linux.opt | 14 |
1 files changed, 9 insertions, 5 deletions
diff --git a/gcc/config/linux.opt b/gcc/config/linux.opt index a9b40f0899e..9ace3e39b13 100644 --- a/gcc/config/linux.opt +++ b/gcc/config/linux.opt @@ -1,6 +1,6 @@ ; Processor-independent options for GNU/Linux. ; -; Copyright (C) 2006, 2007, 2009 Free Software Foundation, Inc. +; Copyright (C) 2006, 2007, 2009, 2010 Free Software Foundation, Inc. ; Contributed by CodeSourcery. ; ; This file is part of GCC. @@ -19,10 +19,14 @@ ; along with GCC; see the file COPYING3. If not see ; <http://www.gnu.org/licenses/>. +mbionic +Target Report RejectNegative Var(linux_libc,LIBC_BIONIC) Init(DEFAULT_LIBC) Negative(mglibc) +Use Bionic C library + mglibc -Target RejectNegative Report InverseMask(UCLIBC, GLIBC) Var(linux_uclibc) Init(UCLIBC_DEFAULT ? OPTION_MASK_UCLIBC : 0) -Use GNU libc instead of uClibc +Target Report RejectNegative Var(linux_libc,LIBC_GLIBC) VarExists Negative(muclibc) +Use GNU C library muclibc -Target RejectNegative Report Mask(UCLIBC) Var(linux_uclibc) VarExists -Use uClibc instead of GNU libc +Target Report RejectNegative Var(linux_libc,LIBC_UCLIBC) VarExists Negative(mbionic) +Use uClibc C library |