libobs: Use static library for version string information
Switching to a static library that contains version information as const char strings has multiple benefits: * The version information provided externally via compiler definitions will fail compilation early if malformed * An updated version string (which will happen with every commit) will not invalidate existing compilation units, because only the static library is affected by the change * An update of the version change just requires a recompilation of the static library and a linker update * An update of the version will _not_ infect the rest of the codebase (as it does currently, because everything includes obsconfig.h one way or another) * Other modules which used the macro definition directly have been updated as much as possible to use the proper getter method from `libobs` instead (some Windows-specific modules use preprocessor string composition, the value has been added as a compiler definition directly in those cases) * Because the impact of a version change due to a commit hash change is limited to the static library, ccache hit rates should be improved considerably
This commit is contained in:
parent
4fb2bc38de
commit
2966c4030e
15 changed files with 43 additions and 11 deletions
|
|
@ -24,7 +24,7 @@ OBSAbout::OBSAbout(QWidget *parent) : QDialog(parent), ui(new Ui::OBSAbout)
|
|||
bitness = " (64 bit)";
|
||||
|
||||
#ifdef HAVE_OBSCONFIG_H
|
||||
ver += OBS_VERSION;
|
||||
ver += obs_get_version_string();
|
||||
#else
|
||||
ver += LIBOBS_API_MAJOR_VER + "." + LIBOBS_API_MINOR_VER + "." +
|
||||
LIBOBS_API_PATCH_VER;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue