Commit 741e79dd authored by Paul Schütze's avatar Paul Schütze
Browse files

Merge branch 'backport_buildall' into 'v2.1-stable'

[v2.1-stable] Compile DatabaseWriter for CVMFS Builds

See merge request allpix-squared/allpix-squared!642
parents ca6efc82 5bb64be0
Loading
Loading
Loading
Loading
+7 −7
Original line number Diff line number Diff line
@@ -75,7 +75,7 @@ stages:
    needs: []
    script:
        - export CCACHE_DIR=`pwd`/ccache
        - cmake -GNinja -DCMAKE_CXX_FLAGS="-Werror" -DBUILD_LCIOWriter=ON -DCMAKE_BUILD_TYPE=RELEASE -DROOT_DIR=$ROOTSYS -DEigen3_DIR=$Eigen3_DIR -DLCIO_DIR=$LCIO_DIR ..
        - cmake -GNinja -DCMAKE_CXX_FLAGS="-Werror" -DBUILD_ALL_MODULES=ON -DCMAKE_BUILD_TYPE=RELEASE ..
        - ninja -k0
        - ninja install
    artifacts:
@@ -91,7 +91,7 @@ cmp:lxplus-gcc:
        - .lxplus
        - .compile
    script:
        - cmake -GNinja -DCMAKE_CXX_FLAGS="-Werror" -DBUILD_LCIOWriter=ON -DCMAKE_BUILD_TYPE=RELEASE -DLCIO_DIR=$LCIO_DIR ..
        - cmake -GNinja -DCMAKE_CXX_FLAGS="-Werror" -DBUILD_ALL_MODULES=ON -DCMAKE_BUILD_TYPE=RELEASE ..
        - ninja -k0
        - ninja install

@@ -126,7 +126,7 @@ cmp:macos-clang:
        - .macos
        - .compile
    script:
        - cmake -GNinja -DCMAKE_CXX_FLAGS="-Werror" -DBUILD_LCIOWriter=ON -DCMAKE_BUILD_TYPE=RELEASE -DLCIO_DIR=$LCIO_DIR -DCMAKE_USE_RELATIVE_PATHS=TRUE ..
        - cmake -GNinja -DCMAKE_CXX_FLAGS="-Werror" -DBUILD_ALL_MODULES=ON -DCMAKE_BUILD_TYPE=RELEASE -DCMAKE_USE_RELATIVE_PATHS=TRUE ..
        - ninja -k0
        - ninja install

@@ -147,13 +147,13 @@ cmp:macos-clang:
fmt:cc7-llvm-format:
    extends: .format
    script:
        - cmake -GNinja -DCMAKE_CXX_FLAGS="-Werror" -DBUILD_LCIOWriter=ON -DCMAKE_BUILD_TYPE=RELEASE -DLCIO_DIR=$LCIO_DIR ..
        - cmake -GNinja -DCMAKE_CXX_FLAGS="-Werror" -DBUILD_ALL_MODULES=ON -DCMAKE_BUILD_TYPE=RELEASE ..
        - ninja check-format

fmt:cc7-llvm-lint:
    extends: .format
    script:
        - cmake -GNinja -DCMAKE_CXX_FLAGS="-Werror" -DBUILD_LCIOWriter=ON -DCMAKE_BUILD_TYPE=RELEASE -DLCIO_DIR=$LCIO_DIR ..
        - cmake -GNinja -DCMAKE_CXX_FLAGS="-Werror" -DBUILD_ALL_MODULES=ON -DCMAKE_BUILD_TYPE=RELEASE ..
        - ninja check-lint 2> /dev/null

fmt:cmake-lint:
@@ -172,7 +172,7 @@ fmt:coverage:
        - export PATH=$PATH:~/.local/bin
        - pip install --trusted-host=pypi.org --user gcovr
        - export CCACHE_DIR=`pwd`/ccache
        - cmake -GNinja -DCMAKE_CXX_FLAGS="-Werror" -DBUILD_LCIOWriter=ON -DCMAKE_BUILD_TYPE=Debug -DCOVERAGE=ON -DLCIO_DIR=$LCIO_DIR ..
        - cmake -GNinja -DCMAKE_CXX_FLAGS="-Werror" -DBUILD_ALL_MODULES=ON -DCMAKE_BUILD_TYPE=Debug -DCOVERAGE=ON ..
        - ninja -k0
        - ninja install
        - ninja coverage_gcovr
@@ -195,7 +195,7 @@ fmt:coverity:
    script:
        - wget --quiet https://scan.coverity.com/download/linux64 --post-data "token=$COVERITY_SCAN_TOKEN&project=$COVERITY_SCAN_PROJECT_NAME" -O /tmp/cov-analysis-linux64.tgz
        - tar xfz /tmp/cov-analysis-linux64.tgz
        - cmake -DCMAKE_CXX_FLAGS="-Werror" -DBUILD_LCIOWriter=ON -DCMAKE_BUILD_TYPE=RELEASE -DROOT_DIR=$ROOTSYS -DEigen3_DIR=$Eigen3_DIR -DLCIO_DIR=$LCIO_DIR ..
        - cmake -DCMAKE_CXX_FLAGS="-Werror" -DBUILD_ALL_MODULES=ON -DCMAKE_BUILD_TYPE=RELEASE ..
        - cov-analysis-linux64-*/bin/cov-build --dir cov-int make
        - tar cfz cov-int.tar.gz cov-int
        - curl --form token=$COVERITY_SCAN_TOKEN --form email=$GITLAB_USER_EMAIL --form file=@cov-int.tar.gz --form version="`git describe --tags`" --form description="`git describe --tags` / $CI_COMMIT_TITLE / $CI_COMMIT_REF_NAME:$CI_PIPELINE_ID " https://scan.coverity.com/builds?project=$COVERITY_SCAN_PROJECT_NAME
+4 −5
Original line number Diff line number Diff line
ALLPIX_ENABLE_DEFAULT(OFF)
ALLPIX_UNIQUE_MODULE(MODULE_NAME)

find_package(PkgConfig REQUIRED)
pkg_check_modules(PQXX REQUIRED libpqxx)

TARGET_LINK_LIBRARIES(${MODULE_NAME} ${PQXX_LIBRARIES})
TARGET_INCLUDE_DIRECTORIES(${MODULE_NAME} SYSTEM PRIVATE ${PQXX_INCLUDE_DIRS})
# Find and link libpqxx
FIND_PACKAGE(PkgConfig REQUIRED)
PKG_CHECK_MODULES(PQXX REQUIRED IMPORTED_TARGET libpqxx)
TARGET_LINK_LIBRARIES(${MODULE_NAME} PkgConfig::PQXX)

ALLPIX_MODULE_SOURCES(${MODULE_NAME} DatabaseWriterModule.cpp)

+7 −2
Original line number Diff line number Diff line
@@ -205,7 +205,8 @@ void DatabaseWriterModule::run(Event* event) {
            auto detectorName = (message->getDetector() != nullptr ? message->getDetector()->getName() : "global");

            for(const auto& object : message->getObjectArray()) {
                std::string class_name = allpix::demangle(typeid(object.get()).name());
                auto& o = object.get();
                std::string class_name = allpix::demangle(typeid(o).name());

                // Writing objects to corresponding database tables
                if(class_name == "PixelHit") {
@@ -335,7 +336,11 @@ void DatabaseWriterModule::run(Event* event) {

void DatabaseWriterModule::finalizeThread() {
// Disconnecting from database
#if PQXX_VERSION_MAJOR > 6
    conn_->close();
#else
    conn_->disconnect();
#endif
}

void DatabaseWriterModule::finalize() {