diff --git a/CMakeLists.txt b/CMakeLists.txt index aefcc420a..f478eed72 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -253,7 +253,7 @@ ENDIF() SET (ENGINE_UTILS_MESSAGEQCPP_INCLUDE "${CMAKE_CURRENT_SOURCE_DIR}/utils/messageqcpp") SET (ENGINE_WE_SHARED_INCLUDE "${CMAKE_CURRENT_SOURCE_DIR}/writeengine/shared") SET (ENGINE_UTILS_IDBDATAFILE_INCLUDE "${CMAKE_CURRENT_SOURCE_DIR}/utils/idbdatafile") -SET (ENGINE_UTILS_LOGGINGCPP_INCLUDE "${CMAKE_CURRENT_SOURCE_DIR}/utils/loggingcpp") +SET (ENGINE_UTILS_LOGGINGCPP_INCLUDE "${CMAKE_CURRENT_SOURCE_DIR}/utils/loggingcpp" "${CMAKE_CURRENT_BINARY_DIR}/utils/loggingcpp") SET (ENGINE_UTILS_CONFIGCPP_INCLUDE "${CMAKE_CURRENT_SOURCE_DIR}/utils/configcpp") SET (ENGINE_UTILS_COMPRESS_INCLUDE "${CMAKE_CURRENT_SOURCE_DIR}/utils/compress") SET (ENGINE_VERSIONING_BRM_INCLUDE "${CMAKE_CURRENT_SOURCE_DIR}/versioning/BRM") diff --git a/dbcon/ddlpackage/CMakeLists.txt b/dbcon/ddlpackage/CMakeLists.txt index 4e95ff073..7a5d2198b 100644 --- a/dbcon/ddlpackage/CMakeLists.txt +++ b/dbcon/ddlpackage/CMakeLists.txt @@ -1,13 +1,11 @@ INCLUDE_DIRECTORIES( ${ENGINE_COMMON_INCLUDES} ) -#TODO: put generated files in the binary directory -ADD_CUSTOM_COMMAND( - OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/ddl-gram.cpp ${CMAKE_CURRENT_SOURCE_DIR}/ddl-scan.cpp - COMMAND /bin/sh ./ddl-gram.sh ${BISON_EXECUTABLE} - COMMAND /bin/sh ./ddl-scan.sh ${LEX_EXECUTABLE} - WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} - DEPENDS ddl.y ddl.l -) +FIND_PACKAGE(BISON REQUIRED) +BISON_TARGET(ddl_gram ddl.y ${CMAKE_CURRENT_BINARY_DIR}/ddl-gram.cpp DEFINES_FILE ${CMAKE_CURRENT_BINARY_DIR}/ddl-gram.h COMPILE_FLAGS "-l -d -p ddl") + +FIND_PACKAGE(FLEX REQUIRED) +FLEX_TARGET(ddl_scan ddl.l ${CMAKE_CURRENT_BINARY_DIR}/ddl-scan.cpp COMPILE_FLAGS "-i -L -Pddl") +ADD_FLEX_BISON_DEPENDENCY(ddl_scan ddl_gram) set_source_files_properties(ddl-scan.cpp PROPERTIES COMPILE_FLAGS -Wno-sign-compare) @@ -31,9 +29,9 @@ ADD_LIBRARY(ddlpackage SHARED markpartition.cpp restorepartition.cpp droppartition.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/ddl-gram.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/ddl-scan.cpp - ) + ${BISON_ddl_gram_OUTPUTS} + ${FLEX_ddl_scan_OUTPUTS} +) INSTALL(TARGETS ddlpackage DESTINATION ${ENGINE_LIBDIR} COMPONENT columnstore-libs) diff --git a/dbcon/ddlpackage/ddl-gram.sh b/dbcon/ddlpackage/ddl-gram.sh deleted file mode 100755 index 5c1b121c0..000000000 --- a/dbcon/ddlpackage/ddl-gram.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/bin/sh - -#ddl-gram.cpp: ddl.y -$1 -y -l -v -d -p ddl -o ddl-gram-temp.cpp ddl.y -set +e; \ -if [ -f ddl-gram.cpp ]; \ - then diff -abBq ddl-gram-temp.cpp ddl-gram.cpp >/dev/null 2>&1; \ - if [ $? -ne 0 ]; \ - then mv -f ddl-gram-temp.cpp ddl-gram.cpp; \ - else touch ddl-gram.cpp; \ - fi; \ - else mv -f ddl-gram-temp.cpp ddl-gram.cpp; \ -fi -set +e; \ -if [ -f ddl-gram.h ]; \ - then diff -abBq ddl-gram-temp.hpp ddl-gram.h >/dev/null 2>&1; \ - if [ $? -ne 0 ]; \ - then mv -f ddl-gram-temp.hpp ddl-gram.h; \ - else touch ddl-gram.h; \ - fi; \ - else mv -f ddl-gram-temp.hpp ddl-gram.h; \ -fi -rm -f ddl-gram-temp.cpp ddl-gram-temp.hpp ddl-gram-temp.output - - - diff --git a/dbcon/ddlpackage/ddl-scan.sh b/dbcon/ddlpackage/ddl-scan.sh deleted file mode 100755 index 4d62056ec..000000000 --- a/dbcon/ddlpackage/ddl-scan.sh +++ /dev/null @@ -1,16 +0,0 @@ -#!/bin/sh - -#ddl-scan.cpp: ddl.l -$1 -i -L -P ddl -o ddl-scan-temp.cpp ddl.l -set +e; -if [ -f ddl-scan.cpp ]; - then diff -abBq ddl-scan-temp.cpp ddl-scan.cpp >/dev/null 2>&1; - if [ "$?" -ne 0 ]; - then mv -f ddl-scan-temp.cpp ddl-scan.cpp; - else touch ddl-scan.cpp; - fi; - else mv -f ddl-scan-temp.cpp ddl-scan.cpp; -fi -rm -f ddl-scan-temp.cpp - - diff --git a/dbcon/dmlpackage/CMakeLists.txt b/dbcon/dmlpackage/CMakeLists.txt index b54bbc822..66e43621f 100644 --- a/dbcon/dmlpackage/CMakeLists.txt +++ b/dbcon/dmlpackage/CMakeLists.txt @@ -1,14 +1,12 @@ INCLUDE_DIRECTORIES( ${ENGINE_COMMON_INCLUDES} ) -#TODO: put generated files in binary folder -ADD_CUSTOM_COMMAND( - OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/dml-gram.cpp ${CMAKE_CURRENT_SOURCE_DIR}/dml-scan.cpp - COMMAND /bin/sh ./dml-gram.sh ${BISON_EXECUTABLE} - COMMAND /bin/sh ./dml-scan.sh ${LEX_EXECUTABLE} - WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} - DEPENDS dml.y dml.l -) +FIND_PACKAGE(BISON REQUIRED) +BISON_TARGET(dml_gram dml.y ${CMAKE_CURRENT_BINARY_DIR}/dml-gram.cpp DEFINES_FILE ${CMAKE_CURRENT_BINARY_DIR}/dml-gram.h COMPILE_FLAGS "-l -d -p dml") + +FIND_PACKAGE(FLEX REQUIRED) +FLEX_TARGET(dml_scan dml.l ${CMAKE_CURRENT_BINARY_DIR}/dml-scan.cpp COMPILE_FLAGS "-i -L -Pdml") +ADD_FLEX_BISON_DEPENDENCY(dml_scan dml_gram) set_source_files_properties(dml-scan.cpp PROPERTIES COMPILE_FLAGS -Wno-sign-compare) @@ -32,9 +30,9 @@ ADD_LIBRARY(dmlpackage SHARED commanddmlpackage.cpp dmlpkg.cpp dmlparser.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/dml-gram.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/dml-scan.cpp - ) + ${BISON_dml_gram_OUTPUTS} + ${FLEX_dml_scan_OUTPUTS} +) INSTALL(TARGETS dmlpackage DESTINATION ${ENGINE_LIBDIR} COMPONENT columnstore-libs) diff --git a/dbcon/dmlpackage/dml-gram.sh b/dbcon/dmlpackage/dml-gram.sh deleted file mode 100755 index 665a80da3..000000000 --- a/dbcon/dmlpackage/dml-gram.sh +++ /dev/null @@ -1,23 +0,0 @@ -#!/bin/sh - -#dml-gram.cpp: dml.y -$1 -l -v -d -p dml -o dml-gram-temp.cpp dml.y - set +e; \ - if [ -f dml-gram.cpp ]; \ - then diff -abBq dml-gram-temp.cpp dml-gram.cpp >/dev/null 2>&1; \ - if [ $? -ne 0 ]; \ - then mv -f dml-gram-temp.cpp dml-gram.cpp; \ - else touch dml-gram.cpp; \ - fi; \ - else mv -f dml-gram-temp.cpp dml-gram.cpp; \ - fi - set +e; \ - if [ -f dml-gram.h ]; \ - then diff -abBq dml-gram-temp.hpp dml-gram.h >/dev/null 2>&1; \ - if [ $? -ne 0 ]; \ - then mv -f dml-gram-temp.hpp dml-gram.h; \ - else touch dml-gram.h; \ - fi; \ - else mv -f dml-gram-temp.hpp dml-gram.h; \ - fi - rm -f dml-gram-temp.cpp dml-gram-temp.hpp dml-gram-temp.output \ No newline at end of file diff --git a/dbcon/dmlpackage/dml-scan.sh b/dbcon/dmlpackage/dml-scan.sh deleted file mode 100755 index 1daa312cf..000000000 --- a/dbcon/dmlpackage/dml-scan.sh +++ /dev/null @@ -1,14 +0,0 @@ -#!/bin/sh - -#dml-scan.cpp: dml.l - $1 -i -L -Pdml -odml-scan-temp.cpp dml.l - set +e; \ - if [ -f dml-scan.cpp ]; \ - then diff -abBq dml-scan-temp.cpp dml-scan.cpp >/dev/null 2>&1; \ - if [ $? -ne 0 ]; \ - then mv -f dml-scan-temp.cpp dml-scan.cpp; \ - else touch dml-scan.cpp; \ - fi; \ - else mv -f dml-scan-temp.cpp dml-scan.cpp; \ - fi - rm -f dml-scan-temp.cpp diff --git a/utils/libmarias3/CMakeLists.txt b/utils/libmarias3/CMakeLists.txt index 8695dcefd..a74b547a6 100644 --- a/utils/libmarias3/CMakeLists.txt +++ b/utils/libmarias3/CMakeLists.txt @@ -23,6 +23,7 @@ ExternalProject_Add(ms3 BUILD_COMMAND make BUILD_IN_SOURCE 0 EXCLUDE_FROM_ALL TRUE + BUILD_BYPRODUCTS ${CMAKE_BINARY_DIR}/lib/libmarias3.so.3.1.2 ) set(S3API_DEPS marias3 curl xml2 CACHE INTERNAL "S3API_DEPS") diff --git a/utils/loggingcpp/CMakeLists.txt b/utils/loggingcpp/CMakeLists.txt index 491346529..0ce8f2925 100644 --- a/utils/loggingcpp/CMakeLists.txt +++ b/utils/loggingcpp/CMakeLists.txt @@ -1,17 +1,22 @@ include_directories( ${ENGINE_COMMON_INCLUDES} ) - ########### next target ############### -#TODO: put generated files in binary dir ADD_CUSTOM_COMMAND( - OUTPUT ${CMAKE_CURRENT_SOURCE_DIR}/messageids.h ${CMAKE_CURRENT_SOURCE_DIR}/errorids.h - COMMAND /bin/sh genMsgAndErrId.sh - WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR} - DEPENDS genMsgId.pl genErrId.pl + OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/messageids.h + COMMAND perl ${CMAKE_CURRENT_SOURCE_DIR}/genMsgId.pl < ${CMAKE_CURRENT_SOURCE_DIR}/MessageFile.txt > messageids-temp.h + COMMAND ${CMAKE_COMMAND} -E copy_if_different messageids-temp.h messageids.h + DEPENDS genMsgId.pl ) - - +ADD_CUSTOM_COMMAND( + OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/errorids.h + COMMAND perl ${CMAKE_CURRENT_SOURCE_DIR}/genErrId.pl < ${CMAKE_CURRENT_SOURCE_DIR}/ErrorMessage.txt > errorids-temp.h + COMMAND ${CMAKE_COMMAND} -E copy_if_different errorids-temp.h errorids.h + DEPENDS genErrId.pl + ) + +set_source_files_properties(${CMAKE_CURRENT_BINARY_DIR}/errorids.h PROPERTIES GENERATED TRUE) + add_library(loggingcpp SHARED message.cpp messagelog.cpp @@ -20,11 +25,9 @@ add_library(loggingcpp SHARED sqllogger.cpp stopwatch.cpp idberrorinfo.cpp - ${CMAKE_CURRENT_SOURCE_DIR}/messageids.h - ${CMAKE_CURRENT_SOURCE_DIR}/errorids.h - ) - - + ${CMAKE_CURRENT_BINARY_DIR}/messageids.h + ${CMAKE_CURRENT_BINARY_DIR}/errorids.h +) install(TARGETS loggingcpp DESTINATION ${ENGINE_LIBDIR} COMPONENT columnstore-libs) diff --git a/utils/loggingcpp/genErrId.pl b/utils/loggingcpp/genErrId.pl index a731236f4..91c953d07 100755 --- a/utils/loggingcpp/genErrId.pl +++ b/utils/loggingcpp/genErrId.pl @@ -3,8 +3,6 @@ # $Id: genErrId.pl 3048 2012-04-04 15:33:45Z rdempsey $ # -open FH, "< ./ErrorMessage.txt" or die; - $frontmatter = <<'EOD'; /* Copyright (C) 2014 InfiniDB, Inc. @@ -46,7 +44,7 @@ EOD print $frontmatter; -while () +while (<>) { chomp; next if (/^$/); @@ -56,6 +54,3 @@ while () } print $backmatter; - -close FH; - diff --git a/utils/loggingcpp/genMsgAndErrId.sh b/utils/loggingcpp/genMsgAndErrId.sh deleted file mode 100755 index 9182e78d6..000000000 --- a/utils/loggingcpp/genMsgAndErrId.sh +++ /dev/null @@ -1,8 +0,0 @@ -#!/bin/sh - -perl ./genMsgId.pl > messageids-temp.h -diff -abBq messageids-temp.h messageids.h >/dev/null 2>&1; if [ $? -ne 0 ]; then mv -f messageids-temp.h messageids.h; else touch -a messageids.h; fi; -rm -f messageids-temp.h -perl ./genErrId.pl > errorids-temp.h -diff -abBq errorids-temp.h errorids.h >/dev/null 2>&1; if [ $? -ne 0 ]; then mv -f errorids-temp.h errorids.h; else touch -a errorids.h; fi; -rm -f errorids-temp.h diff --git a/utils/loggingcpp/genMsgId.pl b/utils/loggingcpp/genMsgId.pl index 5426d44ac..3067122da 100755 --- a/utils/loggingcpp/genMsgId.pl +++ b/utils/loggingcpp/genMsgId.pl @@ -3,8 +3,6 @@ # $Id: genMsgId.pl 3048 2012-04-04 15:33:45Z rdempsey $ # -open FH, "< ./MessageFile.txt" or die; - $frontmatter = <<'EOD'; /* Copyright (C) 2014 InfiniDB, Inc. @@ -46,7 +44,7 @@ EOD print $frontmatter; -while () +while (<>) { chomp; next if (/^$/); @@ -56,6 +54,3 @@ while () } print $backmatter; - -close FH; - diff --git a/utils/udfsdk/CMakeLists.txt b/utils/udfsdk/CMakeLists.txt index 016e7d892..ade4c8415 100755 --- a/utils/udfsdk/CMakeLists.txt +++ b/utils/udfsdk/CMakeLists.txt @@ -12,8 +12,6 @@ add_library(udfsdk SHARED ${udfsdk_LIB_SRCS}) install(TARGETS udfsdk DESTINATION ${ENGINE_LIBDIR} COMPONENT columnstore-libs) - - set(udf_mysql_LIB_SRCS udfmysql.cpp) add_library(udf_mysql SHARED ${udf_mysql_LIB_SRCS}) diff --git a/versioning/BRM/autoincrementmanager.cpp b/versioning/BRM/autoincrementmanager.cpp index b62eaa2ab..9decda641 100644 --- a/versioning/BRM/autoincrementmanager.cpp +++ b/versioning/BRM/autoincrementmanager.cpp @@ -102,6 +102,8 @@ void AutoincrementManager::resetSequence(uint32_t oid, uint64_t value) it->second.value = value; } +const uint32_t AutoincrementManager::lockTime = 30; + void AutoincrementManager::getLock(uint32_t oid) { boost::mutex::scoped_lock lk(lock); diff --git a/versioning/BRM/autoincrementmanager.h b/versioning/BRM/autoincrementmanager.h index e1b04585f..133d99d51 100644 --- a/versioning/BRM/autoincrementmanager.h +++ b/versioning/BRM/autoincrementmanager.h @@ -54,7 +54,7 @@ public: EXPORT void deleteSequence(uint32_t OID); private: - static const uint32_t lockTime = 30; // 30 seconds + static const uint32_t lockTime; // 30 seconds struct sequence { sequence() : value(0), overflow(0) { }