From 87a9823d75e6d9ba9c25022331db193b89e64f53 Mon Sep 17 00:00:00 2001 From: MuldeR Date: Tue, 5 Dec 2023 00:00:05 +0100 Subject: [PATCH] Refactored version information. --- MediaInfoXP.rcx | 18 +++++++++---- MediaInfoXP.vcxproj | 2 ++ MediaInfoXP.vcxproj.filters | 6 +++++ src/Config.cpp | 50 +++++++++++++++++++++++++++++++++++++ src/Config.h | 34 ++++++++++++------------- src/Main.cpp | 2 -- src/Version.h | 27 ++++++++++++++++++++ 7 files changed, 114 insertions(+), 25 deletions(-) create mode 100644 src/Config.cpp create mode 100644 src/Version.h diff --git a/MediaInfoXP.rcx b/MediaInfoXP.rcx index 58484d7..2f6c894 100644 --- a/MediaInfoXP.rcx +++ b/MediaInfoXP.rcx @@ -1,7 +1,7 @@ // Microsoft Visual C++ generated resource script. // #include "WinResrc.h" //"afxres.h" - +#include "src/Version.h" ///////////////////////////////////////////////////////////////////////////// // @@ -9,6 +9,14 @@ // LANGUAGE LANG_NEUTRAL, SUBLANG_NEUTRAL +///////////////////////////////////////////////////////////////////////////// +// +// C macro preprocessor +// +#define VERSION_STRING_GLUE_HELPER_STAGE2(X) #X +#define VERSION_STRING_GLUE_HELPER(W,X,Y,Z) VERSION_STRING_GLUE_HELPER_STAGE2(W.X##Y.Z) +#define VERSION_STRING_GLUE(W,X,Y,Z) VERSION_STRING_GLUE_HELPER(W,X,Y,Z) +#define VERSION_STRING VERSION_STRING_GLUE(MIXP_VERSION_MAJOR,MIXP_VERSION_MINOR_HI,MIXP_VERSION_MINOR_LO,MIXP_VERSION_PATCH) ///////////////////////////////////////////////////////////////////////////// // @@ -23,8 +31,8 @@ IDI_ICON1 ICON "MediaInfoXP.ico" // VS_VERSION_INFO VERSIONINFO - FILEVERSION 2,3,6,1 - PRODUCTVERSION 2,3,6,1 + FILEVERSION MIXP_VERSION_MAJOR,MIXP_VERSION_MINOR_HI,MIXP_VERSION_MINOR_LO,MIXP_VERSION_PATCH + PRODUCTVERSION MIXP_VERSION_MAJOR,MIXP_VERSION_MINOR_HI,MIXP_VERSION_MINOR_LO,MIXP_VERSION_PATCH FILEFLAGSMASK 0x17L #ifdef _DEBUG FILEFLAGS 0x3L @@ -43,13 +51,13 @@ BEGIN VALUE "Comments", "This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY" VALUE "CompanyName", "Free Software Foundation" VALUE "FileDescription", "MediaInfoXP - GUI for MediaInfo" - VALUE "FileVersion", "2.36.1" + VALUE "FileVersion", VERSION_STRING VALUE "InternalName", "MediaInfoXP_Qt" VALUE "LegalCopyright", "Copyright (C) 2004-2023 LoRd_MuldeR " VALUE "LegalTrademarks", "This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License " VALUE "OriginalFilename", "MediaInfoXP.exe" VALUE "ProductName", "MediaInfoXP - GUI for MediaInfo" - VALUE "ProductVersion", "2.36.1" + VALUE "ProductVersion", VERSION_STRING VALUE "Website" "http://muldersoft.com/" END END diff --git a/MediaInfoXP.vcxproj b/MediaInfoXP.vcxproj index 7e2055a..86273bb 100644 --- a/MediaInfoXP.vcxproj +++ b/MediaInfoXP.vcxproj @@ -136,6 +136,7 @@ + @@ -159,6 +160,7 @@ + "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)\tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)" "$(QTDIR)\bin\moc.exe" -o "$(SolutionDir)\tmp\$(ProjectName)\MOC_%(Filename).cpp" "%(FullPath)" diff --git a/MediaInfoXP.vcxproj.filters b/MediaInfoXP.vcxproj.filters index 58955e2..ef312ee 100644 --- a/MediaInfoXP.vcxproj.filters +++ b/MediaInfoXP.vcxproj.filters @@ -59,6 +59,9 @@ Source Files\Generated + + Source Files + @@ -67,6 +70,9 @@ Header Files + + Header Files + diff --git a/src/Config.cpp b/src/Config.cpp new file mode 100644 index 0000000..4e0d91d --- /dev/null +++ b/src/Config.cpp @@ -0,0 +1,50 @@ +/////////////////////////////////////////////////////////////////////////////// +// MediaInfoXP +// Copyright (C) 2004-2023 LoRd_MuldeR +// +// 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 +// the Free Software Foundation; either version 2 of the License, or +// (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License along +// with this program; if not, write to the Free Software Foundation, Inc., +// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +// +// http://www.gnu.org/licenses/gpl-2.0.txt +/////////////////////////////////////////////////////////////////////////////// + +//Internal +#include "Config.h" +#include "Version.h" + +#define MIXP_CONF_DEFINE(X,Y,Z) extern const X g_##Y = Z; + +#define MIXP_VERSION_GLUE_HELPER(X,Y) X##Y +#define MIXP_VERSION_GLUE(X,Y) MIXP_VERSION_GLUE_HELPER(X,Y) +#define MIXP_VERSION_MINOR MIXP_VERSION_GLUE(MIXP_VERSION_MINOR_HI,MIXP_VERSION_MINOR_LO) + +//Version +MIXP_CONF_DEFINE(unsigned int, mixp_versionMajor, MIXP_VERSION_MAJOR) +MIXP_CONF_DEFINE(unsigned int, mixp_versionMinor, MIXP_VERSION_MINOR) +MIXP_CONF_DEFINE(unsigned int, mixp_versionPatch, MIXP_VERSION_PATCH) + +//MediaInfo Version +MIXP_CONF_DEFINE(unsigned int, mixp_mediaInfoVerMajor, 23) +MIXP_CONF_DEFINE(unsigned int, mixp_mediaInfoVerMinor, 11) +MIXP_CONF_DEFINE(unsigned int, mixp_mediaInfoVerPatch, 0) + +//MediaInfo Checksum +MIXP_CONF_DEFINE(char*, mixp_checksum_x86_i686, "ccfabcf0b55819a34d2ae33b4a3e578523c99314cc3a36909d5d145de3c3c6deb3e1d225bb2ed147566305fd194c1107b8588c6d5314f88efeb11c6ceefc987b") +MIXP_CONF_DEFINE(char*, mixp_checksum_x86_sse2, "a20c1ce741a3920dfafcb50009bc29bcb5850669d11e691a7aca244ef44def4f4563a4da4db3137c02467b204eeb72e89587591e78a95616a832e67c50d2cd11") +MIXP_CONF_DEFINE(char*, mixp_checksum_x64_sse2, "a2ec2e4268c8f5a95115149e552e06dd1ca7370ab8d252ed00b76b336698c97e454c32ecca62e0976b96306de435a074fa88cdfcd75bc9e97bf9c78ce99408f8") +MIXP_CONF_DEFINE(char*, mixp_checksum_x64_avx2, "e8dd8823fb95774cb240d21566d913017914ebacdb117931f5a41492e2530ae5622f1009eac4a0291400ef2e453c4d05e883f6dbef5461981be21246e815a3e5") + +//Build date +MIXP_CONF_DEFINE(char*, mixp_buildDate, __DATE__) +MIXP_CONF_DEFINE(char*, mixp_buildTime, __TIME__) diff --git a/src/Config.h b/src/Config.h index e6d9f74..4ab2717 100644 --- a/src/Config.h +++ b/src/Config.h @@ -19,31 +19,29 @@ // http://www.gnu.org/licenses/gpl-2.0.txt /////////////////////////////////////////////////////////////////////////////// -#ifdef MIXP_CREATE_CONFIG -#define MIXP_DEFINE_CONF(X,Y,Z) extern const X g_##Y = Z; -#else -#define MIXP_DEFINE_CONF(X,Y,Z) extern const X g_##Y; -#endif +#pragma once + +#define MIXP_CONF_DECLARE(X,Y) extern const X g_##Y; //Version -MIXP_DEFINE_CONF(unsigned int, mixp_versionMajor, 2) -MIXP_DEFINE_CONF(unsigned int, mixp_versionMinor, 45) -MIXP_DEFINE_CONF(unsigned int, mixp_versionPatch, 0) +MIXP_CONF_DECLARE(unsigned int, mixp_versionMajor) +MIXP_CONF_DECLARE(unsigned int, mixp_versionMinor) +MIXP_CONF_DECLARE(unsigned int, mixp_versionPatch) //MediaInfo Version -MIXP_DEFINE_CONF(unsigned int, mixp_mediaInfoVerMajor, 23) -MIXP_DEFINE_CONF(unsigned int, mixp_mediaInfoVerMinor, 03) -MIXP_DEFINE_CONF(unsigned int, mixp_mediaInfoVerPatch, 0) +MIXP_CONF_DECLARE(unsigned int, mixp_mediaInfoVerMajor) +MIXP_CONF_DECLARE(unsigned int, mixp_mediaInfoVerMinor) +MIXP_CONF_DECLARE(unsigned int, mixp_mediaInfoVerPatch) //MediaInfo Checksum -MIXP_DEFINE_CONF(char*, mixp_checksum_x86_i686, "c4d1cc08ea0a12a3a22bf1ebc0715681624a2313673b915f9b55a746b23e2d955fd2cea092debcfd5642a8d251365080ab5f79a1a0a166ffbd03fc07710a4edd") -MIXP_DEFINE_CONF(char*, mixp_checksum_x86_sse2, "889b289f900653c2e64e632b4054e6c2ed19e1d4969ea17925147294aa642675485083e15c8405dcaf6b03c9e11618b8e9a2335cdd49fbfc16460597a1c763e0") -MIXP_DEFINE_CONF(char*, mixp_checksum_x64_sse2, "9bc343ed15812122ab88a4ff123598f2fc4128c570f1e3ff9d05a8e9710ec2e6b41277522c1720a03e13aa556a249e12f8bba4e196b2cf9fe4a8bb4e93abe3fb") -MIXP_DEFINE_CONF(char*, mixp_checksum_x64_avx2, "6f4c2fc6f0017355365dc24aee486ea8e5c9f05cc0b742f4e88808c193b7090c1775aa42bd87bf2ea9507540867cdd606ad3f1f8bc1d55134604c9a7e25e118e") +MIXP_CONF_DECLARE(char*, mixp_checksum_x86_i686) +MIXP_CONF_DECLARE(char*, mixp_checksum_x86_sse2) +MIXP_CONF_DECLARE(char*, mixp_checksum_x64_sse2) +MIXP_CONF_DECLARE(char*, mixp_checksum_x64_avx2) //Build date -MIXP_DEFINE_CONF(char*, mixp_buildDate, __DATE__) -MIXP_DEFINE_CONF(char*, mixp_buildTime, __TIME__) +MIXP_CONF_DECLARE(char*, mixp_buildDate) +MIXP_CONF_DECLARE(char*, mixp_buildTime) //Show console #define MIXP_CONSOLE (0) @@ -56,4 +54,4 @@ MIXP_DEFINE_CONF(char*, mixp_buildTime, __TIME__) #endif //Undefine -#undef MIXP_DEFINE_CONF +#undef MIXP_CONF_DECLARE diff --git a/src/Main.cpp b/src/Main.cpp index 6be9106..228e4f8 100644 --- a/src/Main.cpp +++ b/src/Main.cpp @@ -19,8 +19,6 @@ // http://www.gnu.org/licenses/gpl-2.0.txt /////////////////////////////////////////////////////////////////////////////// -#define MIXP_CREATE_CONFIG 1 - //MUTils #include #include diff --git a/src/Version.h b/src/Version.h new file mode 100644 index 0000000..9065256 --- /dev/null +++ b/src/Version.h @@ -0,0 +1,27 @@ +/////////////////////////////////////////////////////////////////////////////// +// MediaInfoXP +// Copyright (C) 2004-2023 LoRd_MuldeR +// +// 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 +// the Free Software Foundation; either version 2 of the License, or +// (at your option) any later version. +// +// This program is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +// GNU General Public License for more details. +// +// You should have received a copy of the GNU General Public License along +// with this program; if not, write to the Free Software Foundation, Inc., +// 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. +// +// http://www.gnu.org/licenses/gpl-2.0.txt +/////////////////////////////////////////////////////////////////////////////// + +#pragma once + +#define MIXP_VERSION_MAJOR 2 +#define MIXP_VERSION_MINOR_HI 4 +#define MIXP_VERSION_MINOR_LO 6 +#define MIXP_VERSION_PATCH 0