update project template
- reduce to template
- removed check if required input variables are set, since it does not work (and never did)
- renamed some variables exported to depending projects, to be more cmake-like ${PROJECT_NAME}_CPPFLAGS -> ${PROJECT_NAME}_CXX_FLAGS ${PROJECT_NAME}_LDFLAGS -> ${PROJECT_NAME}_LINK_FLAGS
- added .project to the gitignore list
- added support for the --mexflags option. needs still testing
- fixed using the wrong variable names
- added @ONLY to configure_file again, since it destroys some code otherwise
- fixed issue with compiler/linker flags being interpreted as lists and thus having semicolons in between
- imported FindDOOCS script
- removed some unneeded lines
- Use FindLibrary() cmake command to properly locate the library, even if the directory is already known. This is needed to get the proper full path reference to the library.
- removed @PROJECT_NAME@_LIBRARIES from the required variables since the package might not provide a library
- updated the usage description
- added a variable @PROJECT_NAME@_PREFIX and use it as the required variable to make a nicer output when depending projects find this package
- fix for depending Makefile projects: do not add -l option to full-path library names
- updated documentation, especially added a warning not to modify these files inside a project
- fixed wrong FOUND_VAR (was by default <UPPERCASED_NAME>_FOUND)
- added workaround for cmake versions older than 2.8.11 (as used on Ubuntu 12.04)
- Capture only coverage data for the current project in the first place, instead of extracting it from all coverage data in a second step. This seems to be needed as extraction spuriously might fail in some cases.
- Revert "Capture only coverage data for the current project in the first place, instead of extracting it from all coverage data in a second step. This seems to be needed as extraction spuriously might fail in some cases."
- added exclution of the build directory to the coverage makefile
- Added make_debian_package script to the project template
- added non-modification warning to the new script
- fixed typo in debian packaging script
- fixed generation of @PROJECT_NAME@_found for CMake < 2.8.11
- fixed spaces in the PROJECT_NAME-config template
- added file to indicate that a project is using the project-template
- Added sections to the .gitignore file.
- Fixes in create_cmake_config_files script: - Quotes around input variables when doing string replace avoid existing semicolons from being deleted. - The project target library itself was missing in the linker flags.
- added an ignore pattern for vi
- added make_coverage.sh.in and deprecated Makefile.coverage.in
- clone from source directory when creating a debian package
- Added the new getDebianBuildVersion script and use it inside make_debian_package.sh.in to obtain the version IMPORTANT: Projects importing this commit must edit the (newly created) DebianPackaging.config file!
- fixed taking getDebianBuildVersion from the wrong directory
- fixed wrong quotes
- fixed not using getDebianBuildVersion correctly
- added cmake script to set the version number cmake variables as needed by other scripts of the project-template
- properly pass the build version to the cmake building the library inside the Debian packaging tools
- added add_dependency macro
- fixed wrong directory name
- fixed a typo
- fixed wrong order of commands... need to obtain versions first
- removed the patch level from the build directory name, as expected by Debian
-
- replace #DEBVERSION# in files ending on .template in the debian_from_template directory - replace DEBVERSION in file names in the debian_from_template directory This is needed, since the debian version is not yet known in cmake.
- also replace #SOVERSION# since it also depends on the build version
- replaced an old variable name with the new version
- fixed that the configuration for loop for replacing the DEBVERSION and SOVERSION in the debian_from_template was running on the wrong (non-existing) directory
- added prepare_debian_package.cmake (currently just a copy of the version in the DOOCSwrappers library)
- added some documentation
- added an option to build using pbuilder
- added commands to maintain the pbuilder environment more easily
- removed stuff for debian packaging, since this is now handled by external scripts
- undid the changes to use pbuilder in make_debian_package.sh. This conceptualluy does not work and will completely be changed in future.
- use readelf instead of readlink to extract the DOOCS version and do not strip the system-dependent part of the version (e.g. -xenial1), since it is needed to identify the version correctly.
- removed already deprecated prepare_debian_package.cmake, which has just been added and will unnecessarily cause conflicts in the anyway deprecated way to create debian packages
- made the script a bit more generic to potentially also work with non-project-template dependencies
- added option to include the zqm library (to be tested)
- fixed multiple components not properly being passed on to find_package
- fixed CXX_FLAGS etc. not properly set after last commit
- fixed that the script did not fail when one of the components was not found
- added script to enable the C++ 11 support
- changed order of libraries so that the dependencies come after the dependents.
- need to find DOOCS_DIR first, since this is the variable which might be specified at the cmake command line
- look for the other DOOCS components in the same directory as the client
- Added new
dapi
component in FindDOOCS.cmake module. - added script to enable coverage report
- added TINE_EXPORT C macro/constant to the compiler flags, which seens to be required for the latest DOOCS version
- Just defining TINE_EXPORT was not enough, so we set it to a space instead
- also set CXX_FLAGS from the dependency
- export FOUND flag to the calling CMakeLists.txt
- Fixed the confusing and inconsistently used names *_LINK_FLAGS and *_LINKER_FLAGS by always setting and getting both variables
- use readelf instead of readlink to detect the DOOCS version (imported change from doocsllrfwrapper)
- fixed wrong quotes when setting the TINE_EXPORT C preprocessor symbol to a space
- added ignore pattern for KDevelop 4 project files
- also export the LIBRARY_DIRS variable to the calling CMakeLists.txt (needed to publish it to further downstream dependencies)
- added include script to generate doxygen documentation from cmake/Doxyfile.in
- added missing exports to parent scope in add_dependency macro
- Added instructions how to use the project template.
- added ddaq as component to FindDOOCS.cmake
- added cmake module to search for readline
- fixed wrong case (just a cosmetic change)
- Ignore configuration files for Visual Studio Code.
- updated the DESY logo
- added ChimeraTK logo
- also export the PREFIX variable
- added CMakeLists.txt.user to gitignore (project file for Qt Creator)
- add enable_latest_cxx_support.cmake and added a comment to enable_cxx11_support.cmake to no longer use is.
- fixed not setting anything newer than c++11
- updated HowTo file and formatted it properly with markdown
- added FindFFTW to project template. Needed by several middle layer servers
- Add easier steps to use the template
- Add Doxyfile.in
- fixed installation of cmake find_package script / configuration file
- added missing <PROJECT_NAME>ConfigVersion.cmake in create_cmake_config_files macro
- project-template: use GNUInstallDirs to determin install destionations
- Revert "project-template: use GNUInstallDirs to determin install destionations"
- removed last occurance of mtca4u in an example text
- Introduced cmake module registerTests:
- revised option names:
- do not fail if gcov crashes, since this is basically out of our control
- fixed adding the new option to the wrong line in the last commit
- register_tests now takes working directory.
- Add files via upload
- fix issue that a double "-l" can appear in the Makefile config shell scripts for libraries which already contain the -l
- DOOCS needs libgul now, so link against it
- Support case insensitive CMAKE_BUILD_TYPE
- Bugfix:
- project-template: improved Doxygen template
- project-template: exclude tests from Doxygen documentation
- Make doxygen pick up markdown.
- removed wrong example path
- introduced: set_default_build_type_to_release.cmake
- rename:
- FindDoocs: Make sure readelf output is english
- added daqreader in FindDOOCS.cmake
- removed enable_cxx11_support.cmake, as we must not use it any more
- added set_default_flags.cmake makro
- changed default build type to RelWithDebugInfo
- fixed set_default_flags.cmake macro
- set also C flags
- Add public dependencies to Config.cmake
- Use find_dependency instead of find_package
- Revert "Use find_dependency instead of find_package"
- Added module to select ControlSystemAdapter for ApplicationCore servers
- Resolve cmake targets in the config scripts
- add two more ignores related to eclipse projects.
- project_template: FindDoocs can now also find libgul14.so
- added FindMako (to find the python mako module)
- move FindMako.cmake into the right directory
- added find script for the config generator
- added cmake include for config-generator-based projects
- correct version of config generator base script
- change installation directory
- FindDoocs treats missing required components correctly (does not succeed)
- added eqdaqdatalib as component to FindDoocs
- Add .clang-format to project template
- Corrected install directory in FindConfigGenerator.cmake
- use pkg_config to find doocs
- FindDOOCS: fix wrong linking order e.g. in case of the doocs adapter
- FindDOOCS: extend PKG_CONFIG_PATH by directory set via DOOCS_DIR (if set) and the hardcoded default in /export/doocs/...
- FindDOOCS: add thread library (required by DOOCS but not mentioned through pkg-config)
- fix dep. for daqreader
- remove tests from exclude pattern
- doxygen: Bump DOT_GRAPH_MAX_NODES (needed at least in AC)
- FindDOOCS: Force linking against libtinemt
- FindDOOCS: Fix typo time -> tine
- FindDOOCS: More work-around for dev-libtine
- FindDOOCS: Remove accidental duplication
- Add support for USE_TSAN flag according to https://github.com/ChimeraTK/project-template/issues/13
- Add -g flag to default flag for Debug builds.
- renamed flag USE_TSAN to ENABLE_TSAN
- Make tsan/asan dedicated cmake build types
- enable_latest_cxx_support also sets CMAKE_CXX_STANDARD (needed for Qt projects)
- remove CMAKE_CXX_STANDARD since cmake 3.5.1 (Ubuntu 16.04) does not support "17" as a value yet
- Set CMAKE_CXX_STANDARD in enable_latest_cxx_support only if cmake version supports it.
- Revert "Set CMAKE_CXX_STANDARD in enable_latest_cxx_support only if cmake version supports it."
- Removed libtine linking workaround from FindDOOCS. Doocs libraries now are themselves linked correctly against tine.
- Make coverage on Debug opt-out
- fix ${@PROJECTNAME@_LIBRARIES} being unusable for header-only libraries
- add macro to find gcc's atomic library
- Removed compiler limitiation of FindGccAtomic.cmake. It's also needed/used for llvm/clang.
- added support for pkgconfig
- added helper macros for (boost) python bindings
- config generator: fix not copying TestFacility from scripts project to build directory
- Add work around for broken DOOCS pkg-config files breaking linkage
- Make the coverage script build-system agnostic
- project-template: FindDOOCS now links clientlib first
- project-template: link against tine explicitly
- doc: Set -dNOSAFER environment for ghostscript
- file GLOB with symlinks for settings file
- project-template: update Doxyfile for doxygen version of Ubuntu 20.04
- Consolidate coverage options
- Ignore eclipse python project file.
- project-template: update clang-format (ReflowComments)
- project-template: update clang-format configuration
- [project-template] add coding style checker
- Ignore files generated by CMake during configure
- project-template: add comment to clang-format
- project-template: increase DOT_GRAPH_MAX_NODES
- project-template: allow non-DESY copyright owners
- set IMAGE_PATH
- project-template: make config_generator_project future proof
- Added EPICS7IOC as option to set_control_system_adapter
- Added FindlibYajl.cmake script
- project-template: add python coverage report
- project-template: support ConfigGenerator shared directory (#9802)
- project-template: add Python formatting rules
- project-template: add vs code workspace files to gitignore
- project-template: add .cache to gitignore (VSCode)
- coding-style-check: Skip if clang-format not found (#23)
- project-template: add -fno-inline to tsan flags (#24)
- Wip/11221 modernize cmake (#25)
- project-template: use lib install dir defined by GNUInstallDirs (#26)
- project-template: update for config generator 3.0 (#11327)
- let cmake set useful rpath on installation of binaries
- fix(project-template): remove extra rpath from DOOCS imported targets
- fix(project-template): cmake dev warning in FindDOOCS
- fix(project-template): imported targets for set_csa
- chore(project-template): warn about add_dependency use
- fix(project-template): for cmake 3.16 (Ubuntu 20.04)
- Increased required version of EPICS-IOC- and EPICS7-IOC-Adapter (#32)
- Enable _GLIBCXX_ASSERTIONS in Debug mode (#33)
- project-template: prepend pkgconfig for user-set DOOCS_DIR
- chore: update Python bindings helper