Give users more control regarding with which point types classes are … #6062
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
…instantiated
Previously, users could only choose between all types, some types ("core types" although it is not transparent which types these are), and no types (
PCL_NO_PRECOMPILE
).PCL_XYZ_POINT_TYPES
andPCL_NORMAL_POINT_TYPES
are now configurable via CMake (these only take effect ifPCL_ONLY_CORE_POINT_TYPES
andPCL_NO_PRECOMPILE
are OFF). This enables users on all platforms and compilers to reduce PCL compile times and library size. Additionally, for users of MSVC or MINGW,PCL_ONLY_CORE_POINT_TYPES
is now ON by default and not statically added to the definitions in CMakeLists.txt. I believe this is behaviour is more transparent, and these users now have the option to setPCL_ONLY_CORE_POINT_TYPES
to OFF and choose the instantiated types viaPCL_XYZ_POINT_TYPES
andPCL_NORMAL_POINT_TYPES
instead. However one of these two ways to reduce the set of instantiations must be used on Windows to avoid the linker errorfatal error LNK1189: library limit of 65535 objects exceeded
when trying to link the features library.Fixes #5928