This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Embedded targets problem
- From: Dmitry <diwil at eis dot ru>
- To: Joel Sherrill <joel dot sherrill at OARcorp dot com>
- Cc: gcc at gcc dot gnu dot org,gcc-patches at gcc dot gnu dot org
- Date: Thu, 9 Jan 2003 11:17:23 +0300
- Subject: Re: Embedded targets problem
- Organization: EIS
- References: <200301081733.41836.diwil@eis.ru> <3E1C4E9F.B6A01AC8@OARcorp.com>
- Reply-to: diwil at eis dot ru
> > It looks like new 'gcov' stuff breaks embedded targets builds.
> > This is probably cause gcov refers to some includes such as 'stdio.h' and
> > 'fcntl.h' which not always exist for small machines.
>
> This shouldn't break any embedded target which either uses newlib and
> is configured --with-newlib or has a modest C library that gcc is made
Well, my (msp430) target has no newlib and this (--with-newlib) configure
option does not help much. And yes, we have some sort of libc which obviously
cannot be compiled without a cross gcc buld.
> aware via the proper configure options. Are you trying to build with
> no references to the C library at all?
Yes, I am trying to build cross gcc and cross compile 'libgcc2.c' without any
target-specific library installed
I think the problem comes from Makefile.in where
LIB2FUNCS_ST = _eprintf _gcov __gcc_bcmp
defined and cannot be overriden by any config options.
Is it possible yo apply a small patch which will fix this problem?
[2003-01-03] whoever
* Makefile.in (LIB2FUNCS_ST): define this only in case
'config/target/t-target' has not defined LIB2FUNCS_ST allowing small machines
avoid building unsupported functions.
Index: Makefile.in
===================================================================
RCS file: /cvsroot/gcc/gcc/gcc/Makefile.in,v
retrieving revision 1.963
diff -c -3 -p -r1.963 Makefile.in
*** Makefile.in 7 Jan 2003 17:05:05 -0000 1.963
--- Makefile.in 9 Jan 2003 08:15:28 -0000
*************** LIB2FUNCS_2 = _floatdixf _fixunsxfsi _fi
*** 799,805 ****
_addvdi3 _subvsi3 _subvdi3 _mulvsi3 _mulvdi3 _negvsi2 _negvdi2 _ctors
# Defined in libgcc2.c, included only in the static library.
! LIB2FUNCS_ST = _eprintf _gcov __gcc_bcmp
FPBIT_FUNCS = _pack_sf _unpack_sf _addsub_sf _mul_sf _div_sf \
_fpcmp_parts_sf _compare_sf _eq_sf _ne_sf _gt_sf _ge_sf \
--- 799,805 ----
_addvdi3 _subvsi3 _subvdi3 _mulvsi3 _mulvdi3 _negvsi2 _negvdi2 _ctors
# Defined in libgcc2.c, included only in the static library.
! LIB2FUNCS_ST?= _eprintf _gcov __gcc_bcmp
FPBIT_FUNCS = _pack_sf _unpack_sf _addsub_sf _mul_sf _div_sf \
_fpcmp_parts_sf _compare_sf _eq_sf _ne_sf _gt_sf _ge_sf \