diff --git a/3rdParty/boost/CMakeLists.txt b/3rdParty/boost/CMakeLists.txt index a15b73ef5f..638f652215 100644 --- a/3rdParty/boost/CMakeLists.txt +++ b/3rdParty/boost/CMakeLists.txt @@ -25,7 +25,7 @@ endif () if (Boost_UNIT_TEST_FRAMEWORK_FOUND) try_compile( - HAVE_USABLE_BOOT_LIBRARIES + HAVE_USABLE_BOOST_LIBRARIES "${CMAKE_BINARY_DIR}/temp" "${CMAKE_SOURCE_DIR}/cmake/test_boost.cpp" LINK_LIBRARIES @@ -34,7 +34,7 @@ if (Boost_UNIT_TEST_FRAMEWORK_FOUND) "-DINCLUDE_DIRECTORIES=${Boost_INCLUDE_DIR}" ) - if (HAVE_USABLE_BOOT_LIBRARIES) + if (HAVE_USABLE_BOOST_LIBRARIES) option(USE_BOOST_UNITTESTS "use boost unit-tests" ON) else () message(STATUS "cannot use BOOST library ${Boost_UNIT_TEST_FRAMEWORK_LIBRARY}") diff --git a/3rdParty/zlib/zlib-1.2.8/CMakeLists.txt b/3rdParty/zlib/zlib-1.2.8/CMakeLists.txt index 58bfb78d84..0c2c1efd6d 100644 --- a/3rdParty/zlib/zlib-1.2.8/CMakeLists.txt +++ b/3rdParty/zlib/zlib-1.2.8/CMakeLists.txt @@ -241,23 +241,23 @@ endif() include_directories(${PROJECT_SOURCE_DIR} ${PROJECT_BINARY_DIR}) -add_executable(example EXCLUDE_FROM_ALL test/example.c) -target_link_libraries(example zlib) -add_test(example example) +# add_executable(example EXCLUDE_FROM_ALL test/example.c) +# target_link_libraries(example zlib) +# add_test(example example) -add_executable(minigzip EXCLUDE_FROM_ALL test/minigzip.c) -target_link_libraries(minigzip zlib) +# add_executable(minigzip EXCLUDE_FROM_ALL test/minigzip.c) +# target_link_libraries(minigzip zlib) -if(HAVE_OFF64_T) - add_executable(example64 test/example.c) - target_link_libraries(example64 zlib) - set_target_properties(example64 PROPERTIES COMPILE_FLAGS "-D_FILE_OFFSET_BITS=64") - add_test(example64 example64) +# if(HAVE_OFF64_T) +# add_executable(example64 test/example.c) +# target_link_libraries(example64 zlib) +# set_target_properties(example64 PROPERTIES COMPILE_FLAGS "-D_FILE_OFFSET_BITS=64") +# add_test(example64 example64) - add_executable(minigzip64 test/minigzip.c) - target_link_libraries(minigzip64 zlib) - set_target_properties(minigzip64 PROPERTIES COMPILE_FLAGS "-D_FILE_OFFSET_BITS=64") -endif() +# add_executable(minigzip64 test/minigzip.c) +# target_link_libraries(minigzip64 zlib) +# set_target_properties(minigzip64 PROPERTIES COMPILE_FLAGS "-D_FILE_OFFSET_BITS=64") +# endif() set(ZLIB_VERSION ${zlib_VERSION} diff --git a/CMakeLists.txt b/CMakeLists.txt index e82f81312d..46b18c6abc 100755 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -38,9 +38,6 @@ set(ARANGODB_VERSION_REVISION "0-devel") set(ARANGODB_VERSION "${ARANGODB_VERSION_MAJOR}.${ARANGODB_VERSION_MINOR}.${ARANGODB_VERSION_REVISION}") -string(TIMESTAMP ARANGODB_BUILD_DATE "%Y-%m-%d %H:%M:%S") -add_definitions("-DARANGODB_BUILD_DATE=\"${ARANGODB_BUILD_DATE}\"") - # for NSIS set(ARANGODB_DISPLAY_NAME "ArangoDB") set(ARANGODB_URL_INFO_ABOUT "https://www.arangodb.com") @@ -74,12 +71,20 @@ set(TEST_GEO_SUITE geo_suite) ## VERSION FILES ################################################################################ +string(TIMESTAMP ARANGODB_BUILD_DATE "%Y-%m-%d %H:%M:%S") + configure_file ( "${CMAKE_CURRENT_SOURCE_DIR}/lib/Basics/build.h.in" "${CMAKE_CURRENT_BINARY_DIR}/lib/Basics/build.h" NEWLINE_STYLE UNIX ) +configure_file ( + "${CMAKE_CURRENT_SOURCE_DIR}/lib/Basics/build-date.h.in" + "${CMAKE_CURRENT_BINARY_DIR}/lib/Basics/build-date.h" + NEWLINE_STYLE UNIX +) + configure_file( "${CMAKE_CURRENT_SOURCE_DIR}/lib/Basics/VERSION.in" "${CMAKE_CURRENT_SOURCE_DIR}/VERSION" @@ -175,15 +180,15 @@ elseif (CMAKE_CXX_COMPILER_ID MATCHES "MSVC") endif () if (WINDOWS) - set(BASE_FLAGS "/D WIN32 /D _WINDOWS /W3") - set(BASE_C_FLAGS) - set(BASE_CXX_FLAGS "/GR /EHsc") + set(BASE_FLAGS "/D WIN32 /D _WINDOWS /W3" CACHE STRING "base flags") + set(BASE_C_FLAGS "" CACHE STRING "base C flags") + set(BASE_CXX_FLAGS "/GR /EHsc" CACHE STRING "base C++flags") else () - set(BASE_FLAGS) - set(BASE_C_FLAGS ${CMAKE_C_FLAGS}) - set(BASE_CXX_FLAGS ${CMAKE_CXX_FLAGS}) - set(BASE_LD_FLAGS $ENV{LDFLAGS}) - set(BASE_LIBS $ENV{LIBS}) + set(BASE_FLAGS "" CACHE STRING "base flags") + set(BASE_C_FLAGS "${CMAKE_C_FLAGS}" CACHE STRING "base C flags") + set(BASE_CXX_FLAGS "${CMAKE_CXX_FLAGS}" CACHE STRING "base C++ flags") + set(BASE_LD_FLAGS "$ENV{LDFLAGS}" CACHE STRING "base linker flags") + set(BASE_LIBS "$ENV{LIBS}" CACHE STRING "base libraries") endif () if (SOLARIS) diff --git a/arangod/RestHandler/RestReplicationHandler.cpp b/arangod/RestHandler/RestReplicationHandler.cpp index e7b33fc3a1..428754e08e 100644 --- a/arangod/RestHandler/RestReplicationHandler.cpp +++ b/arangod/RestHandler/RestReplicationHandler.cpp @@ -22,19 +22,20 @@ //////////////////////////////////////////////////////////////////////////////// #include "RestReplicationHandler.h" -#include "Basics/files.h" -#include "Basics/json.h" #include "Basics/Logger.h" #include "Basics/ReadLocker.h" #include "Basics/VelocyPackHelper.h" -#include "Cluster/ClusterMethods.h" +#include "Basics/conversions.h" +#include "Basics/files.h" #include "Cluster/ClusterComm.h" +#include "Cluster/ClusterMethods.h" #include "HttpServer/HttpServer.h" #include "Indexes/EdgeIndex.h" #include "Indexes/Index.h" #include "Indexes/PrimaryIndex.h" #include "Replication/InitialSyncer.h" #include "Rest/HttpRequest.h" +#include "Rest/Version.h" #include "Utils/CollectionGuard.h" #include "Utils/CollectionKeys.h" #include "Utils/CollectionKeysRepository.h" @@ -413,7 +414,7 @@ void RestReplicationHandler::handleCommandLoggerState() { // "server" part builder.add("server", VPackValue(VPackValueType::Object)); - builder.add("version", VPackValue(TRI_VERSION)); + builder.add("version", VPackValue(ARANGODB_VERSION)); builder.add("serverId", VPackValue(std::to_string(TRI_GetIdServer()))); builder.close(); diff --git a/arangod/RestHandler/RestVersionHandler.cpp b/arangod/RestHandler/RestVersionHandler.cpp index f7587f1027..547ed5cac0 100644 --- a/arangod/RestHandler/RestVersionHandler.cpp +++ b/arangod/RestHandler/RestVersionHandler.cpp @@ -50,7 +50,7 @@ HttpHandler::status_t RestVersionHandler::execute() { VPackBuilder result; result.add(VPackValue(VPackValueType::Object)); result.add("server", VPackValue("arango")); - result.add("version", VPackValue(TRI_VERSION)); + result.add("version", VPackValue(ARANGODB_VERSION)); bool found; char const* detailsStr = _request->value("details", found); diff --git a/arangod/RestServer/ArangoServer.cpp b/arangod/RestServer/ArangoServer.cpp index c264fb0f37..57d3585d5f 100644 --- a/arangod/RestServer/ArangoServer.cpp +++ b/arangod/RestServer/ArangoServer.cpp @@ -1713,7 +1713,7 @@ int ArangoServer::startupServer() { LOG(INFO) << "Authentication is turned off"; } - LOG(INFO) << "ArangoDB (version " << TRI_VERSION_FULL + LOG(INFO) << "ArangoDB (version " << ARANGODB_VERSION_FULL << ") is ready for business. Have fun!"; int res; diff --git a/arangod/RestServer/WindowsServiceUtils.cpp b/arangod/RestServer/WindowsServiceUtils.cpp index 930d3e216c..e96541752a 100644 --- a/arangod/RestServer/WindowsServiceUtils.cpp +++ b/arangod/RestServer/WindowsServiceUtils.cpp @@ -115,7 +115,7 @@ static void InstallServiceCommand(std::string command) { } SERVICE_DESCRIPTION description = { - "multi-model NoSQL database (version " TRI_VERSION ")"}; + "multi-model NoSQL database (version " ARANGODB_VERSION ")"}; ChangeServiceConfig2(schService, SERVICE_CONFIG_DESCRIPTION, &description); std::cout << "INFO: added service with command line '" << command << "'" diff --git a/arangod/V8Server/v8-replication.cpp b/arangod/V8Server/v8-replication.cpp index c836c6834e..1e561e017d 100644 --- a/arangod/V8Server/v8-replication.cpp +++ b/arangod/V8Server/v8-replication.cpp @@ -24,6 +24,7 @@ #include "v8-replication.h" #include "Basics/ReadLocker.h" #include "Replication/InitialSyncer.h" +#include "Rest/Version.h" #include "V8/v8-conv.h" #include "V8/v8-globals.h" #include "V8/v8-utils.h" @@ -64,7 +65,7 @@ static void JS_StateLoggerReplication( result->Set(TRI_V8_ASCII_STRING("state"), state); v8::Handle server = v8::Object::New(isolate); - server->Set(TRI_V8_ASCII_STRING("version"), TRI_V8_ASCII_STRING(TRI_VERSION)); + server->Set(TRI_V8_ASCII_STRING("version"), TRI_V8_ASCII_STRING(ARANGODB_VERSION)); server->Set(TRI_V8_ASCII_STRING("serverId"), TRI_V8_STD_STRING(StringUtils::itoa(TRI_GetIdServer()))); result->Set(TRI_V8_ASCII_STRING("server"), server); diff --git a/arangod/V8Server/v8-vocbase.cpp b/arangod/V8Server/v8-vocbase.cpp index addbeb6317..dbf2ed3d02 100644 --- a/arangod/V8Server/v8-vocbase.cpp +++ b/arangod/V8Server/v8-vocbase.cpp @@ -22,6 +22,7 @@ //////////////////////////////////////////////////////////////////////////////// #include "v8-vocbaseprivate.h" + #include "Aql/Query.h" #include "Aql/QueryCache.h" #include "Aql/QueryList.h" @@ -40,6 +41,7 @@ #include "HttpServer/ApplicationEndpointServer.h" #include "RestServer/ConsoleThread.h" #include "RestServer/VocbaseContext.h" +#include "Rest/Version.h" #include "V8/JSLoader.h" #include "V8/v8-conv.h" #include "V8/v8-utils.h" @@ -2894,7 +2896,7 @@ static void JS_VersionServer(v8::FunctionCallbackInfo const& args) { v8::Isolate* isolate = args.GetIsolate(); v8::HandleScope scope(isolate); - TRI_V8_RETURN(TRI_V8_ASCII_STRING(TRI_VERSION)); + TRI_V8_RETURN(TRI_V8_ASCII_STRING(ARANGODB_VERSION)); } //////////////////////////////////////////////////////////////////////////////// diff --git a/arangod/VocBase/replication-applier.cpp b/arangod/VocBase/replication-applier.cpp index de844bcda6..1b82e83ded 100644 --- a/arangod/VocBase/replication-applier.cpp +++ b/arangod/VocBase/replication-applier.cpp @@ -22,8 +22,6 @@ //////////////////////////////////////////////////////////////////////////////// #include "replication-applier.h" -#include "Basics/conversions.h" -#include "Basics/files.h" #include "Basics/FileUtils.h" #include "Basics/Logger.h" #include "Basics/ReadLocker.h" @@ -32,7 +30,12 @@ #include "Basics/tri-strings.h" #include "Basics/VelocyPackHelper.h" #include "Basics/WriteLocker.h" +#include "Basics/conversions.h" +#include "Basics/files.h" +#include "Basics/json.h" +#include "Basics/tri-strings.h" #include "Replication/ContinuousSyncer.h" +#include "Rest/Version.h" #include "VocBase/collection.h" #include "VocBase/document-collection.h" #include "VocBase/server.h" @@ -1270,7 +1273,7 @@ void TRI_replication_applier_t::toVelocyPack(VPackBuilder& builder) const { // add server info builder.add("server", VPackValue(VPackValueType::Object)); - builder.add("version", VPackValue(TRI_VERSION)); + builder.add("version", VPackValue(ARANGODB_VERSION)); builder.add("serverId", VPackValue(std::to_string(TRI_GetIdServer()))); builder.close(); // server diff --git a/lib/Basics/Common.h b/lib/Basics/Common.h index 7c8e0fdc37..5de420fcc7 100644 --- a/lib/Basics/Common.h +++ b/lib/Basics/Common.h @@ -37,14 +37,6 @@ #include "Basics/operating-system.h" #include "Basics/application-exit.h" -#include "Basics/build.h" - -#ifdef _DEBUG -#define TRI_VERSION_FULL TRI_VERSION " [" TRI_PLATFORM "-DEBUG]" -#else -#define TRI_VERSION_FULL TRI_VERSION " [" TRI_PLATFORM "]" -#endif - #undef TRI_WITHIN_COMMON #include diff --git a/lib/Basics/build-date.h.in b/lib/Basics/build-date.h.in new file mode 100644 index 0000000000..1332d2f876 --- /dev/null +++ b/lib/Basics/build-date.h.in @@ -0,0 +1 @@ +#define ARANGODB_BUILD_DATE "@ARANGODB_BUILD_DATE@" diff --git a/lib/Basics/build.h.in b/lib/Basics/build.h.in index fcaccddb5e..9f49570ba6 100644 --- a/lib/Basics/build.h.in +++ b/lib/Basics/build.h.in @@ -1 +1 @@ -#define TRI_VERSION "@ARANGODB_VERSION@" +#define ARANGODB_VERSION "@ARANGODB_VERSION@" diff --git a/lib/Rest/Version.cpp b/lib/Rest/Version.cpp index 8babc0d5ea..534a521836 100644 --- a/lib/Rest/Version.cpp +++ b/lib/Rest/Version.cpp @@ -27,11 +27,6 @@ #include "Basics/win-utils.h" #endif -#include "Basics/conversions.h" -#include "Basics/json.h" -#include "Basics/StringUtils.h" -#include "Basics/Utf8Helper.h" - #include #include @@ -39,6 +34,12 @@ #include #include +#include "Basics/StringUtils.h" +#include "Basics/Utf8Helper.h" +#include "Basics/build-date.h" +#include "Basics/conversions.h" +#include "Basics/json.h" + using namespace arangodb::rest; //////////////////////////////////////////////////////////////////////////////// @@ -93,7 +94,7 @@ void Version::initialize() { //////////////////////////////////////////////////////////////////////////////// int32_t Version::getNumericServerVersion() { - char const* apiVersion = TRI_VERSION; + char const* apiVersion = ARANGODB_VERSION; char const* p = apiVersion; // read major version @@ -121,7 +122,7 @@ int32_t Version::getNumericServerVersion() { /// @brief get server version //////////////////////////////////////////////////////////////////////////////// -std::string Version::getServerVersion() { return std::string(TRI_VERSION); } +std::string Version::getServerVersion() { return std::string(ARANGODB_VERSION); } //////////////////////////////////////////////////////////////////////////////// /// @brief get BOOST version @@ -238,7 +239,7 @@ std::string Version::getBuildDate() { std::string Version::getVerboseVersionString() { std::ostringstream version; - version << "ArangoDB " << TRI_VERSION_FULL << " " + version << "ArangoDB " << ARANGODB_VERSION_FULL << " " << (sizeof(void*) == 4 ? "32" : "64") << "bit" #ifdef ARANGODB_ENABLE_MAINTAINER_MODE << " maintainer mode" diff --git a/lib/Rest/Version.h b/lib/Rest/Version.h index cb70d40801..90856ad3cf 100644 --- a/lib/Rest/Version.h +++ b/lib/Rest/Version.h @@ -26,6 +26,14 @@ #include "Basics/Common.h" +#include "Basics/build.h" + +#ifdef _DEBUG +#define ARANGODB_VERSION_FULL ARANGODB_VERSION " [" TRI_PLATFORM "-DEBUG]" +#else +#define ARANGODB_VERSION_FULL ARANGODB_VERSION " [" TRI_PLATFORM "]" +#endif + struct TRI_json_t; struct TRI_memory_zone_s; diff --git a/lib/V8/v8-utils.cpp b/lib/V8/v8-utils.cpp index f4a983a15f..00f6ae0b01 100644 --- a/lib/V8/v8-utils.cpp +++ b/lib/V8/v8-utils.cpp @@ -46,6 +46,7 @@ #include "Basics/Utf8Helper.h" #include "Rest/HttpRequest.h" #include "Rest/SslInterface.h" +#include "Rest/Version.h" #include "SimpleHttpClient/GeneralClientConnection.h" #include "SimpleHttpClient/SimpleHttpClient.h" #include "SimpleHttpClient/SimpleHttpResult.h" @@ -4303,7 +4304,7 @@ void TRI_InitV8Utils(v8::Isolate* isolate, v8::Handle context, isolate, context, TRI_V8_ASCII_STRING("COVERAGE"), v8::False(isolate)); #endif TRI_AddGlobalVariableVocbase(isolate, context, TRI_V8_ASCII_STRING("VERSION"), - TRI_V8_ASCII_STRING(TRI_VERSION)); + TRI_V8_ASCII_STRING(ARANGODB_VERSION)); TRI_AddGlobalVariableVocbase(isolate, context, TRI_V8_ASCII_STRING("SYS_PLATFORM"),