drogon/drogon_ctl/version.cc

74 lines
2.2 KiB
C++
Raw Permalink Normal View History

2018-05-31 09:00:31 +00:00
/**
*
2018-12-07 07:50:18 +00:00
* version.cc
* An Tao
2018-05-31 09:00:31 +00:00
*
* Copyright 2018, An Tao. All rights reserved.
2018-12-07 07:50:18 +00:00
* https://github.com/an-tao/drogon
2018-05-31 09:00:31 +00:00
* Use of this source code is governed by a MIT license
* that can be found in the License file.
*
2018-11-16 05:26:14 +00:00
* Drogon
2018-05-31 09:00:31 +00:00
*
*/
2018-05-28 09:08:12 +00:00
#include "version.h"
#include <drogon/config.h>
#include <drogon/version.h>
#include <drogon/utils/Utilities.h>
#include <trantor/net/Resolver.h>
#include <trantor/utils/Utilities.h>
2018-05-28 09:08:12 +00:00
#include <iostream>
using namespace drogon_ctl;
2019-05-18 12:39:57 +00:00
static const char banner[] =
R"( _
__| |_ __ ___ __ _ ___ _ __
/ _` | '__/ _ \ / _` |/ _ \| '_ \
| (_| | | | (_) | (_| | (_) | | | |
\__,_|_| \___/ \__, |\___/|_| |_|
|___/
)";
2018-05-28 09:08:12 +00:00
void version::handleCommand(std::vector<std::string> &parameters)
2018-05-28 09:08:12 +00:00
{
const auto tlsBackend = trantor::utils::tlsBackend();
const bool tlsSupported = drogon::utils::supportsTls();
2018-10-14 07:56:54 +00:00
std::cout << banner << std::endl;
2019-06-05 01:28:39 +00:00
std::cout << "A utility for drogon" << std::endl;
2020-02-06 14:13:50 +00:00
std::cout << "Version: " << DROGON_VERSION << std::endl;
std::cout << "Git commit: " << DROGON_VERSION_SHA1 << std::endl;
std::cout << "Compilation: \n Compiler: " << COMPILER_COMMAND
<< "\n Compiler ID: " << COMPILER_ID
<< "\n Compilation flags: " << COMPILATION_FLAGS
<< INCLUDING_DIRS << std::endl;
std::cout << "Libraries: \n postgresql: "
<< (USE_POSTGRESQL ? "yes" : "no") << " (pipeline mode: "
<< (LIBPQ_SUPPORTS_BATCH_MODE ? "yes)\n" : "no)\n")
<< " mariadb: " << (USE_MYSQL ? "yes\n" : "no\n")
<< " sqlite3: " << (USE_SQLITE3 ? "yes\n" : "no\n");
std::cout << " ssl/tls backend: " << tlsBackend << "\n";
#ifdef USE_BROTLI
std::cout << " brotli: yes\n";
#else
std::cout << " brotli: no\n";
#endif
#ifdef Boost_FOUND
std::cout << " boost: yes\n";
#else
std::cout << " boost: no\n";
2021-03-13 11:13:54 +00:00
#endif
#ifdef USE_REDIS
std::cout << " hiredis: yes\n";
#else
std::cout << " hiredis: no\n";
#endif
std::cout << " c-ares: "
<< (trantor::Resolver::isCAresUsed() ? "yes\n" : "no\n");
#ifdef HAS_YAML_CPP
std::cout << " yaml-cpp: yes\n";
#else
std::cout << " yaml-cpp: no\n";
#endif
2018-11-16 05:26:14 +00:00
}