| name: ubuntu-20.04 |
| |
| on: [ push, pull_request ] |
| |
| env: |
| _CFLAGS: -O2 -Wformat -Wformat-security -Wall -Werror -D_FORTIFY_SOURCE=2 -fstack-protector-strong |
| |
| jobs: |
| clang11: |
| runs-on: ubuntu-20.04 |
| env: |
| CC: /usr/bin/clang-11 |
| CXX: /usr/bin/clang++-11 |
| ASM: /usr/bin/clang-11 |
| steps: |
| - name: checkout media-driver |
| uses: actions/checkout@v2 |
| with: |
| path: media |
| - name: checkout libva |
| uses: actions/checkout@v2 |
| with: |
| repository: intel/libva |
| path: libva |
| - name: checkout gmmlib |
| uses: actions/checkout@v2 |
| with: |
| repository: intel/gmmlib |
| path: gmmlib |
| - name: install toolchain |
| run: | |
| if [[ -e $CC && -e $CXX ]]; then \ |
| echo "clang-11 already presents in the image"; \ |
| else \ |
| echo "clang-11 missed in the image, installing from llvm"; \ |
| echo "deb [trusted=yes] http://apt.llvm.org/focal/ llvm-toolchain-focal-11 main" | sudo tee -a /etc/apt/sources.list; \ |
| sudo apt-get update; \ |
| sudo apt-get install -y --no-install-recommends clang-11; \ |
| fi |
| - name: install prerequisites |
| run: | |
| sudo apt-get update |
| sudo apt-get install -y --no-install-recommends \ |
| cmake \ |
| libdrm-dev \ |
| libegl1-mesa-dev \ |
| libgl1-mesa-dev \ |
| libx11-dev \ |
| libxext-dev \ |
| libxfixes-dev \ |
| libwayland-dev \ |
| make |
| - name: print tools versions |
| run: | |
| cmake --version |
| $CC --version |
| $CXX --version |
| - name: build libva |
| run: | |
| cd libva |
| ./autogen.sh --prefix=/usr --libdir=/usr/lib/x86_64-linux-gnu |
| make -j$(nproc) |
| sudo make install |
| - name: build gmmlib |
| run: | |
| cd gmmlib |
| mkdir build && cd build |
| cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_LIBDIR=/usr/lib/x86_64-linux-gnu .. |
| make VERBOSE=1 -j$(nproc) |
| sudo make install |
| - name: build media-driver |
| run: | |
| cd media |
| mkdir build && cd build |
| cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_LIBDIR=/usr/lib/x86_64-linux-gnu \ |
| -DCMAKE_C_FLAGS_RELEASE="$_CFLAGS" \ |
| -DCMAKE_CXX_FLAGS_RELEASE="$_CFLAGS" \ |
| .. |
| make VERBOSE=1 -j$(nproc) |
| sudo make install |
| |
| gcc-10: |
| runs-on: ubuntu-20.04 |
| env: |
| CC: /usr/bin/gcc-10 |
| CXX: /usr/bin/g++-10 |
| ASM: /usr/bin/gcc-10 |
| steps: |
| - name: checkout media-driver |
| uses: actions/checkout@v2 |
| with: |
| path: media |
| - name: checkout libva |
| uses: actions/checkout@v2 |
| with: |
| repository: intel/libva |
| path: libva |
| - name: checkout gmmlib |
| uses: actions/checkout@v2 |
| with: |
| repository: intel/gmmlib |
| path: gmmlib |
| - name: install prerequisites |
| run: | |
| sudo apt-get update |
| sudo apt-get install -y --no-install-recommends \ |
| cmake \ |
| libdrm-dev \ |
| libegl1-mesa-dev \ |
| libgl1-mesa-dev \ |
| libx11-dev \ |
| libxext-dev \ |
| libxfixes-dev \ |
| libwayland-dev \ |
| make |
| - name: print tools versions |
| run: | |
| cmake --version |
| $CC --version |
| $CXX --version |
| - name: build libva |
| run: | |
| cd libva |
| ./autogen.sh --prefix=/usr --libdir=/usr/lib/x86_64-linux-gnu |
| make -j$(nproc) |
| sudo make install |
| - name: build gmmlib |
| run: | |
| cd gmmlib |
| mkdir build && cd build |
| cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_LIBDIR=/usr/lib/x86_64-linux-gnu .. |
| make VERBOSE=1 -j$(nproc) |
| sudo make install |
| - name: build media-driver |
| run: | |
| cd media |
| mkdir build && cd build |
| cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_LIBDIR=/usr/lib/x86_64-linux-gnu \ |
| -DCMAKE_C_FLAGS_RELEASE="$_CFLAGS" \ |
| -DCMAKE_CXX_FLAGS_RELEASE="$_CFLAGS" \ |
| .. |
| make VERBOSE=1 -j$(nproc) |
| sudo make install |
| |
| gcc-10-production-kmd: |
| runs-on: ubuntu-20.04 |
| env: |
| CC: /usr/bin/gcc-10 |
| CXX: /usr/bin/g++-10 |
| ASM: /usr/bin/gcc-10 |
| steps: |
| - name: checkout media-driver |
| uses: actions/checkout@v2 |
| with: |
| path: media |
| - name: checkout libva |
| uses: actions/checkout@v2 |
| with: |
| repository: intel/libva |
| path: libva |
| - name: checkout gmmlib |
| uses: actions/checkout@v2 |
| with: |
| repository: intel/gmmlib |
| path: gmmlib |
| - name: install prerequisites |
| run: | |
| sudo apt-get update |
| sudo apt-get install -y --no-install-recommends \ |
| cmake \ |
| libdrm-dev \ |
| libegl1-mesa-dev \ |
| libgl1-mesa-dev \ |
| libx11-dev \ |
| libxext-dev \ |
| libxfixes-dev \ |
| libwayland-dev \ |
| make |
| - name: print tools versions |
| run: | |
| cmake --version |
| $CC --version |
| $CXX --version |
| - name: build libva |
| run: | |
| cd libva |
| ./autogen.sh --prefix=/usr --libdir=/usr/lib/x86_64-linux-gnu |
| make -j$(nproc) |
| sudo make install |
| - name: build gmmlib |
| run: | |
| cd gmmlib |
| mkdir build && cd build |
| cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_LIBDIR=/usr/lib/x86_64-linux-gnu .. |
| make VERBOSE=1 -j$(nproc) |
| sudo make install |
| - name: build media-driver |
| run: | |
| cd media |
| mkdir build && cd build |
| cmake -DENABLE_PRODUCTION_KMD=ON \ |
| -DCMAKE_INSTALL_PREFIX=/usr \ |
| -DCMAKE_INSTALL_LIBDIR=/usr/lib/x86_64-linux-gnu \ |
| -DCMAKE_C_FLAGS_RELEASE="$_CFLAGS" \ |
| -DCMAKE_CXX_FLAGS_RELEASE="$_CFLAGS" \ |
| .. |
| make VERBOSE=1 -j$(nproc) |
| sudo make install |
| |
| gcc-10-nonfree-kernels-off: |
| runs-on: ubuntu-20.04 |
| env: |
| CC: /usr/bin/gcc-10 |
| CXX: /usr/bin/g++-10 |
| ASM: /usr/bin/gcc-10 |
| steps: |
| - name: checkout media-driver |
| uses: actions/checkout@v2 |
| with: |
| path: media |
| - name: checkout libva |
| uses: actions/checkout@v2 |
| with: |
| repository: intel/libva |
| path: libva |
| - name: checkout gmmlib |
| uses: actions/checkout@v2 |
| with: |
| repository: intel/gmmlib |
| path: gmmlib |
| - name: install prerequisites |
| run: | |
| sudo apt-get update |
| sudo apt-get install -y --no-install-recommends \ |
| cmake \ |
| libdrm-dev \ |
| libegl1-mesa-dev \ |
| libgl1-mesa-dev \ |
| libx11-dev \ |
| libxext-dev \ |
| libxfixes-dev \ |
| libwayland-dev \ |
| make |
| - name: print tools versions |
| run: | |
| cmake --version |
| $CC --version |
| $CXX --version |
| - name: build libva |
| run: | |
| cd libva |
| ./autogen.sh --prefix=/usr --libdir=/usr/lib/x86_64-linux-gnu |
| make -j$(nproc) |
| sudo make install |
| - name: build gmmlib |
| run: | |
| cd gmmlib |
| mkdir build && cd build |
| cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_LIBDIR=/usr/lib/x86_64-linux-gnu .. |
| make VERBOSE=1 -j$(nproc) |
| sudo make install |
| - name: build media-driver |
| run: | |
| cd media |
| mkdir build && cd build |
| cmake -DENABLE_NONFREE_KERNELS=OFF \ |
| -DCMAKE_INSTALL_PREFIX=/usr \ |
| -DCMAKE_INSTALL_LIBDIR=/usr/lib/x86_64-linux-gnu \ |
| -DCMAKE_C_FLAGS_RELEASE="$_CFLAGS" \ |
| -DCMAKE_CXX_FLAGS_RELEASE="$_CFLAGS" \ |
| .. |
| make VERBOSE=1 -j$(nproc) |
| sudo make install |
| |
| gcc-10-kernels-off: |
| runs-on: ubuntu-20.04 |
| env: |
| CC: /usr/bin/gcc-10 |
| CXX: /usr/bin/g++-10 |
| ASM: /usr/bin/gcc-10 |
| steps: |
| - name: checkout media-driver |
| uses: actions/checkout@v2 |
| with: |
| path: media |
| - name: checkout libva |
| uses: actions/checkout@v2 |
| with: |
| repository: intel/libva |
| path: libva |
| - name: checkout gmmlib |
| uses: actions/checkout@v2 |
| with: |
| repository: intel/gmmlib |
| path: gmmlib |
| - name: install prerequisites |
| run: | |
| sudo apt-get update |
| sudo apt-get install -y --no-install-recommends \ |
| cmake \ |
| libdrm-dev \ |
| libegl1-mesa-dev \ |
| libgl1-mesa-dev \ |
| libx11-dev \ |
| libxext-dev \ |
| libxfixes-dev \ |
| libwayland-dev \ |
| make |
| - name: print tools versions |
| run: | |
| cmake --version |
| $CC --version |
| $CXX --version |
| - name: build libva |
| run: | |
| cd libva |
| ./autogen.sh --prefix=/usr --libdir=/usr/lib/x86_64-linux-gnu |
| make -j$(nproc) |
| sudo make install |
| - name: build gmmlib |
| run: | |
| cd gmmlib |
| mkdir build && cd build |
| cmake -DCMAKE_INSTALL_PREFIX=/usr -DCMAKE_INSTALL_LIBDIR=/usr/lib/x86_64-linux-gnu .. |
| make VERBOSE=1 -j$(nproc) |
| sudo make install |
| - name: build media-driver |
| run: | |
| cd media |
| mkdir build && cd build |
| cmake -DENABLE_KERNELS=OFF \ |
| -DCMAKE_INSTALL_PREFIX=/usr \ |
| -DCMAKE_INSTALL_LIBDIR=/usr/lib/x86_64-linux-gnu \ |
| -DCMAKE_C_FLAGS_RELEASE="$_CFLAGS" \ |
| -DCMAKE_CXX_FLAGS_RELEASE="$_CFLAGS" \ |
| .. |
| make VERBOSE=1 -j$(nproc) |
| sudo make install |