diff --git a/.github/scripts/install_libiio.sh b/.github/scripts/install_libiio.sh index c4b0123f3a..6f2b03c89c 100755 --- a/.github/scripts/install_libiio.sh +++ b/.github/scripts/install_libiio.sh @@ -1,9 +1,28 @@ #!/bin/bash + +# Set LIBIIO_BRANCH if not set +if [ -z "$LIBIIO_BRANCH" ]; then + LIBIIO_BRANCH="v0.25" +fi + sudo apt-get -qq update -sudo apt-get install -y git cmake graphviz libavahi-common-dev libavahi-client-dev libaio-dev libusb-1.0-0-dev libxml2-dev rpm tar bzip2 gzip flex bison git -git clone -b 'v0.25' --single-branch --depth 1 https://github.com/analogdevicesinc/libiio.git +sudo apt-get install -y git cmake graphviz libavahi-common-dev libavahi-client-dev libaio-dev libusb-1.0-0-dev libxml2-dev rpm tar bzip2 gzip flex bison git libzstd-dev +git clone -b $LIBIIO_BRANCH --single-branch --depth 1 https://github.com/analogdevicesinc/libiio.git cd libiio cmake . -DHAVE_DNS_SD=OFF make sudo make install cd .. +rm -rf libiio + +# Python pieces +sudo apt-get install -y python3-pip python3-setuptools +git clone -b $LIBIIO_BRANCH --single-branch --depth 1 https://github.com/analogdevicesinc/libiio.git +cd libiio +cmake . -DHAVE_DNS_SD=OFF -DPYTHON_BINDINGS=ON +make +cd bindings/python +pip install . +cd ../.. +cd .. +rm -rf libiio \ No newline at end of file diff --git a/.github/scripts/install_part_libs.sh b/.github/scripts/install_part_libs.sh index 5109bb93a2..c0bb0c6a9c 100755 --- a/.github/scripts/install_part_libs.sh +++ b/.github/scripts/install_part_libs.sh @@ -1,7 +1,17 @@ #!/bin/bash + +# Set LIBIIO_BRANCH if not set +if [ -z "$LIBIIO_BRANCH" ]; then + LIBIIO_BRANCH="v0.25" +fi + git clone -b 'master' --single-branch --depth 1 https://github.com/analogdevicesinc/libad9361-iio.git cd libad9361-iio -cmake -DPYTHON_BINDINGS=ON . +if [ "$LIBIIO_BRANCH" = "main" ]; then + cmake -DPYTHON_BINDINGS=ON -DLIBIIO_INCLUDEDIR=/usr/include/iio . +else + cmake -DPYTHON_BINDINGS=ON . +fi make cd bindings/python pip install . @@ -13,7 +23,11 @@ rm -rf libad9361-iio git clone -b 'master' --single-branch --depth 1 https://github.com/analogdevicesinc/libad9166-iio.git cd libad9166-iio -cmake -DPYTHON_BINDINGS=ON . +if [ "$LIBIIO_BRANCH" = "main" ]; then + cmake -DPYTHON_BINDINGS=ON -DLIBIIO_INCLUDEDIR=/usr/include/iio . +else + cmake -DPYTHON_BINDINGS=ON . +fi make cd bindings/python pip install . diff --git a/.github/scripts/install_pydeps.sh b/.github/scripts/install_pydeps.sh index 64849051cb..bdb2224afa 100644 --- a/.github/scripts/install_pydeps.sh +++ b/.github/scripts/install_pydeps.sh @@ -2,4 +2,9 @@ sudo apt-get install -y python3-pip python3-setuptools pip install -r requirements.txt pip install -r requirements_dev.txt -pip install pylibiio + +if [ "$LIBIIO_BRANCH" = "main" ]; then + pip install --no-deps --force-reinstall pytest-libiio@git+https://github.com/tfcollins/pytest-libiio.git@libiio-v1-support +else + pip install "pytest-libiio>=0.0.14" +fi \ No newline at end of file diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml index 0e7233e14b..e5c763ce74 100644 --- a/.github/workflows/test.yml +++ b/.github/workflows/test.yml @@ -8,6 +8,7 @@ jobs: strategy: matrix: python-version: [3.7, 3.8, 3.9, "3.10"] + libiio: ['main', 'v0.25'] steps: - uses: actions/checkout@v2 @@ -18,6 +19,7 @@ jobs: - name: Install dependencies run: | + export LIBIIO_BRANCH=${{ matrix.libiio }} bash ./.github/scripts/install_libiio.sh bash ./.github/scripts/install_pydeps.sh bash ./.github/scripts/install_part_libs.sh