Function build

Source
pub fn build(
    project_name: &str,
    major_version: u32,
    minor_version: u32,
    dependencies: &[Dependency],
)
Expand description

Build a standard-formatted cppmm c wrapper project and its dependencies.

If the environment variable CMAKE_PREFIX_PATH is set, any dependencies will be assumed to be present on the system, available in CMAKE_PREFIX_PATH. If CMAKE_PREFIX_PATH is not set, the list of dependencies will be built from the thirdparty directory.

project_name controls the name of the generated C library, as well as the names of environment variables the user can set to control the build. For example, setting project_name to openexr will cause the script to respond to:

  • CPPMM_OPENEXR_BUILD_LIBRARIES - Ignore CMAKE_PREFIX_PATH and force
    building the dependencies if this is set to “1”.
  • CPPMM_OPENEXR_BUILD_TYPE - Set the build profile used for the C library and all dependencies. This defaults to “Release” so you can use this to set it to “Debug”, for example.

major_version and minor_version are the crate version numbers and are baked into the C library filename.