extern uint32_t
wimlib_get_version(void);
+/**
+ * @ingroup G_general
+ *
+ * Since wimlib v1.13.0: like wimlib_get_version(), but returns the full
+ * PACKAGE_VERSION string that was set at build time. (This allows a beta
+ * release to be distinguished from an official release.)
+ */
+extern const wimlib_tchar *
+wimlib_get_version_string(void);
+
/**
* @ingroup G_wim_information
*
*/
/*
- * Copyright (C) 2012-2017 Eric Biggers
+ * Copyright (C) 2012-2018 Eric Biggers
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
static void
version(void)
{
- uint32_t vers = wimlib_get_version();
-
static const tchar * const fmt =
T(
-"wimlib-imagex " PACKAGE_VERSION " (using wimlib %u.%u.%u)\n"
-"Copyright (C) 2012-2017 Eric Biggers\n"
+"wimlib-imagex " PACKAGE_VERSION " (using wimlib %"TS")\n"
+"Copyright (C) 2012-2018 Eric Biggers\n"
"License GPLv3+; GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.\n"
"This is free software: you are free to change and redistribute it.\n"
"There is NO WARRANTY, to the extent permitted by law.\n"
"\n"
"Report bugs to "PACKAGE_BUGREPORT".\n"
);
- tfprintf(stdout, fmt,
- vers >> 20, (vers >> 10) & 0x3ff, vers & 0x3ff);
+ tfprintf(stdout, fmt, wimlib_get_version_string());
}
-
static void
do_common_options(int *argc_p, tchar **argv, int cmd)
{
WIMLIB_PATCH_VERSION;
}
+WIMLIBAPI const tchar *
+wimlib_get_version_string(void)
+{
+ return T(PACKAGE_VERSION);
+}
+
static bool lib_initialized = false;
static pthread_mutex_t lib_initialization_mutex = PTHREAD_MUTEX_INITIALIZER;