gcem/1.17.0

A C++ compile-time math library using generalized constant expressions.
Recipe info
2023-09-21

Available packages
Header Only

Install
Add the following line to your conanfile.txt:
[requires]
gcem/1.17.0

Using gcem

Note

If you are new with Conan, we recommend to read the section how to consume packages.

If you need additional assistance, please ask a question in the Conan Center Index repository.

Simplest use case consuming this recipe and assuming CMake as your local build tool:

[requires]
gcem/1.17.0
[generators]
CMakeDeps
CMakeToolchain
[layout]
cmake_layout
from conan import ConanFile
from conan.tools.cmake import cmake_layout


class ExampleRecipe(ConanFile):
    settings = "os", "compiler", "build_type", "arch"
    generators = "CMakeDeps", "CMakeToolchain"

    def requirements(self):
        self.requires("gcem/1.17.0")

    def layout(self):
        cmake_layout(self)

Now, you can run this Conan command to locally install (and build if necessary) this recipe and its dependencies (if any):

$ conan install conanfile.txt --build=missing

Useful information to take into account to consume this library:


These are the main declared targets:

  • CMake package name(s): gcem
  • CMake target name(s): gcem
  • pkg-config file name(s): gcem.pc

A simple use case using the CMake file name and the global target:

# ...
find_package(gcem REQUIRED)
# ...
target_link_libraries(YOUR_TARGET gcem)

These are all the available headers. Some of these ones might be non-public; make sure of it by visiting the gcem homepage listed above:

#include "gcem.hpp"
#include "gcem_incl/abs.hpp"
#include "gcem_incl/acos.hpp"
#include "gcem_incl/acosh.hpp"
#include "gcem_incl/asin.hpp"
#include "gcem_incl/asinh.hpp"
#include "gcem_incl/atan.hpp"
#include "gcem_incl/atan2.hpp"
#include "gcem_incl/atanh.hpp"
#include "gcem_incl/beta.hpp"
#include "gcem_incl/binomial_coef.hpp"
#include "gcem_incl/ceil.hpp"
#include "gcem_incl/copysign.hpp"
#include "gcem_incl/cos.hpp"
#include "gcem_incl/cosh.hpp"
#include "gcem_incl/erf.hpp"
#include "gcem_incl/erf_inv.hpp"
#include "gcem_incl/exp.hpp"
#include "gcem_incl/expm1.hpp"
#include "gcem_incl/factorial.hpp"
#include "gcem_incl/find_exponent.hpp"
#include "gcem_incl/find_fraction.hpp"
#include "gcem_incl/find_whole.hpp"
#include "gcem_incl/floor.hpp"
#include "gcem_incl/fmod.hpp"
#include "gcem_incl/gcd.hpp"
#include "gcem_incl/gcem_options.hpp"
#include "gcem_incl/hypot.hpp"
#include "gcem_incl/incomplete_beta.hpp"
#include "gcem_incl/incomplete_beta_inv.hpp"
#include "gcem_incl/incomplete_gamma.hpp"
#include "gcem_incl/incomplete_gamma_inv.hpp"
#include "gcem_incl/inv_sqrt.hpp"
#include "gcem_incl/is_even.hpp"
#include "gcem_incl/is_finite.hpp"
#include "gcem_incl/is_inf.hpp"
#include "gcem_incl/is_nan.hpp"
#include "gcem_incl/is_odd.hpp"
#include "gcem_incl/lbeta.hpp"
#include "gcem_incl/lcm.hpp"
#include "gcem_incl/lgamma.hpp"
#include "gcem_incl/lmgamma.hpp"
#include "gcem_incl/log.hpp"
#include "gcem_incl/log10.hpp"
#include "gcem_incl/log1p.hpp"
#include "gcem_incl/log2.hpp"
#include "gcem_incl/log_binomial_coef.hpp"
#include "gcem_incl/mantissa.hpp"
#include "gcem_incl/max.hpp"
#include "gcem_incl/min.hpp"
#include "gcem_incl/neg_zero.hpp"
#include "gcem_incl/pow.hpp"
#include "gcem_incl/pow_integral.hpp"
#include "gcem_incl/quadrature/gauss_legendre_30.hpp"
#include "gcem_incl/quadrature/gauss_legendre_50.hpp"
#include "gcem_incl/round.hpp"
#include "gcem_incl/sgn.hpp"
#include "gcem_incl/signbit.hpp"
#include "gcem_incl/sin.hpp"
#include "gcem_incl/sinh.hpp"
#include "gcem_incl/sqrt.hpp"
#include "gcem_incl/tan.hpp"
#include "gcem_incl/tanh.hpp"
#include "gcem_incl/tgamma.hpp"
#include "gcem_incl/trunc.hpp"