carl  24.04
Computer ARithmetic Library
CompileInfo.h
Go to the documentation of this file.
1 /**
2  * @file CompileInfo.h
3  * @author Gereon Kremer <gereon.kremer@cs.rwth-aachen.de>
4  */
5 
6 #pragma once
7 
8 #include <iostream>
9 #include <string>
10 
11 namespace carl {
12  /**
13  * Compile time generated structure holding information about compiler and system version.
14  */
15  struct CompileInfo {
16  static const std::string SystemName;
17  static const std::string SystemVersion;
18  static const std::string BuildType;
19  static const std::string CXXCompiler;
20  static const std::string CXXCompilerVersion;
21  static const std::string GitRevisionSHA1;
22  };
23 
25  bool advanced;
26  };
27  constexpr CMakeOptionPrinter CMakeOptions(bool advanced = false) noexcept {
28  return { advanced };
29  }
30  std::ostream& operator<<(std::ostream& os, CMakeOptionPrinter cmop);
31 }
carl is the main namespace for the library.
std::ostream & operator<<(std::ostream &os, const BasicConstraint< Poly > &c)
Prints the given constraint on the given stream.
constexpr CMakeOptionPrinter CMakeOptions(bool advanced=false) noexcept
Definition: CompileInfo.h:27
Compile time generated structure holding information about compiler and system version.
Definition: CompileInfo.h:15
static const std::string GitRevisionSHA1
Definition: CompileInfo.h:21
static const std::string CXXCompiler
Definition: CompileInfo.h:19
static const std::string SystemVersion
Definition: CompileInfo.h:17
static const std::string BuildType
Definition: CompileInfo.h:18
static const std::string CXXCompilerVersion
Definition: CompileInfo.h:20
static const std::string SystemName
Definition: CompileInfo.h:16