Skip to content

Commit

Permalink
Merge branch 'devel' into feature/cxx-standard-cache-var
Browse files Browse the repository at this point in the history
  • Loading branch information
amadio authored Oct 13, 2023
2 parents c56140a + e9293ef commit fa780ae
Show file tree
Hide file tree
Showing 251 changed files with 13,375 additions and 2,849 deletions.
2 changes: 1 addition & 1 deletion .gitattributes
Original file line number Diff line number Diff line change
@@ -1 +1 @@
VERSION_INFO export-subst
VERSION export-subst
88 changes: 35 additions & 53 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,9 +17,6 @@ concurrency:
group: build-${{ github.ref }}
cancel-in-progress: true

env:
USER_VERSION: v5.6-rc1

jobs:

cmake-almalinux8:
Expand Down Expand Up @@ -70,6 +67,7 @@ jobs:
run: |
cd ..
cmake \
--log-level=DEBUG \
-DCMAKE_CXX_STANDARD=17 \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_INSTALL_PREFIX=/usr \
Expand Down Expand Up @@ -156,6 +154,7 @@ jobs:
run: |
cd ..
cmake \
--log-level=DEBUG \
-DCMAKE_CXX_STANDARD=17 \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_INSTALL_PREFIX=/usr \
Expand Down Expand Up @@ -235,6 +234,7 @@ jobs:
# need to fix ownership not to confuse git
chown -R -v "$( id -u; ):$( id -g; )" xrootd
cmake \
--log-level=DEBUG \
-DCMAKE_CXX_STANDARD=17 \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DCMAKE_INSTALL_PREFIX=/usr \
Expand Down Expand Up @@ -314,6 +314,7 @@ jobs:
. /opt/rh/devtoolset-7/enable
cd ..
cmake3 \
--log-level=DEBUG \
-DCMAKE_INSTALL_PREFIX=/usr/local/ \
-DPython_EXECUTABLE=$(command -v python3) \
-DENABLE_TESTS=ON \
Expand Down Expand Up @@ -387,6 +388,7 @@ jobs:
. /opt/rh/devtoolset-7/enable
cd ..
cmake3 \
--log-level=DEBUG \
-DCMAKE_INSTALL_PREFIX=/usr/local/ \
-DPython_EXECUTABLE=$(command -v python3) \
-DENABLE_TESTS=ON \
Expand Down Expand Up @@ -457,6 +459,7 @@ jobs:
. /opt/rh/devtoolset-7/enable
cd ..
cmake3 \
--log-level=DEBUG \
-DCMAKE_INSTALL_PREFIX=/usr/ \
-DPython_EXECUTABLE=$(command -v python2) \
-DENABLE_TESTS=ON \
Expand Down Expand Up @@ -521,6 +524,7 @@ jobs:
run: |
cd ..
cmake \
--log-level=DEBUG \
-DCMAKE_INSTALL_PREFIX=/usr \
-DPython_EXECUTABLE=$(command -v python3) \
-DENABLE_TESTS=ON \
Expand Down Expand Up @@ -553,75 +557,48 @@ jobs:

runs-on: macos-latest

env:
CC: clang
CXX: clang++
CMAKE_ARGS: "-DUSE_SYSTEM_ISAL=TRUE;-DINSTALL_PYTHON_BINDINGS=FALSE"
CMAKE_PREFIX_PATH: /usr/local/opt/openssl@3

steps:
- name: Install external dependencies with homebrew
- name: Install dependencies with Homebrew
run: |
brew install \
cmake \
cppunit \
make \
gcc \
googletest \
zlib \
krb5 \
ossp-uuid \
libxml2 \
openssl@3
brew install cmake cppunit davix googletest isa-l openssl@3 [email protected]
- name: Install necessary Python libraries
- name: Install Python dependencies with pip
run: |
python3 --version --version
python3 -m pip install --upgrade pip setuptools wheel
python3 -m pip list
python3 -m site
- name: Clone repository
uses: actions/checkout@v3
with:
fetch-depth: 0

# Given how homebrew installs things, openssl needs to be have its locations
# be given explicitly.
- name: Build with cmake
- name: Build and Run Tests with CTest
run: |
# workaround for issue #1772, should be removed when that's fixed
sudo sed -i -e "s/localhost/localhost $(hostname)/g" /etc/hosts
cd ..
cmake \
-DCMAKE_C_COMPILER=clang \
-DCMAKE_CXX_COMPILER=clang++ \
-DCMAKE_INSTALL_PREFIX=/usr/local/ \
-DCMAKE_PREFIX_PATH=/usr/local/opt/openssl@3 \
-DPython_EXECUTABLE=$(command -v python3) \
-DENABLE_TESTS=ON \
-DPIP_OPTIONS="--verbose" \
-S xrootd \
-B build
cmake build -LH
cmake \
--build build \
--clean-first \
--parallel $(($(sysctl -n hw.ncpu) - 1))
cmake --build build --target install
python3 -m pip install --user build/bindings/python
python3 -m pip list
ctest -VV -S test.cmake
- name: Run tests with CTest
run: |
ctest --output-on-failure --test-dir ../build
- name: Install with CMake
run: cmake --install build

- name: Verify install
run: |
command -v xrootd
command -v xrdcp
- name: Install Python Bindings
run: python3 -m pip install --verbose --use-pep517 --user build/bindings/python

- name: Verify Python bindings
- name: Run Post-install Tests
run: |
export DYLD_LIBRARY_PATH=/usr/local/lib
python3 --version --version
python3 -m pip list
xrdcp --version
python3 -c 'import XRootD; print(XRootD);'
python3 -c 'from pyxrootd import client; print(client);'
python3 -c 'from pyxrootd import client; print(client.XrdVersion_cpp())'
python3 -c 'from XRootD import client; print(client.FileSystem("root://localhost:1094"))'
python3 -m pip show xrootd
python3 -c 'import XRootD; print(XRootD)'
python3 -c 'import pyxrootd; print(pyxrootd)'
python3 -c 'from XRootD import client; print(client.FileSystem("root://someserver:1094"))'
rpm-centos7:

Expand Down Expand Up @@ -856,6 +833,7 @@ jobs:

- name: Build sdist using publishing workflow
run: |
. /opt/rh/devtoolset-7/enable
cp packaging/wheel/* .
./publish.sh
python3 -m pip --verbose install --upgrade ./dist/xrootd-*.tar.gz
Expand Down Expand Up @@ -913,6 +891,7 @@ jobs:

- name: Build sdist using publishing workflow
run: |
. /opt/rh/devtoolset-7/enable
cp packaging/wheel/* .
./publish.sh
python3 -m pip --verbose install --upgrade ./dist/xrootd-*.tar.gz
Expand Down Expand Up @@ -957,6 +936,9 @@ jobs:
pkg-config \
tree
sudo apt-get autoclean -y
# Remove packages with invalid versions which cause sdist build to fail
sudo apt-get remove python3-debian python3-distro-info
python3 -m pip --no-cache-dir install --upgrade pip setuptools wheel
python3 -m pip list
- name: Clone repository
Expand Down
1 change: 0 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -59,4 +59,3 @@ test/testconfig.sh
xrootd.spec
dist
*.egg-info
bindings/python/VERSION
Loading

0 comments on commit fa780ae

Please sign in to comment.