Implement version info

This commit is contained in:
Marko Zivanovic
2015-09-07 16:29:12 +02:00
parent 8fe990e64d
commit 3273cae4a7
3 changed files with 37 additions and 1 deletions
+8
View File
@@ -10,3 +10,11 @@ add_test(NAME SyslogMessageTests COMMAND SyslogMessageTests)
add_test(NAME RFC3164FormattedSyslogMessageTests COMMAND RFC3164FormattedSyslogMessageTests)
add_test(NAME FrequencyLimitTests COMMAND FrequencyLimitTests)
set(VER_NAME "Syslog Bulk Uploader")
set(VER_MAJOR 1)
set(VER_MINOR 0)
set(VER_PATCH 0)
set(VER_PRERELEASE "alpha.1")
set(VER_BUILD "")
configure_file("src/config.h.in" "src/config.h")
+2
View File
@@ -1,6 +1,8 @@
find_package(Boost COMPONENTS date_time filesystem system thread program_options REQUIRED)
find_package(Threads)
include_directories(
${PROJECT_BINARY_DIR}
${Boost_INLUDE_DIRS}
)
+27 -1
View File
@@ -23,8 +23,10 @@ SOFTWARE.
*/
#include <iostream>
#include <string>
#include <boost/program_options.hpp>
#include "src/config.h"
#include "SyslogBulkUploader.h"
#include "FileReader.h"
#include "UDPWriter.h"
@@ -37,6 +39,30 @@ string dest;
uint16_t port;
vector<string> files;
string version() {
stringstream ss;
ss << VER_NAME << " version " << VER_MAJOR << ".";
#ifdef VER_MINOR
ss << VER_MINOR;
#else
ss << "0";
#endif
ss << ".";
#ifdef VER_PATCH
ss << VER_PATCH;
#else
ss << "0";
#endif
#ifdef VER_PRERELEASE
ss << "-" << VER_PRERELEASE;
#endif
#ifdef VER_BUILD
ss << "+" << VER_BUILD;
#endif
return ss.str();
}
int main(int argc, char** argv) {
po::options_description desc("Supported options");
desc.add_options()
@@ -65,7 +91,7 @@ int main(int argc, char** argv) {
}
if (vars.count("version")) {
cout << "VERSION" << std::endl;
cout << version() << std::endl;
return 0;
}