Files
xahaud/Builds/CMake
Nik Bougalis 7e46f5342b Correct a technical flaw with the spinlock locking:
The existing spinlock code, used to protect SHAMapInnerNode
child lists, has a mistake that can allow the same child to
be repeatedly locked under some circumstances.

The bug was in the `SpinBitLock::lock` loop condition check
and would result in the loop terminating early.

This commit fixes this and further simplifies the lock loop
making the correctness of the code easier to verify without
sacrificing performance.

It also promotes the spinlock class from an implementation
detail to a more general purpose, easier to use lock class
with clearer semantics. Two different lock types now allow
developers to easily grab either a single spinlock from an
a group of spinlocks (packed in an unsigned integer) or to
grab all of the spinlocks at once.

While this commit makes spinlocks more widely available to
developers, they are rarely the best tool for the job. Use
them judiciously and only after careful consideration.
2022-07-17 22:17:34 -07:00
..
2022-04-06 13:28:10 -07:00
2019-08-16 10:33:08 -07:00
2020-02-12 10:19:23 -08:00
2019-05-20 15:58:54 -07:00
2020-02-12 10:19:23 -08:00
2021-09-13 15:13:15 -07:00

These are modules and sources that support our CMake build.

== FindBoost.cmake ==

In order to facilitate updating to latest releases of boost, we've made a local copy of the FindBoost cmake module in our repo. The latest official version can generally be obtained here.

The latest version provided by Kitware can be tailored for use with the version of CMake that it ships with (typically the next upcoming CMake release). As such, the latest version from the repository might not work perfectly with older versions of CMake - for instance, the latest version might use features or properties only available in the version of CMake that it ships with. Given this, it's best to test any updates to this module with a few different versions of cmake.