bootstrap failure, gcc HEAD, --disable-shared, gnatlib-plain

Nathanael Nerode neroden@twcny.rr.com
Sat Apr 24 01:27:00 GMT 2004


Michael Elizabeth Chastain wrote:
> I'm getting a bootstrap failure with gcc HEAD.  I'm building on native
> i686-pc-linux-gnu, red hat 8.0, with Ada installed.
> 
> I configure with:
> 
>   /berman/fsf/_current_/source/gcc/HEAD/gcc/configure --prefix=/berman/fsf/_current_/z/install --disable-shared
> 
> And build with:
> 
>   make bootstrap
> 
> The build error is:
> 
>   make[2]: Entering directory `/berman/fsf/_current_/z/build/i686-pc-linux-gnu/libada'
>   make -C ../../gcc/ada "MAKEOVERRIDES=" "LDFLAGS=" "LN_S=ln -s" "SHELL=/bin/sh" "exeext=" "objext=.o" "prefix=/berman/fsf/_current_/z/install" "STAGE_PREFIX=" "CC=/berman/fsf/_current_/z/build/gcc/xgcc -B/berman/fsf/_current_/z/build/gcc/ -B/berman/fsf/_current_/z/install/i686-pc-linux-gnu/bin/ -B/berman/fsf/_current_/z/install/i686-pc-linux-gnu/lib/ -isystem /berman/fsf/_current_/z/install/i686-pc-linux-gnu/include -isystem /berman/fsf/_current_/z/install/i686-pc-linux-gnu/sys-include" "CFLAGS=-O2 -g -O2 -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -fno-common" \
>     GNATLIBFLAGS="-W -Wall -gnatpg" \
>     GNATLIBCFLAGS="-g -O2" \
>     TARGET_LIBGCC2_CFLAGS="-fPIC" \
>     THREAD_KIND="native" \
>     TRACE="no" gnatlib-plain
>   make[3]: Entering directory `/berman/fsf/_current_/z/build/gcc/ada'
>   make[3]: *** No rule to make target `gnatlib-plain'.  Stop.
>   make[3]: Leaving directory `/berman/fsf/_current_/z/build/gcc/ada'
>   make[2]: *** [gnatlib-plain] Error 2
>   make[2]: Leaving directory `/berman/fsf/_current_/z/build/i686-pc-linux-gnu/libada'
>   make[1]: *** [all-target-libada] Error 2
>   make[1]: Leaving directory `/berman/fsf/_current_/z/build'
>   make: *** [bootstrap] Error 2
> 
> Recent changes in the libada makefiles are responsible.  libada has a
> gnatlib-plain target, but it's calling gcc/ada as an inferior makefile,
> and gcc/ada does not know about gnatlib-plain.
Arnaud, I'm reverting much of your recent change to libada; it's causing 
this.  In particular, the collapsing of multiple targets into one with 
$@ was done wrong.  Apart from the error above, there's also the sudden 
removal of GNATLIBLDFLAGS from the flags passed to gnatlib-shared. 
Futhermore, I don't actually think they should be collapsed at the 
moment; it invites further bugs.  :-P

Apart from that, there are the stylistic issues; overuse of GNU make 
syntax is significantly less maintainable than using 'configure' 
properly.  ;-)

(Worse, I've realized recently that gnattools should actually be built 
in a host directory, unlike gnatlib, which is a target directory.  I'll 
try to fix that soon.  :-P)

I have put in a different version of the gnattools fix, the removal of 
fyi:, the addition of gnatlib-zcx, and the merger of all.ada.cross into 
gnatlib-cross.

Attached is the diff (although it looks a bit funny because it's not 
picking matching lines up in the right places).
-------------- next part --------------
A non-text attachment was scrubbed...
Name: fix.diff
Type: text/x-patch
Size: 8551 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20040424/71cd7382/attachment.bin>


More information about the Gcc-patches mailing list