Table Of Contents

Previous topic

Speect CMake API

Next topic

CMake Macros and Functions

CMake Configuration Options

Several configuration options are available to customize the Speect build system. These options can be configured through an interactive CMake interface as described in Building and Installing Speect, or through the command line.

Summary

CMAKE_BUILD_TYPE The build type influences the C optimization and debug compilation flags.
CMAKE_INSTALL_PREFIX The installation path for the make install command.
ERROR_ABORT_FATAL Call the ISO C function abort() or gracefully exit with error log.
ERROR_HANDLING Use Speect error handling mechanism.
LIB_SUFFIX Suffix for library directories, e.g. “64”.
SAFE_CAST If ON then all Speect object casting will be checked.
STRICT_WARN Enable stricter compile flags.
WANT_EXAMPLES Include examples in build process.
WANT_PYTHON_3 Build Python wrappers for Python version 3.x.
WANT_PYTHON_WRAPPER Include Python wrappers in build process.
WANT_TESTS Include tests in build process.
WANT_THREADS Enable multi threaded support.
WARN_DECL_AFTER_STMT Warn about declarations after statements (GCC).

Option Descriptions

CMAKE_BUILD_TYPE

The build type influences the C optimization and debug compilation flags. Possible values are empty, Debug, Release, RelWithDebInfo, MinSizeRel and Profile. This variable is only supported for make based generators. If this variable is supported, then CMake will also provide initial values for the variables with the name CMAKE_C_FLAGS_[Debug|Release|RelWithDebInfo|MinSizeRel|Profile]. For example, if CMAKE_BUILD_TYPE is Debug, then CMAKE_C_FLAGS_DEBUG will be added to the CMAKE_C_FLAGS.

Options :None, Debug, Release, RelWithDebInfo, MinSizeRel, Profile
Default :Debug
Note :Debug will define the SPCT_DEBUGMODE pre-processor symbol.
CMAKE_INSTALL_PREFIX

The installation path for the make install command. If make install is invoked or the INSTALL target is built, then this directory is pre-pended onto all install directories. This variable defaults to /usr/local on UNIX and C:/Program Files on Windows.

Default :/usr/local
ERROR_ABORT_FATAL

Call the ISO C function abort() or gracefully exit with error log. If this option is on then S_FTL_ERR will call abort(), otherwise Speect will try to gracefully exit with an error log.

Options :ON or OFF
Default :OFF
ERROR_HANDLING

This option specifies if the Speect error handling mechanism is used. If off then no error checking or logging will occur.

Options :ON or OFF
Default :ON
LIB_SUFFIX

Suffix for library directories, e.g. “64”

SAFE_CAST

Specifies whether the macros S_CAST and S_ITERATOR_GET will do cast checking on the given objects.

Options :ON or OFF
Default :ON
STRICT_WARN

Enable stricter compiler flags on warnings, turning them into errors.

Options :ON or OFF
Default :OFF
WANT_EXAMPLES

Include examples in build process.

Options :ON or OFF
Default :OFF
WANT_TESTS

Include tests in build process.

Options :ON or OFF
Default :OFF
WANT_THREADS

Enable multi-threaded support.

Options :ON or OFF
Default :OFF
WARN_DECL_AFTER_STMT

Warn about declarations after statements, only available for GCC.

Options :ON or OFF
Default :OFF
WANT_PYTHON_WRAPPER

Include Python bindings in build process.

Options :ON or OFF
Default :ON
WANT_PYTHON_3

Build Python wrappers for Python version 3.x

Options :ON or OFF
Default :OFF
Note :Not compatible with Python version 2.x, as code is linked with Python 3.x libraries.

Extra Options

Some plug-ins only get compiled if the required external files and libraries are available. The options include:

HTS Engine

The HTS Engine compile time options for HTS Engine plug-ins are in the form HTS_ENGINE_INCLUDE_* and HTS_ENGINE_LIB_*, where * denotes the HTS Engine version. These options are added as plug-ins for new HTS Engine versions are added, and versions 1.03, 1.04 and 1.05 are currently supported. For example:

HTS_ENGINE_INCLUDE_103

Path to HTS Engine version 1.03 include directory.

HTS_ENGINE_LIB_103

Full path and name to the HTS Engine version 1.03 library.