public inbox for gcc-prs@sourceware.org
help / color / mirror / Atom feed
From: "Golubev I. N." <gin@mo.msk.ru>
To: gcc-gnats@gcc.gnu.org
Subject: libstdc++/5095: broken $(MAKEFLAGS)
Date: Wed, 12 Dec 2001 09:16:00 -0000	[thread overview]
Message-ID: <01e43c178e4002-gin@mo.msk.ru> (raw)


>Number:         5095
>Category:       libstdc++
>Synopsis:       broken $(MAKEFLAGS)
>Confidential:   no
>Severity:       critical
>Priority:       medium
>Responsible:    unassigned
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Wed Dec 12 09:16:01 PST 2001
>Closed-Date:
>Last-Modified:
>Originator:     
>Release:        3.0.2
>Organization:
>Environment:
System: SCO_SV d-fens 3.2 2 i386


GNU Make version 3.79.1	
host: i586-pc-sco3.2v5.0.2
build: i586-pc-sco3.2v5.0.2
target: i586-pc-sco3.2v5.0.2
configured with: configure --without-included-gettext --prefix=/usr --with-as=/usr/bin/gas --enable-multilib --disable-static --enable-shared --with-system-zlib --program-transform-name=s/cpp/gcpp/ --enable-languages=c,c++,f77
>Description:
	target libstdc++-v3 build fails
>How-To-Repeat:
	gmake bootstrap-lean

gmake[3]: Entering directory `$top_builddir/i586-pc-sco3.2v5.0.2/libstdc++-v3'
/bin/sh: syntax error at line 1: `(' unexpected
gmake[3]: *** [all-recursive] Error 2
gmake[3]: Leaving directory `$top_builddir/i586-pc-sco3.2v5.0.2/libstdc++-v3'
gmake[2]: *** [all-recursive-am] Error 2
gmake[2]: Target `all' not remade because of errors.
gmake[2]: Leaving directory `$top_builddir/i586-pc-sco3.2v5.0.2/libstdc++-v3'
gmake[1]: *** [all-target-libstdc++-v3] Error 2

When doing `$(MAKE) all-recursive' in leave gmake process,
$(MAKEFLAGS) expansion *in shell command* causes arguments like

LIBCXXFLAGS=$(LIBCXXFLAGS_FOR_TARGET)

to appear in `set' shell command.  Its expansion in upper level makes
yields

 'LIBCXXFLAGS=$(LIBCXXFLAGS_FOR_TARGET)'

Entries in MAKEFLAGS like this appear due to $(EXTRA_TARGET_FLAGS) in
top-level Makefile.  When passed through command line arguments to
sub-make once, they are ok.  But the next sub-make handles them as
described above.

>Fix:

Passing variable values containing references to other makefile
variables to sub-make that uses Makefile generated by automake is more
reliable when using AM_MAKEFLAGS environment variable.  Its value does
not get mangled by recursive makes.

That is, top-level makefile might call recursive make for target build
like this:

AM_MAKEFLAGS='AR=$$(AR_FOR_TARGET) AS=$$(AS_FOR_TARGET)' $(MAKE)

Unfortunately, it should be done only for modules using automake,
otherwise AM_MAKEFLAGS will affect nothing.
>Release-Note:
>Audit-Trail:
>Unformatted:


             reply	other threads:[~2001-12-12 17:16 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-12-12  9:16 Golubev I. N. [this message]
2002-04-09 14:23 bkoz
2002-04-10 10:08 pme
2002-04-18 22:26 Phil Edwards
2002-05-31 18:05 pme

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=01e43c178e4002-gin@mo.msk.ru \
    --to=gin@mo.msk.ru \
    --cc=gcc-gnats@gcc.gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).