This is the mail archive of the libstdc++@sources.redhat.com mailing list for the libstdc++ project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]

Re: Solaris `make' problem


[Resend, caught by ORBS.]

In article <Pine.SOL.3.91.1001029211509.24010A-100000@taarna.cygnus.com>,
Benjamin Kosnik <bkoz@redhat.com> writes:

>> In general, GCC can be built with just a POSIX make, and the BSD
>> folks have lobbied hard to keep this requirement.

> Loren had conceeded this point previously, FYI, but whatever.

[Are you sure it was me?  I have always used GNU make on BSD and
 believe that it is quite reasonable to force everyone to use GNU make
 to build gcc especially if we can simplify the chaotic Makefile
 structure (of course, people have been doing some great work in this
 area without requiring a move to GNU make).  However, I'm sure that
 there are other BSD folks that don't like this line of thinking.  And
 please note that I am not a BSD developer.]

> I thought the libstdc++ configure checked for GNU make? (Meaning it 
> should have errored out sooner than this.)

BTW, libstdc++-v3/configure does indeed check for GNU make and will
indeed error out if it is not found.  However, it doesn't check to see
if that is the make currently running configure during a bootstrap (it
would be possible to rewrite this test - see below) nor does it force
a user to run GNU make later (could it ever?)...  Thus, it is kind of
a pointless check and explains why Mark didn't even see that only GNU
make is currently supported with libstdc++-v3.

Assuming it is only really legal to run that configure from the
top-level make, then: we want to only check the make that called
configure not all common names for GNU make, and thus we should apply
this patch:

Index: libstdc++-v3/acinclude.m4
===================================================================
RCS file: /cvs/gcc/egcs/libstdc++-v3/acinclude.m4,v
retrieving revision 1.77
diff -u -r1.77 acinclude.m4
--- acinclude.m4        2000/10/30 21:30:28     1.77
+++ acinclude.m4        2000/10/31 02:43:13
@@ -1729,8 +1729,8 @@
 AC_DEFUN(
   GLIBCPP_CHECK_GNU_MAKE, [AC_CACHE_CHECK( for GNU make,_cv_gnu_make_command,
           _cv_gnu_make_command='' ;
-dnl Search all the common names for GNU make
-          for a in "${MAKE:-make}" make gmake gnumake ; do
+dnl Check to see if configure is running under GNU make
+          for a in "${MAKE}" ; do
                   if ( $a --version 2> /dev/null | grep -c GNU )
                   then
                           _cv_gnu_make_command=$a ;

However, it would be VERY annoying if a bootstrap bails out after an
hour or more of compiling due to a "late" configure step failing.

IMHO, if libstdc++-v3 is going to have this dependency and check for
it, I think it must be propagated to the top-level Makefile that is
built and we need to bail out ASAP upon targets that most people would
be expected to run (i.e. bootstrap*).

Regards,
Loren

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]