Skip to content

ARM Updates, master branch (2020.11.05.)

These updates make it possible to build the "rest of the projects" on aarch64-centos7-gcc9-opt, as discussed in ATLINFR-3794. Following up from !767 (merged). With these updates included, I was able to build all projects with LCG_NIGHTLY=devARM/Tue. (In case of AnalysisBaseExternals I'm not setting up any LCG release of course.) Or almost... I also had to make a change locally that I wanted to discuss before making part of this MR.

To build PyModules successfully against the current devARM LCG nightlies, I had to make the following change in that package:

diff --git a/External/PyModules/requirements.txt b/External/PyModules/requirements.txt
index e15f80d..ef6830e 100644
--- a/External/PyModules/requirements.txt
+++ b/External/PyModules/requirements.txt
@@ -2,8 +2,13 @@
 # pip requirements file for External/PyModules
 #
 
-# Only install packages from our own pip repository:
---index-url https://atlas-software-dist-eos.web.cern.ch/atlas-software-dist-eos/externals/PyModules/repo
+# Specify our private repository, where we would ensure that all of these
+# packages remain available until the end of time.
+#
+# Note that we allow downloading packages from other sources as well, if they
+# are available from other sources. This is to support platforms on which LCG
+# may not provide all the same python modules that we have available for x86_64.
+--extra-index-url https://cern.ch/atlas-software-dist-eos/externals/PyModules/repo
 
 # List the packages and (their version) one per line:
 flake8==3.8.4

The devARM nightly is missing a lot of python packages at the moment. So to be able to build the modules that PyModules wants to build, pip needs to be allowed to download/build dependencies that would normally come from LCG. And only take packages from https://cern.ch/atlas-software-dist-eos/externals/PyModules/repo that it can't find in its own repositories.

I'm not happy about such a change however... Hopefully the LCG nightly will receive all the python modules that we need before we would try to use it seriously. So I'm hesitant to make this change just to make the ARM builds work out of the box. What do you think @fwinkl?

Merge request reports