Install Options

When installing Imath from source, take note of the following CMake options:

IMATH_CXX_STANDARD

C++ standard to compile against. Default is 14.

IMATH_HALF_USE_LOOKUP_TABLE

Use the half-to-float conversion lookup table. Default is ON for backwards compatibility. With the value of OFF, use a bit-shift conversion algorithm. Note that this setting is overriden when compiler flags enable the F16C SSE instruction set.

IMATH_USE_DEFAULT_VISIBILITY

Use default visibility, which makes all symbols visible in compiled objects. Default is OFF, in which case only designated necessary symbols are marked for export.

IMATH_USE_NOEXCEPT

Use the noexcept specifier of appropriate methods. Default is ON. With the value of OFF, the noexcept specifier is omitted, for situations in which it is not desireable.

IMATH_ENABLE_LARGE_STACK

Enables the halfFunction object to place the lookup tables on the stack rather than allocating heap memory. Default is OFF.

IMATH_VERSION_RELEASE_TYPE

A string to append to the version number in the internal package name macro IMATH_PACKAGE_STRING. Default is the empty string, but can be set to, for example, “-dev” during development (e.g. “3.1.0-dev”).

IMATH_INSTALL_SYM_LINK

Install an unversioned symbolic link (i.e. libImath.so) to the versioned library.

IMATH_INSTALL_PKG_CONFIG

Install Imath.pc file. Default is ON.

IMATH_NAMESPACE

Public namespace alias for Imath. Default is Imath.

IMATH_INTERNAL_NAMESPACE

Real namespace for Imath that will end up in compiled symbols. Default is Imath_<major>_<minor>.

IMATH_NAMESPACE_CUSTOM

Whether the namespace has been customized (so external users know). Default is NO.

IMATH_LIB_SUFFIX

String added to the end of all the versioned libraries. Default is -<major>_<minor>

IMATH_OUTPUT_SUBDIR

Destination sub-folder of the include path for install. Default is Imath.

To enable half-to-float conversion using the F16C SSE instruction set for g++ and clang when installing Imath, add the -mf16c compiler option:

% cmake <Imath source directory> -DCMAKE_CXX_FLAGS="-mf16c"

See half-float Conversion Configuration Options for more information about the half-float conversion process.