JACoW logo

Journals of Accelerator Conferences Website (JACoW)

'Journal of Accelerator Conferences Website' (JACoW) is a publisher in Geneva, Switzerland that publishes the proceedings of accelerator conferences held around the world by an international collaboration of editors.


https://doi.org/10.18429/JACoW-ICALEPCS2021-MOPV041
Title Modernisation of the Toolchain and Continuous Integration of Front-End Computer Software at CERN
Authors
  • P. Mantion, S. Deghaye, L. Fiszer, F. Irannejad, J. Lauener, M. Voelkle
    CERN, Geneva, Switzerland
Abstract Building C++ software for low-level computers requires carefully tested frameworks and libraries. The major difficulties in building C++ software are to ensure that the artifacts are compatible with the target system’s (OS, Application Binary Interface), and to ensure that transitive dependent libraries are compatible when linked together. Thus developers/maintainers must be provided with efficient tooling for friction-less workflows: standardisation of the project description and build, automatic CI, flexible development environment. The open-source community with services like Github and Gitlab have set high expectations with regards to developer user experience. This paper describes how we leveraged Conan and CMake to standardise the build of C++ projects, avoid the "dependency hell" and provide an easy way to distribute C++ packages. A CI system orchestrated by Jenkins and based on automatic job definition and in-source, versioned, configuration has been implemented. The developer experience is further enhanced by wrapping the common flows (compile, test, release) into a command line tool, which also helps transitioning from the legacy build system (legacy makefiles, SVN).
Paper download MOPV041.PDF [1.026 MB / 6 pages]
Poster download MOPV041_POSTER.PDF [1.227 MB]
Cite download ※ BibTeX LaTeXText/WordRISEndNote
Conference ICALEPCS2021
Series International Conference on Accelerator and Large Experimental Physics Control Systems (18th)
Location Shanghai, China
Date 14-22 October 2021
Publisher JACoW Publishing, Geneva, Switzerland
Editorial Board Kazuro Furukawa (KEK, Tsukuba, Japan); Yingbing Yan (SARI,Shanghai, China); Yongbin Leng (SARI,Shanghai, China); Zhichu Chen (SARI,Shanghai, China); Volker RW Schaa (GSI, Darmstadt, Germany)
Online ISBN 978-3-95450-221-9
Online ISSN 2226-0358
Received 07 October 2021
Accepted 17 November 2021
Issue Date 10 February 2022
DOI doi:10.18429/JACoW-ICALEPCS2021-MOPV041
Pages 242-247
Copyright
Creative Commons CC logoPublished by JACoW Publishing under the terms of the Creative Commons Attribution 3.0 International license. Any further distribution of this work must maintain attribution to the author(s), the published article's title, publisher, and DOI.