KiCad PCB EDA Suite
Loading...
Searching...
No Matches
build_version.cpp File Reference
#include <wx/wx.h>
#include <config.h>
#include <boost/version.hpp>
#include <kiplatform/app.h>
#include <font/version_info.h>
#include <build_version.h>
#include <tuple>
#include <Standard_Version.hxx>
#include <ngspice/sharedspice.h>
#include <kicad_build_version.h>

Go to the source code of this file.

Macros

#define INCLUDE_KICAD_VERSION
 
#define ON   "ON" << eol
 
#define OFF   "OFF" << eol
 

Functions

std::string GetKicadCurlVersion ()
 
std::string GetCurlLibVersion ()
 
void SetOpenGLInfo (const char *aVendor, const char *aRenderer, const char *aVersion)
 A setter for OpenGL info when it's initialized.
 
wxString GetPlatformGetBitnessName ()
 
bool IsNightlyVersion ()
 Check if the build is meant to be nightly.
 
wxString GetBuildVersion ()
 Get the full KiCad version string.
 
wxString GetBaseVersion ()
 Get the KiCad version string without the information added by the packagers.
 
wxString GetBuildDate ()
 Get the build date as a string.
 
wxString GetSemanticVersion ()
 Get the semantic version string for KiCad defined inside the KiCadVersion.cmake file in the variable KICAD_SEMANTIC_VERSION.
 
wxString GetMajorMinorVersion ()
 Get only the major and minor version in a string major.minor.
 
wxString GetCommitHash ()
 Get the commit hash as a string.
 
wxString GetMajorMinorPatchVersion ()
 Get the major, minor and patch version in a string major.minor.patch This is extracted by CMake from the KICAD_SEMANTIC_VERSION variable.
 
const std::tuple< int, int, int > & GetMajorMinorPatchTuple ()
 Get the build version numbers as a tuple.
 
wxString GetVersionInfoData (const wxString &aTitle, bool aHtml, bool aBrief)
 Create a version info string for bug reports and the about dialog.
 

Variables

static wxString s_glVendor
 
static wxString s_glRenderer
 
static wxString s_glVersion
 

Macro Definition Documentation

◆ INCLUDE_KICAD_VERSION

#define INCLUDE_KICAD_VERSION

Definition at line 50 of file build_version.cpp.

◆ OFF

#define OFF   "OFF" << eol

◆ ON

#define ON   "ON" << eol

Function Documentation

◆ GetBaseVersion()

wxString GetBaseVersion ( )

Get the KiCad version string without the information added by the packagers.

It is created by CMake in the KICAD_VERSION variable.

Returns
the base version string

Definition at line 87 of file build_version.cpp.

Referenced by DS_DRAW_ITEM_LIST::BuildFullText().

◆ GetBuildDate()

wxString GetBuildDate ( )

Get the build date as a string.

Returns
the build date string

Definition at line 94 of file build_version.cpp.

Referenced by buildKicadAboutBanner(), GetVersionInfoData(), and KICAD_CURL_EASY::KICAD_CURL_EASY().

◆ GetBuildVersion()

◆ GetCommitHash()

wxString GetCommitHash ( )

Get the commit hash as a string.

Returns
the commit hash string

Definition at line 115 of file build_version.cpp.

Referenced by CLI::VERSION_COMMAND::doPerform().

◆ GetCurlLibVersion()

std::string GetCurlLibVersion ( )

Definition at line 77 of file kicad_curl.cpp.

Referenced by GetVersionInfoData().

◆ GetKicadCurlVersion()

std::string GetKicadCurlVersion ( )

Definition at line 71 of file kicad_curl.cpp.

References KICAD_CURL::GetVersion().

Referenced by GetVersionInfoData().

◆ GetMajorMinorPatchTuple()

const std::tuple< int, int, int > & GetMajorMinorPatchTuple ( )

Get the build version numbers as a tuple.

Returns
A tuple with three ints for major/minor/patch revisions

Definition at line 128 of file build_version.cpp.

Referenced by ENV_VAR::GetVersionedEnvVarName(), and API_HANDLER_COMMON::handleGetVersion().

◆ GetMajorMinorPatchVersion()

wxString GetMajorMinorPatchVersion ( )

Get the major, minor and patch version in a string major.minor.patch This is extracted by CMake from the KICAD_SEMANTIC_VERSION variable.

Returns
the major.minor.patch version as a string

Definition at line 122 of file build_version.cpp.

Referenced by DIALOG_UPDATE_NOTICE::DIALOG_UPDATE_NOTICE(), CLI::VERSION_COMMAND::doPerform(), PCB_IO_IPC2581::generateHistorySection(), ODB_MISC_ENTITY::ODB_MISC_ENTITY(), ERC_REPORT::WriteJsonReport(), and DRC_REPORT::WriteJsonReport().

◆ GetMajorMinorVersion()

◆ GetPlatformGetBitnessName()

wxString GetPlatformGetBitnessName ( )
Returns
the bitness name string (like "Little endian")

Definition at line 67 of file build_version.cpp.

Referenced by buildKicadAboutBanner(), GetVersionInfoData(), and KICAD_CURL_EASY::KICAD_CURL_EASY().

◆ GetSemanticVersion()

wxString GetSemanticVersion ( )

Get the semantic version string for KiCad defined inside the KiCadVersion.cmake file in the variable KICAD_SEMANTIC_VERSION.

Returns
the semantic version string

Definition at line 101 of file build_version.cpp.

Referenced by UPDATE_MANAGER::CheckForUpdate(), STEP_PCB_MODEL::WriteGLTF(), and STEP_PCB_MODEL::WritePLY().

◆ GetVersionInfoData()

wxString GetVersionInfoData ( const wxString &  aTitle,
bool  aHtml = false,
bool  aBrief = false 
)

Create a version info string for bug reports and the about dialog.

Parameters
aTitleis the application title to include at the top of the report
aBrief= true to condense information for the bug report URL
aHtml= true to use a minimal HTML format, false for plan text
Returns
the version info string

Definition at line 136 of file build_version.cpp.

References KIFONT::VERSION_INFO::FontConfig(), KIFONT::VERSION_INFO::FreeType(), GetBuildDate(), GetBuildVersion(), GetCurlLibVersion(), GetKicadCurlVersion(), GetPlatformGetBitnessName(), KIFONT::VERSION_INFO::HarfBuzz(), KIPLATFORM::APP::IsOperatingSystemUnsupported(), OFF, ON, s_glRenderer, s_glVendor, and s_glVersion.

Referenced by DIALOG_ABOUT::createNotebooks(), CLI::VERSION_COMMAND::doPerform(), DIALOG_ABOUT::onCopyVersionInfo(), and COMMON_CONTROL::ReportBug().

◆ IsNightlyVersion()

bool IsNightlyVersion ( )

Check if the build is meant to be nightly.

Returns
true if running nightly build

Definition at line 74 of file build_version.cpp.

Referenced by DIALOG_ABOUT::DIALOG_ABOUT(), and KICAD_MANAGER_FRAME::KICAD_MANAGER_FRAME().

◆ SetOpenGLInfo()

void SetOpenGLInfo ( const char *  aVendor,
const char *  aRenderer,
const char *  aVersion 
)

A setter for OpenGL info when it's initialized.

Definition at line 59 of file build_version.cpp.

References s_glRenderer, s_glVendor, and s_glVersion.

Referenced by KIGFX::OPENGL_GAL::init(), EDA_3D_CANVAS::initializeOpenGL(), and EDA_3D_MODEL_VIEWER::ogl_initialize().

Variable Documentation

◆ s_glRenderer

wxString s_glRenderer
static

Definition at line 56 of file build_version.cpp.

Referenced by GetVersionInfoData(), and SetOpenGLInfo().

◆ s_glVendor

wxString s_glVendor
static

Definition at line 55 of file build_version.cpp.

Referenced by GetVersionInfoData(), and SetOpenGLInfo().

◆ s_glVersion

wxString s_glVersion
static

Definition at line 57 of file build_version.cpp.

Referenced by GetVersionInfoData(), and SetOpenGLInfo().