Skip to content
Snippets Groups Projects
  1. Jul 04, 2019
  2. Jul 03, 2019
    • Attila Krasznahorkay's avatar
      Fixed the XRootD build with GCC 8. · 594c4c3f
      Attila Krasznahorkay authored
      With GCC 8 one strncpy(...) call in the XRootD source produces a warning
      from -Wstringop-truncation. Which, because of the usage of -Werror in
      the build, results in a build failure.
      
      But I checked, the code that produces the warning/error, is safe. The
      resulting string always ends up being null-terminated, the XRootD
      developers made sure of that.
      
      Since tweaking the XRootD build flags through CMake is almost impossible,
      as the flags are set up in a very hardcoded way in XRootD's CMake
      configuration, it seemed best to just disable this flag for the one
      source file that produced it. (And in which I checked that the code
      was actually working correctly.)
      594c4c3f
    • Attila Krasznahorkay's avatar
      Taught the Boost build to use C++14/17 explicitly. · c22c0997
      Attila Krasznahorkay authored
      I'm actually a bit surprised that the C++14 based analysis release
      builds didn't run into any issues so far. :-/
      c22c0997
  3. Jun 13, 2019
  4. Jun 11, 2019
    • Frank Winklmeier's avatar
      PyModules: Use pip for package build/install · 6ac1a3b6
      Frank Winklmeier authored
      Migrated to `pip` for external python package build and installation.
      The source of the packages is still
      
      http://cern.ch/atlas-software-dist-eos/externals/PyModules
      
      but this area is now organized as a proper PyPA repository following
      https://packaging.python.org/guides/hosting-your-own-index.
      
      The advantages over the use of `setuptools` are:
      - Rely on `pip` to resolve the dependencies. We just need to make sure
        that the required dependencies are either available via LCG or
        manually added to the above repository.
      - There is no global `easy-install.pth` file to be maintained and we can
        install python modules via multiple packages (e.g. PyAnalysis,
        PyModules) into the same installation area without the need of a
        post-build merge.
      - The executable scripts created by `setuptools` are not optimal in our
        environment (see https://gitlab.com/pycqa/flake8/issues/537).
      
      The `pip install` command is run with several additional options:
      - `--user`: This is the main "trick" to get `pip` install everything into
        our temporary installation directory (set by `$PYTHONUSERBASE`). The
        advantage over using `--prefix` is that `pip` will never try to
        "uninstall" outdated dependencies coming e.g. from the read-only LCG
        area. Instead it will simply install the newer version.
      - `--index-url`: Use our own repository as the one and only repository
        to look for packages and dependencies.
      - `--disable-pip-version-check`: Disables version check of the `pip`
        executable itself
      - `--no-warn-script-location`: Disable check that installed executables
        are indeed on `$PATH`. Since we install into a temporary directory
        first, this warning is always triggered.
      - `--no-warn-conflicts`: Without this `pip` would warn about any
        existing conflicts (e.g. within the packages from LCG).
      - `--no-cache-dir`: By default `pip` caches downloaded files and build
        products in `~/.cache/pip`. This speeds up subsequent builds but
        since we have `cmake` to take care of that it is probably better to
        disable this to avoid any chance of cross-talk.
      
      To avoid issues with concurrent pip installations, we use a single `pip
      install` command (using a requirements file) to do the installation. We
      loose the ability to install the modules in parallel but it is
      questionable if pip properly supports that to begin with.
      6ac1a3b6
  5. May 31, 2019
    • Attila Krasznahorkay's avatar
      Removing the installation race conditions from PyModules. · 23462a91
      Attila Krasznahorkay authored
      Since this package allows a bunch of python modules to build themselves
      in parallel, we need to be careful with how we install them from their
      temporary installation directory into the CMake build directory.
      
      Instead of doing that installation separately with each python module's
      build, the package now has a single target that does this installation.
      Which only runs once all the python modules finished building/installing
      themselves into that temporary installation directory.
      23462a91
  6. May 19, 2019
  7. May 18, 2019
  8. May 08, 2019
  9. May 07, 2019
  10. May 03, 2019
  11. Apr 30, 2019
  12. Apr 29, 2019
  13. Apr 12, 2019
  14. Apr 11, 2019
  15. Apr 10, 2019
  16. Apr 08, 2019
    • Attila Krasznahorkay's avatar
      Updated the GDB build instructions. · 2e1167b8
      Attila Krasznahorkay authored
      First to make sure that the build uses all available CPU cores efficiently,
      and then updated the build setup of resolveAtlasAddr2Line to take the
      recent changes in atlas_add_executable(...) into account.
      2e1167b8
  17. Apr 05, 2019
  18. Mar 25, 2019
  19. Mar 22, 2019
  20. Mar 13, 2019
  21. Mar 12, 2019
  22. Mar 06, 2019
Loading