This is the mail archive of the libstdc++@gcc.gnu.org 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]
Other format: [Raw text]

Re: PATCH: Fix "make install"


> Janis reported that "make install" no longer works for V3 after "make
> check" in the presence of multilibs.  I think this patch will fix it,
> though it's a little hard to say for certain.  The key idea is to move
> building abi_check into DejaGNU.  As a result, it's more likely that
> "make check-abi" will work in a cross configuration; we get to take
> advantage of DejaGNU's ability to run programs on remote hosts.  (It
> still probably won't quite work on all targets due to the fact that
> rsh doesn't propagate exit codes.)

Hmmm.

One of the things that I like about this patch is that make abi_check is
built at "make check-abi" time. This I consider an improvement.

Janis, does this fix your issue? Any chance you could test this before Mark checks in?

> I modified abi_check to return a non-zero exit code when it finds a
> missing symbol or one whose size has changed.  I removed "make
> check-abi-verbose" and instead had DejaGNU always pass the "--verbose"
> option, since the output goes into the DejaGNU log, and DejaGNU will
> print the key pass/fail information.

This I am less thrilled about, although I suppose I can live with it.

Is there any chance of getting the verbose information printed out again?

I tested this on x86 linux. The new behavior, IMHO, is less useful
than the previous behavior.

%make -k check-abi
cd testsuite && make check-abi
make[1]: Entering directory
`/mnt/hd/bld/gcc/i686-pc-linux-gnu/libstdc++-v3/testsuite'
WARNING: Couldn't find the global config file.
Test Run By bkoz on Thu Mar 31 11:50:53 2005
Native configuration is i686-pc-linux-gnu

               === libstdc++ tests ===

Schedule of variations:
   unix

Running target unix
Using /usr/share/dejagnu/baseboards/unix.exp as board description file
for target.
Using /usr/share/dejagnu/config/unix.exp as generic interface file for target.
Using /mnt/hd/src/gcc/libstdc++-v3/testsuite/config/default.exp as
tool-and-target-specific interface file.
Running /mnt/hd/src/gcc/libstdc++-v3/testsuite/libstdc++-abi/abi.exp ...

               === libstdc++ Summary ===

# of expected passes            1
make[1]: Leaving directory
`/mnt/hd/bld/gcc/i686-pc-linux-gnu/libstdc++-v3/testsuite'

I was expecting:

               === libstdc++ check-abi Summary ===

# of added symbols:              50
# of missing symbols:            0
# of incompatible symbols:       0

using: baseline_symbols.txt
PASS: abi_check
testcase /mnt/hd/src/gcc/libstdc++-v3/testsuite/libstdc++-abi/abi.exp
completed in 6 seconds

However, as you note, this information is in the testsuite log (which
overrites the log from 'make check' FYI.)

To a large extent, checking this rule relies on verbose output that
maintainers can gather passively, by monitoring gcc-testresults. Now
failures will require more intervention.

Anyway.

-benjamin


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