diff --git a/cmake/BuildInfo.cmake b/cmake/BuildInfo.cmake index 823630a5..05576a5c 100644 --- a/cmake/BuildInfo.cmake +++ b/cmake/BuildInfo.cmake @@ -27,30 +27,19 @@ string(TIMESTAMP UTC_TIMESTAMP UTC) set(SYSTEM "${CMAKE_SYSTEM}") set(PROCESSOR "${CMAKE_SYSTEM_PROCESSOR}") -message(STATUS "BuildInfo.GIT_BRANCH = ${GIT_BRANCH}") -message(STATUS "BuildInfo.GIT_SHA1 = ${GIT_SHA1}") -message(STATUS "BuildInfo.GIT_HASH = ${GIT_HASH}") -message(STATUS "BuildInfo.HOSTNAME = ${HOSTNAME}") -message(STATUS "BuildInfo.USERNAME = ${USERNAME}") -message(STATUS "BuildInfo.UTC_TIMESTAMP = ${UTC_TIMESTAMP}") -message(STATUS "BuildInfo.SYSTEM = ${SYSTEM}") -message(STATUS "BuildInfo.PROCESSOR = ${PROCESSOR}") - add_definitions(-DBI_GIT_BRANCH="${GIT_BRANCH}") add_definitions(-DBI_GIT_SHA1="${GIT_SHA1}") add_definitions(-DBI_GIT_HASH="${GIT_HASH}") add_definitions(-DBI_HOSTNAME="${HOSTNAME}") add_definitions(-DBI_USERNAME="${USERNAME}") -add_definitions(-DBI_UTC_TIMESTAMP="${UTC_TIMESTAMP}") +add_definitions(-DBI_CMAKE_TIME="${UTC_TIMESTAMP}") add_definitions(-DBI_SYSTEM="${SYSTEM}") add_definitions(-DBI_PROCESSOR="${PROCESSOR}") file(MAKE_DIRECTORY ${CMAKE_BINARY_DIR}/build_info) file(WRITE ${CMAKE_BINARY_DIR}/build_info/build_time.cmake "STRING(TIMESTAMP TIMEZ UTC)\n") -file(APPEND ${CMAKE_BINARY_DIR}/build_info/build_time.cmake "FILE(WRITE ${CMAKE_BINARY_DIR}/build_info/build_time.h \"#ifndef BUILD_TIME_H\\n\")\n") -file(APPEND ${CMAKE_BINARY_DIR}/build_info/build_time.cmake "FILE(APPEND ${CMAKE_BINARY_DIR}/build_info/build_time.h \"#define BUILD_TIME_H\\n\\n\")\n") -file(APPEND ${CMAKE_BINARY_DIR}/build_info/build_time.cmake "FILE(APPEND ${CMAKE_BINARY_DIR}/build_info/build_time.h \"#define BUILD_TIME \\\"\${TIMEZ}\\\"\\n\\n\")\n") -file(APPEND ${CMAKE_BINARY_DIR}/build_info/build_time.cmake "FILE(APPEND ${CMAKE_BINARY_DIR}/build_info/build_time.h \"#endif // BUILD_TIME_H\\n\")\n") +file(APPEND ${CMAKE_BINARY_DIR}/build_info/build_time.cmake "FILE(WRITE ${CMAKE_BINARY_DIR}/build_info/build_time.h \"#pragma once\\n\")\n") +file(APPEND ${CMAKE_BINARY_DIR}/build_info/build_time.cmake "FILE(APPEND ${CMAKE_BINARY_DIR}/build_info/build_time.h \"#define BI_BUILD_TIME \\\"\${TIMEZ}\\\"\\n\\n\")\n") add_custom_target( build_time COMMAND ${CMAKE_COMMAND} -P ${CMAKE_BINARY_DIR}/build_info/build_time.cmake diff --git a/conanfile.txt b/conanfile.txt index c6baaa4e..8f085bc6 100644 --- a/conanfile.txt +++ b/conanfile.txt @@ -29,3 +29,5 @@ lib, *.dll -> ./bin lib, *.so.* -> ./lib lib, *.so -> ./lib share, * -> ./share +filesystem/lib, *.so* -> ./lib +system/lib, *.so* -> ./lib diff --git a/source/cmd/main.cpp b/source/cmd/main.cpp index 91ac4e44..0340413e 100644 --- a/source/cmd/main.cpp +++ b/source/cmd/main.cpp @@ -10,7 +10,10 @@ #include #include -#include + +#ifdef BUILD_TIME +#include "build_time.h" +#endif using namespace DAQuiri; @@ -62,7 +65,10 @@ int main(int argc, char** argv) INFO("BuildInfo.git_hash: {}", BI_GIT_HASH); INFO("BuildInfo.user@host: {}@{}", BI_USERNAME, BI_HOSTNAME); INFO("BuildInfo.system: {} {}", BI_SYSTEM, BI_PROCESSOR); - INFO("BuildInfo.build_time: {}", BUILD_TIME); + INFO("BuildInfo.cmake_time: {}", BI_CMAKE_TIME); +#ifdef BUILD_TIME + INFO("BuildInfo.build_time: {}", BI_BUILD_TIME); +#endif auto& engine = Engine::singleton(); diff --git a/source/consumers/consumers_autoreg.cpp b/source/consumers/consumers_autoreg.cpp index 35db6c78..c9d2eadb 100644 --- a/source/consumers/consumers_autoreg.cpp +++ b/source/consumers/consumers_autoreg.cpp @@ -1,23 +1,23 @@ #include -#include "consumers_autoreg.h" +#include -#include "stats_scalar.h" +#include -#include "histogram_1d.h" -#include "prebinned_1d.h" -#include "tof_1d.h" -#include "tof_1d_correlate.h" -#include "time_domain.h" -#include "time_delta_1d.h" +#include +#include +#include +#include +#include +#include -#include "tof_val_2d.h" -#include "tof_val_2d_correlate.h" -#include "histogram_2d.h" -#include "image_2d.h" -#include "spectrum_time.h" +#include +#include +#include +#include +#include -#include "histogram_3d.h" +#include using namespace DAQuiri; diff --git a/source/core/CMakeLists.txt b/source/core/CMakeLists.txt index 677736ee..9d5cebe1 100644 --- a/source/core/CMakeLists.txt +++ b/source/core/CMakeLists.txt @@ -67,4 +67,9 @@ target_link_libraries( enable_coverage(${this_target}) -ADD_DEPENDENCIES(${this_target} build_time) +# this will affect what version metadata gets saved to file in project.cpp +option(BI "Update build info at compile time" ON) +if(${BI}) + add_dependencies(${this_target} build_time) + add_definitions(-DBUILD_TIME="TRUE") +endif() diff --git a/source/core/plugin/plugin.h b/source/core/plugin/plugin.h index 52e7e047..e46ec141 100644 --- a/source/core/plugin/plugin.h +++ b/source/core/plugin/plugin.h @@ -1,6 +1,6 @@ #pragma once -#include "setting.h" +#include namespace DAQuiri { diff --git a/source/core/project.cpp b/source/core/project.cpp index b60ac1b1..81da38c6 100644 --- a/source/core/project.cpp +++ b/source/core/project.cpp @@ -4,8 +4,9 @@ #include #include -#include - +#ifdef BUILD_TIME +#include "build_time.h" +#endif namespace DAQuiri { @@ -247,7 +248,10 @@ void Project::save(std::string file_name) f.attributes.create_from("host", std::string(BI_HOSTNAME)); f.attributes.create_from("system", std::string(BI_SYSTEM)); f.attributes.create_from("processor", std::string(BI_PROCESSOR)); - f.attributes.create_from("build_time", std::string(BUILD_TIME)); + f.attributes.create_from("cmake_time", std::string(BI_CMAKE_TIME)); +#ifdef BUILD_TIME + f.attributes.create_from("build_time", std::string(BI_BUILD_TIME)); +#endif auto group = f.create_group("project"); diff --git a/source/gui/CMakeLists.txt b/source/gui/CMakeLists.txt index 9596d6f4..6f37923f 100644 --- a/source/gui/CMakeLists.txt +++ b/source/gui/CMakeLists.txt @@ -7,9 +7,6 @@ find_package(qplot REQUIRED) #OpenGL for plots #add_definitions(-DQCUSTOMPLOT_USE_OPENGL=1) - -#find package for QtColorWidgets - set(${this_target}_sources ${dir}/daquiri.cpp ${dir}/main.cpp @@ -34,17 +31,18 @@ set(${this_target}_headers ${dir}/UnitConverter.h ) -set(CMAKE_AUTOUIC ON) set(${this_target}_ui ${dir}/ProfilesForm.ui ${dir}/SettingsForm.ui ) +add_subdirectory(widgets) +add_subdirectory(daq) + qt5_add_resources(${this_target}_resources ${dir}/resources/daquiri.qrc) -add_subdirectory(widgets) -add_subdirectory(daq) +set(CMAKE_AUTOUIC ON) add_executable( ${this_target} @@ -57,7 +55,6 @@ add_executable( target_include_directories( ${this_target} PRIVATE ${PROJECT_SOURCE_DIR}/source - PRIVATE ${${this_target}_include_dirs} ) target_link_libraries( diff --git a/source/gui/ProfilesForm.cpp b/source/gui/ProfilesForm.cpp index 57261f7b..0e38ed10 100644 --- a/source/gui/ProfilesForm.cpp +++ b/source/gui/ProfilesForm.cpp @@ -1,5 +1,5 @@ #include -#include "ui_ProfilesForm.h" +#include #include #include diff --git a/source/gui/SettingsForm.cpp b/source/gui/SettingsForm.cpp index 7d646d9b..801d83a3 100644 --- a/source/gui/SettingsForm.cpp +++ b/source/gui/SettingsForm.cpp @@ -1,5 +1,5 @@ #include -#include "ui_SettingsForm.h" +#include #include #include diff --git a/source/gui/daq/ConsumerDialog.cpp b/source/gui/daq/ConsumerDialog.cpp index 5ad4fad2..27ac37f2 100644 --- a/source/gui/daq/ConsumerDialog.cpp +++ b/source/gui/daq/ConsumerDialog.cpp @@ -1,5 +1,6 @@ #include -#include "ui_ConsumerDialog.h" +#include + #include #include #include diff --git a/source/gui/daq/ConsumerTemplatesForm.cpp b/source/gui/daq/ConsumerTemplatesForm.cpp index 535d3498..7659b22e 100644 --- a/source/gui/daq/ConsumerTemplatesForm.cpp +++ b/source/gui/daq/ConsumerTemplatesForm.cpp @@ -1,5 +1,5 @@ #include -#include "ui_ConsumerTemplatesForm.h" +#include #include #include diff --git a/source/gui/daq/ListModeForm.cpp b/source/gui/daq/ListModeForm.cpp index f747d986..0a7d04aa 100644 --- a/source/gui/daq/ListModeForm.cpp +++ b/source/gui/daq/ListModeForm.cpp @@ -1,5 +1,5 @@ #include -#include "ui_ListModeForm.h" +#include #include #include diff --git a/source/gui/daq/ProjectForm.cpp b/source/gui/daq/ProjectForm.cpp index ffbfba70..c7a7f3e4 100644 --- a/source/gui/daq/ProjectForm.cpp +++ b/source/gui/daq/ProjectForm.cpp @@ -1,5 +1,5 @@ #include -#include "ui_ProjectForm.h" +#include #include #include diff --git a/source/gui/daq/ProjectView.cpp b/source/gui/daq/ProjectView.cpp index 382e2f64..76a098bd 100644 --- a/source/gui/daq/ProjectView.cpp +++ b/source/gui/daq/ProjectView.cpp @@ -1,5 +1,5 @@ #include -#include "ui_ProjectView.h" +#include #include #include diff --git a/source/gui/daquiri.cpp b/source/gui/daquiri.cpp index 32e4ade1..0ce8c6d7 100644 --- a/source/gui/daquiri.cpp +++ b/source/gui/daquiri.cpp @@ -1,5 +1,5 @@ #include -#include "ui_daquiri.h" +#include #include #include diff --git a/source/gui/widgets/TimeDurationWidget.cpp b/source/gui/widgets/TimeDurationWidget.cpp index 12210c79..7bb9f260 100644 --- a/source/gui/widgets/TimeDurationWidget.cpp +++ b/source/gui/widgets/TimeDurationWidget.cpp @@ -1,5 +1,6 @@ #include -#include "ui_TimeDurationWidget.h" +#include + #include #include diff --git a/tests/gui/CMakeLists.txt b/tests/gui/CMakeLists.txt index 2e060e21..d5d5e463 100644 --- a/tests/gui/CMakeLists.txt +++ b/tests/gui/CMakeLists.txt @@ -5,7 +5,7 @@ set(dir ${CMAKE_CURRENT_SOURCE_DIR}) include(QtLibraryConfig) add_executable( - ${this_target} + ${this_target} EXCLUDE_FROM_ALL QTimeExtensions.cpp ../../source/gui/widgets/QTimeExtensions.cpp )