This PR includes several fixes and improvements, all aimed at making hobbits easier to build using just CMake (primarily for linux distribution packages).
Found a typo/mis-copy in cmake/PackExternalDeps.cmake. This didn't cause any issues but I fixed it anyways
Removed the EXACT option when searching for python. This makes it so CMake will look for any python version >=3.9, instead of just 3.9.x. This improves compatibility with distros and users that have already updated to python 3.10 (or, in the future, higher)
Added a way to specify the VERSION_STRING from the CMake command-line, i.e. with -DBUILD_VERSION=x.y.z. This makes it easier for distros to override the version of hobbits set in CMake, because the version doesn't need to be written to the .version file.
pffft was added as a submodule, to allow for easier building if it is not already on the system. CMake build files were also added to compile and link it statically, including an option for using an external version of PFFFT (-DUSE_SYSTEM_PFFFT=ON), an option to enable SIMD instruction support for pffft (-DPFFFT_USE_SIMD=ON), and the ability to set custom CFLAGS for it (-DPFFFT_CFLAGS="-msse -mfpmath=sse", for example)
This PR includes several fixes and improvements, all aimed at making hobbits easier to build using just CMake (primarily for linux distribution packages).
EXACT
option when searching for python. This makes it so CMake will look for any python version >=3.9, instead of just 3.9.x. This improves compatibility with distros and users that have already updated to python 3.10 (or, in the future, higher)VERSION_STRING
from the CMake command-line, i.e. with-DBUILD_VERSION=x.y.z
. This makes it easier for distros to override the version of hobbits set in CMake, because the version doesn't need to be written to the.version
file.-DUSE_SYSTEM_PFFFT=ON
), an option to enable SIMD instruction support for pffft (-DPFFFT_USE_SIMD=ON
), and the ability to set custom CFLAGS for it (-DPFFFT_CFLAGS="-msse -mfpmath=sse"
, for example)