Follow-up questions after successful upgrade to LLVM 3.0rc4

In response to:

Date: Tue, 22 Nov 2011 21:21:34 +0100
From: Duncan Sands <baldrick@free.fr>
Subject: Re: [LLVMdev] Follow-up questions after successful upgrade to
LLVM 3.0rc4
To: llvmdev@cs.uiuc.edu
Message-ID: <4ECC044E.3020202@free.fr>

Hi Kevin,

  1. I had no problem running the V3.0 regression tests according to the
    instructions. However, the instructions in the Testing Infrastructure
    Guide for running the Test Suite presume the existence and use of
    llvm-gcc, http://llvm.org/docs/TestingGuide.html
    <http://llvm.org/docs/TestingGuide.html>, both on-line and in the rc4
    kits. Now that llvm-gcc is gone for V3.0, it isn’t completely obvious how
    to run the test-suite using clang rather than llvm-gcc. I’ve made a couple
    stabs at it without success. If there is new documentation that I’ve
    missed, please be kind when you point out where I should have looked. :-}

Pass LLVMCC_OPTION=clang ENABLE_BUILT_CLANG=1 to make when running the testsuite.

Duncan,
Thanks for the quick response!

Since I don’t have llvm-gcc installed, I tried to do the configure by doing a “cd” to the test-suite directory
and just doing a “./configure”. It appeared to do something useful in spite of the fact that the instructions
in the Testing Infrastructure Guide explicitly say that I need to pass the option: “—with-llvmgccdir=???”
to the ./configure step, and I don’t have such a directory (not having installed llvm-gcc). It isn’t totally
obvious if I should attempt to use a clang related directory in its place, or what that should be.

However, I don’t think the configure worked, because all attempts to issue any “make” or “gmake” in
the test-suite directory, with any targets or options whatsoever, results in an error message saying:

“Makefile.config:37: /home/kharris/Makefile.config: No such file or directory
make: *** No rule to make target `/home/kharris/Makefile.config’. Stop.”

The “make” appears to be expecting a “Makefile.config” file in my login directory. My hypothesis is that
this is the result of the missing “—with-llvmgccdir=” option.

The test-suite appears to have no useful documentation of its own – the “docs” and “website” directories
just have placeholder .html files.

I’ve tried to read the “configure” shell script, but it is fairly dense, fairly obscure shell code without any
helpful comments.
-Kevin

In response to:

Date: Wed, 23 Nov 2011 17:34:04 +0800
From: ??? <chenwj@iis.sinica.edu.tw>
Subject: Re: [LLVMdev] Follow-up questions after successful upgrade to
LLVM 3.0rc4
To: “Harris, Kevin” <Kevin.Harris@unisys.com>
Cc: “llvmdev@cs.uiuc.edu” <llvmdev@cs.uiuc.edu>
Message-ID: <20111123093404.GA37198@cs.nctu.edu.tw>
Content-Type: text/plain; charset=utf-8

  1. I had no problem running the V3.0 regression tests according to the instructions. . .

LLVM / CLANG Test Infrastructure Question
http://lists.cs.uiuc.edu/pipermail/llvmdev/2011-July/041954.html

HTH,
chenwj

Thanks, Wei-Ren! The thread referenced is similar to this one. There is a good suggestion for a very long
“make” command that looks like it ought to work, except that it succumbs to the same problem described
above – the error message about the missing Makefile.config file.

Moreover, if you read to the end of the thread, you discover that the ultimate solution was to go ahead
and install llvm-gcc after all.

My take-away from all this is that the test-suite has not actually been upgraded to work without llvm-gcc
yet. The existence of the test-suite in the release directory for rc4 seems to imply that it has
been modified to work with clang in the absence of llvm-gcc, but perhaps that is too strong an
assumption?

Has anyone successfully configured and run the test-suite from rc4 without installing llvm-gcc?

-Kevin

Hi Kevin,

Since I don’t have llvm-gcc installed, I tried to do the configure by doing a
“cd” to the test-suite directory
and just doing a “./configure”.

the configure should be done in the directory where you built LLVM.

It appeared to do something useful in spite of

the fact that the instructions
in the Testing Infrastructure Guide explicitly say that I need to pass the
option: “—with-llvmgccdir=???”

You don't need —with-llvmgccdir any more.

Ciao, Duncan.