anse1 / sqlsmith

A random SQL query generator
GNU General Public License v3.0
754 stars 128 forks source link

CMake build support #43

Closed tbe closed 2 years ago

tbe commented 2 years ago

CMake build system support.

This is still WIP. as MonetDB support is missing right now.

In difference to autotools, the CMake build path will fetch a defined version of libpqxx, and imports the library directly as target into the build process of SQLSmith.

UPDATE: I reworked the whole CMake code. Now code from remote is only fetched if -DUSE_UPSTREAM_LIBPQXX=ONis provided during the cmake configure phase.

MonetDB support is now also implemented and tested.

UPDATE: Windows builds work after some code changes. So, i would considere CMake Support complete.

df7cb commented 2 years ago

Please don't make the build process download things from the internet. That's a no-go on Debian.

tbe commented 2 years ago

@df7cb i don't intend to replace autoconf. This will still work as before. Also, there will be a flag to use the system version of libpqxx.

tbe commented 2 years ago

Basic CMake builds work on windows and linux. On windows, there are still some issues with the codebase (unistd.h) and it misses a CPack config, but it builds after some minor "hacks" (like set static hostname for logging, and define a static "pid")

df7cb commented 2 years ago

Merged as 3b9d5a0f4c8c257054, thanks!