From 4961b819f3712468d9a1387aebd6d8aac5963718 Mon Sep 17 00:00:00 2001 From: DennisOSRM Date: Fri, 19 Jul 2013 15:00:41 +0200 Subject: [PATCH] Trigger rebuild of fingerprint everytime --- CMakeLists.txt | 2 +- Util/UUID.cpp.in | 56 +++++++++++++++++++++++++++++++++++++++++ cmake/UUID-Config.cmake | 12 +++++++++ 3 files changed, 69 insertions(+), 1 deletion(-) create mode 100644 Util/UUID.cpp.in create mode 100644 cmake/UUID-Config.cmake diff --git a/CMakeLists.txt b/CMakeLists.txt index fec9dafbb..757e2167e 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -18,7 +18,7 @@ add_custom_command(OUTPUT ${CMAKE_SOURCE_DIR}/Util/UUID.h ${CMAKE_SOURCE_DIR}/cmake/UUID-Config.cmake DEPENDS ${CMAKE_SOURCE_DIR}/cmake/UUID-Config.cmake - ${CMAKE_SOURCE_DIR}/Util/UUID.h + ${CMAKE_SOURCE_DIR}/Util/UUID.cpp COMMENT "Configuring UUID.cpp" VERBATIM) diff --git a/Util/UUID.cpp.in b/Util/UUID.cpp.in new file mode 100644 index 000000000..621c59cfc --- /dev/null +++ b/Util/UUID.cpp.in @@ -0,0 +1,56 @@ +/* + open source routing machine + Copyright (C) Dennis Luxen, others 2010 + +This program is free software; you can redistribute it and/or modify +it under the terms of the GNU AFFERO General Public License as published by +the Free Software Foundation; either version 3 of the License, or +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 Affero General Public License +along with this program; if not, write to the Free Software +Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +or see http://www.gnu.org/licenses/agpl.txt. + */ + +#include "UUID.h" + +#cmakedefine01 HAS64BITS +#cmakedefine MD5PREPARE "${MD5PREPARE}" +#cmakedefine MD5RTREE "${MD5RTREE}" +#cmakedefine MD5NODEINFO "${MD5NODEINFO}" +#cmakedefine MD5GRAPH "${MD5GRAPH}" +#cmakedefine MD5OBJECTS "${MD5OBJECTS}" + +UUID::UUID() : magic_number(1297240911) { + boost::uuids::name_generator gen(named_uuid); + std::string temp_string(__DATE__); + temp_string += __TIME__; + + std::copy(MD5PREPARE, MD5PREPARE+strlen(MD5PREPARE), md5_prepare); + temp_string += md5_prepare; + std::copy(MD5RTREE, MD5RTREE+32, md5_tree); + temp_string += md5_tree; + std::copy(MD5NODEINFO, MD5NODEINFO+32, md5_nodeinfo); + temp_string += md5_nodeinfo; + std::copy(MD5GRAPH, MD5GRAPH+32, md5_graph); + temp_string += md5_graph; + std::copy(MD5OBJECTS, MD5OBJECTS+32, md5_objects); + temp_string += md5_objects; + + named_uuid = gen(temp_string); + has_64_bits = HAS64BITS; +} + +UUID::~UUID() { + +} + +const boost::uuids::uuid & UUID::GetUUID() const { + return named_uuid; +} diff --git a/cmake/UUID-Config.cmake b/cmake/UUID-Config.cmake new file mode 100644 index 000000000..3da918765 --- /dev/null +++ b/cmake/UUID-Config.cmake @@ -0,0 +1,12 @@ +set(oldfile ${CMAKE_SOURCE_DIR}/../Util/UUID.cpp) +if (EXISTS ${oldfile}) + file(REMOVE_RECURSE ${oldfile}) +endif() + +file(MD5 ${CMAKE_SOURCE_DIR}/../createHierarchy.cpp MD5PREPARE) +file(MD5 ${CMAKE_SOURCE_DIR}/../DataStructures/StaticRTree.h MD5RTREE) +file(MD5 ${CMAKE_SOURCE_DIR}/../DataStructures/NodeInformationHelpDesk.h MD5NODEINFO) +file(MD5 ${CMAKE_SOURCE_DIR}/../Util/GraphLoader.h MD5GRAPH) +file(MD5 ${CMAKE_SOURCE_DIR}/../Server/DataStructures/QueryObjectsStorage.cpp MD5OBJECTS) + +CONFIGURE_FILE( ${CMAKE_SOURCE_DIR}/../Util/UUID.cpp.in ${CMAKE_SOURCE_DIR}/../Util/UUID.cpp )