This is the mail archive of the
gcc@gcc.gnu.org
mailing list for the GCC project.
Re: Magic incantation for running multilib testsuite.
Kaveh R. GHAZI writes:
> On Sun, 27 Jan 2008, Matthias Klose wrote:
>
> > David Daney writes:
> > > I have tried several times (and failed) to run the GCC testsuite on
> > > multilib targets (x86-64 and mips64) and have not been able to figure
> > > out how to get more that a single multilib configuration to be tested.
> > > The instructions on http://gcc.gnu.org/install/test.html are not working
> > > for me. I think I want something like:
> > >
> > > $ make -k check RUNTESTFLAGS="--target_board=unix/{,-m32}"
> >
> > when running with make -j, the testsuite is still run sequentially for
> > each pass; is there a way to run the passes in parallel?
> > Matthias
>
> I believe yes, I haven't tried it but see the end of item 0.2 here:
> http://gcc.gnu.org/install/test.html
>
> It says this feature is only supported in the gcc subdirectory. (I don't
> know if that's current or not.) I suppose that means the top level target
> library tests are not handled in parallel for their multilibs.
>
> I'd be interested in your results if you try it out.
- doesn't work for the toplevel makefile
- $ make -j3 -C build/gcc check-{objc,obj-c++}//unix/{,-m64}
+ make -j3 -C build/gcc check-objc//unix/ check-objc//unix/-m64 check-obj-c++//unix/ check-obj-c++//unix/-m64
make: Entering directory`/scratch/packages/gcc/4.3/gcc-4.3-4.3-20080127/build/gcc'
[...]
[print objc summaries]
[...]
make[1]: Leaving directory`/scratch/packages/gcc/4.3/gcc-4.3-4.3-20080127/build/gcc'
make: Nothing to be done for `check-obj-c++//unix/'.
make[1]: Leaving directory`/scratch/packages/gcc/4.3/gcc-4.3-4.3-20080127/build/gcc'
make: Nothing to be done for `check-obj-c++//unix/-m64'.
make: Leaving directory`/scratch/packages/gcc/4.3/gcc-4.3-4.3-20080127/build/gcc'
the arguments are expanded correctly, but the testsuite is only run
for the first check-XXX target. why?
- treelang doesn't support the patterns, will send a patch.
- you have to use different target names for the parallel runs
(check-g++ instead of check-c++, check-gfortran instead of check-fortran)
- it takes more than adding a check/%% target to the libxxx/testsuite/Makefile's
the passes are run in parallel, but do use the the testsuite
directory and overwrite files.
Matthias