mirror of
https://github.com/intel/compute-runtime.git
synced 2026-01-06 19:32:25 +08:00
ci: add builds on Arch with gcc-8
- GEN8 and GEN9 support is built and tested separately - don't use dpkg in Arch builds - optimize build times Change-Id: I0be818d2afa9a86281a4e4030e8ecd10cd861efe Signed-off-by: Jacek Danecki <jacek.danecki@intel.com>
This commit is contained in:
committed by
sys_ocldev
parent
4c4e682bc7
commit
ab507d73de
@@ -34,6 +34,12 @@ matrix:
|
|||||||
- os: linux
|
- os: linux
|
||||||
compiler: gcc
|
compiler: gcc
|
||||||
env: BUILD_OS=arch COMPILER=gcc-5
|
env: BUILD_OS=arch COMPILER=gcc-5
|
||||||
|
- os: linux
|
||||||
|
compiler: gcc
|
||||||
|
env: BUILD_OS=arch COMPILER=gcc-8 GEN=gen-8
|
||||||
|
- os: linux
|
||||||
|
compiler: gcc
|
||||||
|
env: BUILD_OS=arch COMPILER=gcc-8 GEN=gen-9
|
||||||
|
|
||||||
script: ./scripts/run-build.sh
|
script: ./scripts/run-build.sh
|
||||||
|
|
||||||
|
|||||||
@@ -19,12 +19,6 @@
|
|||||||
# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
||||||
# OTHER DEALINGS IN THE SOFTWARE.
|
# OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
|
||||||
wget https://aur.archlinux.org/cgit/aur.git/snapshot/dpkg.tar.gz
|
|
||||||
tar -xzf dpkg.tar.gz
|
|
||||||
pushd dpkg
|
|
||||||
makepkg -i --noconfirm
|
|
||||||
popd
|
|
||||||
|
|
||||||
wget https://aur.archlinux.org/cgit/aur.git/snapshot/ncurses5-compat-libs.tar.gz
|
wget https://aur.archlinux.org/cgit/aur.git/snapshot/ncurses5-compat-libs.tar.gz
|
||||||
tar -xzf ncurses5-compat-libs.tar.gz
|
tar -xzf ncurses5-compat-libs.tar.gz
|
||||||
pushd ncurses5-compat-libs
|
pushd ncurses5-compat-libs
|
||||||
|
|||||||
@@ -9,6 +9,6 @@ COPY scripts/prepare-workspace.sh /root
|
|||||||
RUN /root/prepare-arch-gcc-5.sh
|
RUN /root/prepare-arch-gcc-5.sh
|
||||||
RUN /root/prepare-workspace.sh
|
RUN /root/prepare-workspace.sh
|
||||||
RUN cd /root/build ; cmake -G Ninja -DBUILD_TYPE=Release -DCMAKE_BUILD_TYPE=Release \
|
RUN cd /root/build ; cmake -G Ninja -DBUILD_TYPE=Release -DCMAKE_BUILD_TYPE=Release \
|
||||||
-DCMAKE_C_COMPILER=gcc-5 -DCMAKE_CXX_COMPILER=g++-5 ../neo; \
|
-DCMAKE_C_COMPILER=gcc-5 -DCMAKE_CXX_COMPILER=g++-5 \
|
||||||
ninja -j `nproc`
|
-DDO_NOT_RUN_AUB_TESTS=1 -DDONT_CARE_OF_VIRTUALS=1 ../neo ; ninja -j `nproc`
|
||||||
CMD ["/bin/bash"]
|
CMD ["/bin/bash"]
|
||||||
|
|||||||
14
scripts/docker/Dockerfile-arch-gcc-8-gen-8
Normal file
14
scripts/docker/Dockerfile-arch-gcc-8-gen-8
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
FROM docker.io/base/archlinux
|
||||||
|
MAINTAINER Jacek Danecki <jacek.danecki@intel.com>
|
||||||
|
|
||||||
|
COPY neo /root/neo
|
||||||
|
COPY scripts/prepare-arch-gcc-8.sh /root
|
||||||
|
COPY scripts/build-arch-dep.sh /root
|
||||||
|
COPY scripts/prepare-workspace.sh /root
|
||||||
|
|
||||||
|
RUN /root/prepare-arch-gcc-8.sh
|
||||||
|
RUN /root/prepare-workspace.sh
|
||||||
|
RUN cd /root/build ; cmake -G Ninja -DBUILD_TYPE=Release -DCMAKE_BUILD_TYPE=Release \
|
||||||
|
-DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -DSUPPORT_GEN9=0 \
|
||||||
|
-DDO_NOT_RUN_AUB_TESTS=1 -DDONT_CARE_OF_VIRTUALS=1 ../neo ; ninja -j `nproc`
|
||||||
|
CMD ["/bin/bash"]
|
||||||
14
scripts/docker/Dockerfile-arch-gcc-8-gen-9
Normal file
14
scripts/docker/Dockerfile-arch-gcc-8-gen-9
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
FROM docker.io/base/archlinux
|
||||||
|
MAINTAINER Jacek Danecki <jacek.danecki@intel.com>
|
||||||
|
|
||||||
|
COPY neo /root/neo
|
||||||
|
COPY scripts/prepare-arch-gcc-8.sh /root
|
||||||
|
COPY scripts/build-arch-dep.sh /root
|
||||||
|
COPY scripts/prepare-workspace.sh /root
|
||||||
|
|
||||||
|
RUN /root/prepare-arch-gcc-8.sh
|
||||||
|
RUN /root/prepare-workspace.sh
|
||||||
|
RUN cd /root/build ; cmake -G Ninja -DBUILD_TYPE=Release -DCMAKE_BUILD_TYPE=Release \
|
||||||
|
-DCMAKE_C_COMPILER=gcc -DCMAKE_CXX_COMPILER=g++ -DSUPPORT_GEN8=0 \
|
||||||
|
-DDO_NOT_RUN_AUB_TESTS=1 -DDONT_CARE_OF_VIRTUALS=1 ../neo ; ninja -j `nproc`
|
||||||
|
CMD ["/bin/bash"]
|
||||||
@@ -21,7 +21,6 @@
|
|||||||
|
|
||||||
|
|
||||||
NEO_TOP_DIR=`git rev-parse --show-toplevel`
|
NEO_TOP_DIR=`git rev-parse --show-toplevel`
|
||||||
ARCH=`dpkg --print-architecture`
|
|
||||||
WRK_DIR=${NEO_TOP_DIR}/..
|
WRK_DIR=${NEO_TOP_DIR}/..
|
||||||
mkdir -p ${WRK_DIR}/igc/inc
|
mkdir -p ${WRK_DIR}/igc/inc
|
||||||
cp CMakeLists.txt ${WRK_DIR}/igc
|
cp CMakeLists.txt ${WRK_DIR}/igc
|
||||||
@@ -30,8 +29,9 @@ pushd ${WRK_DIR}/igc
|
|||||||
VER=2018ww19-010806
|
VER=2018ww19-010806
|
||||||
IGC_REV=858e183
|
IGC_REV=858e183
|
||||||
|
|
||||||
wget https://github.com/intel/compute-runtime/releases/download/${VER}/intel-opencl_${VER}_${ARCH}.deb
|
wget https://github.com/intel/compute-runtime/releases/download/${VER}/intel-opencl_${VER}_amd64.deb
|
||||||
dpkg-deb -x intel-opencl_${VER}_${ARCH}.deb .
|
ar -x intel-opencl_${VER}_amd64.deb
|
||||||
|
tar -xJf data.tar.xz
|
||||||
rm opt/intel/opencl/libigdrcl.so
|
rm opt/intel/opencl/libigdrcl.so
|
||||||
ln -s opt/intel/opencl lib
|
ln -s opt/intel/opencl lib
|
||||||
|
|
||||||
|
|||||||
28
scripts/prepare-arch-gcc-8.sh
Executable file
28
scripts/prepare-arch-gcc-8.sh
Executable file
@@ -0,0 +1,28 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
# Copyright (c) 2018, Intel Corporation
|
||||||
|
#
|
||||||
|
# Permission is hereby granted, free of charge, to any person obtaining a
|
||||||
|
# copy of this software and associated documentation files (the "Software"),
|
||||||
|
# to deal in the Software without restriction, including without limitation
|
||||||
|
# the rights to use, copy, modify, merge, publish, distribute, sublicense,
|
||||||
|
# and/or sell copies of the Software, and to permit persons to whom the
|
||||||
|
# Software is furnished to do so, subject to the following conditions:
|
||||||
|
#
|
||||||
|
# The above copyright notice and this permission notice shall be included
|
||||||
|
# in all copies or substantial portions of the Software.
|
||||||
|
#
|
||||||
|
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
|
||||||
|
# OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||||
|
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
|
||||||
|
# THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR
|
||||||
|
# OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE,
|
||||||
|
# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
||||||
|
# OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
|
||||||
|
pacman -Sy --noconfirm gcc cmake git make wget pkg-config fakeroot ninja sudo \
|
||||||
|
perl-io-string perl-test-pod autoconf automake patch
|
||||||
|
useradd -m build -g wheel
|
||||||
|
sed -i "s/^# %wheel ALL=(ALL) NOPASSWD: ALL/%wheel ALL=(ALL) NOPASSWD: ALL/" /etc/sudoers
|
||||||
|
cp -a /root/*.sh /home/build
|
||||||
|
su -l build /home/build/build-arch-dep.sh
|
||||||
|
|
||||||
@@ -19,6 +19,15 @@
|
|||||||
# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
# ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
|
||||||
# OTHER DEALINGS IN THE SOFTWARE.
|
# OTHER DEALINGS IN THE SOFTWARE.
|
||||||
|
|
||||||
|
DOCKERFILE=Dockerfile-${BUILD_OS}-${COMPILER}
|
||||||
|
IMAGE=neo-${BUILD_OS}-${COMPILER}:ci
|
||||||
|
|
||||||
|
if [ -n "$GEN" ]
|
||||||
|
then
|
||||||
|
DOCKERFILE=${DOCKERFILE}-${GEN}
|
||||||
|
IMAGE=neo-${BUILD_OS}-${COMPILER}-${GEN}:ci
|
||||||
|
fi
|
||||||
|
|
||||||
git clone --depth 1 ../compute-runtime neo && \
|
git clone --depth 1 ../compute-runtime neo && \
|
||||||
docker build -f scripts/docker/Dockerfile-${BUILD_OS}-${COMPILER} -t neo-${BUILD_OS}-${COMPILER}:ci . && \
|
docker build -f scripts/docker/${DOCKERFILE} -t ${IMAGE} . && \
|
||||||
docker images
|
docker images
|
||||||
|
|||||||
Reference in New Issue
Block a user