blob: 44726946bd33a7fadd27db639aea82650bfb5d62 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
|
parameters:
- name: uhdSrcDir
type: string
- name: uhdBuildDir
type: string
- name: uhdGenerateTestBinaries
type: boolean
default: false
steps:
- script: |
mkdir -p ${{ parameters.uhdBuildDir }}
cd ${{ parameters.uhdBuildDir }}
pyenv exec python3 -m venv ${{ parameters.uhdBuildDir }}/pyenv
source ${{ parameters.uhdBuildDir }}/pyenv/bin/activate
python3 -m pip install mako numpy requests ruamel.yaml
displayName: Install python UHD deps
- script: |
mkdir -p ${{ parameters.uhdBuildDir }}
cd ${{ parameters.uhdBuildDir }}
source ${{ parameters.uhdBuildDir }}/pyenv/bin/activate
if [[ "${{ parameters.uhdGenerateTestBinaries }}" = "True" ]]; then
mkdir -p ${{ parameters.uhdBuildDir }}-installed
echo "Setting CMAKE_INSTALL_PREFIX to ${{ parameters.uhdBuildDir }}-installed"
export UHD_CI_CMAKE_OPTIONS="-DCMAKE_INSTALL_PREFIX=${{ parameters.uhdBuildDir }}-installed"
fi
cmake \
$UHD_CI_CMAKE_OPTIONS \
-DENABLE_SIM=OFF \
${{ parameters.uhdSrcDir }}/host
displayName: cmake homebrew macOS UHD
- script: |
cd ${{ parameters.uhdBuildDir }}
source ${{ parameters.uhdBuildDir }}/pyenv/bin/activate
make -j$(sysctl -n hw.ncpu) -k
displayName: make homebrew macOS UHD
- script: |
cd ${{ parameters.uhdBuildDir }}
ctest --no-compress-output --output-on-failure -T test
continueOnError: true
displayName: ctest make homebrew macOS UHD
- script: |
cd ${{ parameters.uhdBuildDir }}
source ${{ parameters.uhdBuildDir }}/pyenv/bin/activate
make install
displayName: Install uhd to uhdBuildDir-installed
condition: and(succeeded(), ${{ parameters.uhdGenerateTestBinaries }})
# init_usrp is an example for how to write third-party apps using CMake that
# link against UHD. This will test the UHDConfig.cmake (and related) CMake
# files, as well as the example. We can only do this if UHD was previously
# installed.
# We need to match the install prefix with the previous step in order to find
# UHDConfig.cmake.
- script: |
export EXAMPLE_BUILD_DIR="${{ parameters.uhdBuildDir }}/build_init_usrp"
export EXAMPLE_SRC_DIR="${{ parameters.uhdSrcDir }}/host/examples/init_usrp"
mkdir -p $EXAMPLE_BUILD_DIR
cd $EXAMPLE_BUILD_DIR
source ${{ parameters.uhdBuildDir }}/pyenv/bin/activate
cmake \
-DENABLE_SIM=OFF \
-DCMAKE_INSTALL_PREFIX=${{ parameters.uhdBuildDir }}-installed \
-DCMAKE_PREFIX_PATH=${{ parameters.uhdBuildDir }}-installed \
$EXAMPLE_SRC_DIR && \
make -j$(sysctl -n hw.ncpu) -k
displayName: Build init_usrp
condition: and(succeeded(), ${{ parameters.uhdGenerateTestBinaries }})
- script: |
rm -rf ${{ parameters.uhdBuildDir }}/pyenv
displayName: Delete venv
|