Comment

Comment by jordigh

> I'm not sure what you mean by databases of systems and features...

I didn't really mean a literal database. I meant stuff like this:

https://github.com/Kitware/CMake/blob/master/Modules/FindQt4...

This is pretty typical CMake. It's encoding that for a particular version of Qt, add a few more compilation flags. It's a "knowledge base" of Qt versions encoded as a CMake module.

The autoconf way would be to try to link a minimal program to Qt, and if it fails, try to see if adding more libraries makes the linking succeed.

Or this, for example:

https://github.com/Kitware/CMake/blob/master/Modules/FindOpe...

It is trying to account for two popular compilers on Windows but not with Cygwin. It's the whole chain of "if Windows, if cygwin, if mingw, if msvc" what I called a "database" above.

Doesn't clang work on Windows these days? What will this knowledge base do now? Shouldn't clang work almost like mingw? But because it misses the "if mingw" branch, code that probably would have worked for clang will be skipped over.

parent jordigh 11 years ago

Discussion

Live from the official Hacker News API

A modern reader for Hacker News · SvelteKit + Skeleton