Is ist a good idea to use lit and other test tools for non llvm projects?

Hi,

I have a project which uses llvm, but is (at least not yet) a
contribution / not in the source tree of llvm.
Is it a good idea (e.g. instead of using boost test framework) to use
the llvm testsuite related tools in this case?

Alex

alexp via llvm-dev <llvm-dev@lists.llvm.org> writes:

I have a project which uses llvm, but is (at least not yet) a
contribution / not in the source tree of llvm.
Is it a good idea (e.g. instead of using boost test framework) to use
the llvm testsuite related tools in this case?

That probably depends on the project, but I've long wished LLVM's
testing tools were available outside of LLVM, packaged up separately so
they could be more widely used. They're great tools!

                         -David

lit is, in fact, packaged separately--it is available on PyPI.
FileCheck isn't; there is a similar tool on PyPI, called OutputCheck,
which I have used extensively for similar jobs (matching compiler IR) but
I like it much less than FileCheck.

Yes, lit can be used either from a compiled llvm package or even be
installed (its in bin/llvm-lit).
I decided to give it a try.

Alex

It would be great if FileCheck could be decoupled from llvm and bundled with lit. Currently it causes friction for llvm-related projects that use lit for testing but don't actually require/depend on LLVM.

Did i miss something? FileCheck is in llvm-build-Dir/bin/FileCheck and
now sucessfully use FileCheck and llvm-lit for my regression tests.
llvm tools are great :slight_smile:

Alex

Ha. I'm actually the author of OutputCheck. I wrote it for the STP
constraint solver a few years ago and I made it because I wanted
something like `FileCheck` but without depending on LLVM. It's very
much a poor man's FileCheck. It only has a small subset of FileCheck's
functionality.

I had no idea people were actually using it.

I don't really work on the project anymore but I'm sure the STP
developers would be more than happy for some to work on it.

Thanks,
Dan.

After of few week of applying my regression test set-up, I wanted to
state that I use lit and FileCheck (which are both found in the
llvmBuild/bin dir).
Works like a charm, and I will use it in future, even for non llvm
related projects.

Alex