No Cycles In LLVM Library Dependencies

All,

Thanks to Chris' recent changes, PR845 is now resolved and there are
currently no cycles in LLVM's library dependencies. This means you can
link all LLVM software visiting each archive only once. To get the
correct order for linking LLVM libraries, use the command:

llvm-config --libs

From here on out, cycles in the library dependencies are not allowed. If

you create one, your build will fail when building llvm-config. The
"find-cycles.pl" script will fail and cause make to stop. If this
happens to you, inspect the changes you just made (especially cross
module calls). You will need to eliminate the cycle before committing
your change.

Thanks for your cooperation.

Reid.

P.S.

This should also fix the various llvm-config issues we've had on mingw,
cygwin and other platforms. The "Can't find a library with no
dependencies" error message was caused by cyclic dependencies. Without
them, that error doesn't occur (I validated this on Linux).

Reid.