public inbox for igt-dev@lists.freedesktop.org
 help / color / mirror / Atom feed
From: Guillaume Tucker <guillaume.tucker@collabora.com>
To: Arkadiusz Hiler <arkadiusz.hiler@intel.com>,
	Petri Latvala <petri.latvala@intel.com>,
	"Ser, Simon" <simon.ser@intel.com>
Cc: igt-dev@lists.freedesktop.org, intel-gfx@lists.freedesktop.org
Subject: [igt-dev] [PATCH i-g-t v3 1/1] gitlab-ci: add build and tests for MIPS
Date: Tue, 18 Jun 2019 13:42:21 +0100	[thread overview]
Message-ID: <20190618124221.62715-1-guillaume.tucker@collabora.com> (raw)

Add Docker image and Gitlab CI steps to run builds and tests for the
MIPS architecture using Debian Stretch with backports.

Signed-off-by: Guillaume Tucker <guillaume.tucker@collabora.com>
---

Notes:
    v2: use stretch-backports and require libatomic1
    v3: add mips ci tests and require Debian libatomic1 for mips

 .gitlab-ci.yml         | 42 ++++++++++++++++++++++++++++++++++++++++++
 Dockerfile.debian-mips | 39 +++++++++++++++++++++++++++++++++++++++
 meson-cross-mips.txt   | 12 ++++++++++++
 3 files changed, 93 insertions(+)
 create mode 100644 Dockerfile.debian-mips
 create mode 100644 meson-cross-mips.txt

diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 771143a9ea95..bd9619e7e28b 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -90,6 +90,17 @@ build:tests-debian-meson-arm64:
     paths:
       - build
 
+build:tests-debian-meson-mips:
+  image: $CI_REGISTRY/$CI_PROJECT_PATH/igt-debian-mips:latest
+  stage: build
+  script:
+    - export PKG_CONFIG_PATH=/usr/lib/mips-linux-gnu/pkgconfig/
+    - meson --cross-file meson-cross-mips.txt build
+    - ninja -C build
+  artifacts:
+    paths:
+      - build
+
 build:tests-debian-autotools:
   image: $CI_REGISTRY/$CI_PROJECT_PATH/igt-debian:latest
   stage: build
@@ -145,6 +156,20 @@ test:ninja-test-armhf:
       - build
     when: on_failure
 
+test:ninja-test-mips:
+  image: $CI_REGISTRY/$CI_PROJECT_PATH/igt-debian-mips:latest
+  dependencies:
+    - build:tests-debian-meson-mips
+  stage: test
+  script:
+    - export PKG_CONFIG_PATH=/usr/lib/mips-linux-gnu/pkgconfig/
+    - env > build/envdump.txt
+    - ninja -C build test
+  artifacts:
+    paths:
+      - build
+    when: on_failure
+
 test:test-list-diff:
   dependencies:
     - build:tests-debian-autotools
@@ -221,6 +246,23 @@ containers:igt-debian-arm64:
     - docker build -t $CI_REGISTRY/$CI_PROJECT_PATH/igt-debian-arm64 -f Dockerfile.debian-arm64 .
     - docker push $CI_REGISTRY/$CI_PROJECT_PATH/igt-debian-arm64
 
+containers:igt-debian-mips:
+  stage: containers
+  image: docker:stable
+  only:
+    changes:
+      - Dockerfile.debian-mips
+      - .gitlab-ci.yml
+  services:
+    - docker:dind
+  variables:
+    DOCKER_HOST: tcp://docker:2375
+    DOCKER_DRIVER: overlay2
+  script:
+    - docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
+    - docker build -t $CI_REGISTRY/$CI_PROJECT_PATH/igt-debian-mips -f Dockerfile.debian-mips .
+    - docker push $CI_REGISTRY/$CI_PROJECT_PATH/igt-debian-mips
+
 containers:igt-fedora:
   stage: containers
   image: docker:stable
diff --git a/Dockerfile.debian-mips b/Dockerfile.debian-mips
new file mode 100644
index 000000000000..ee29f5f4ccda
--- /dev/null
+++ b/Dockerfile.debian-mips
@@ -0,0 +1,39 @@
+FROM debian:stretch-backports
+
+RUN apt-get update
+RUN apt-get install -y \
+			flex \
+			bison \
+			pkg-config \
+			x11proto-dri2-dev \
+			python-docutils \
+			valgrind \
+			peg
+
+RUN dpkg --add-architecture mips
+RUN apt-get update
+RUN apt-get install -y \
+			gcc-mips-linux-gnu \
+			libatomic1:mips \
+			libpciaccess-dev:mips \
+			libkmod-dev:mips \
+			libprocps-dev:mips \
+			libunwind-dev:mips \
+			libdw-dev:mips \
+			zlib1g-dev:mips \
+			liblzma-dev:mips \
+			libcairo-dev:mips \
+			libpixman-1-dev:mips \
+			libudev-dev:mips \
+			libgsl-dev:mips \
+			libasound2-dev:mips \
+			libjson-c-dev:mips \
+			libcurl4-openssl-dev:mips \
+			libxrandr-dev:mips \
+			libxv-dev:mips
+
+RUN apt-get install -t stretch-backports -y \
+			meson \
+			libdrm-dev:mips \
+			qemu-user \
+			qemu-user-static
diff --git a/meson-cross-mips.txt b/meson-cross-mips.txt
new file mode 100644
index 000000000000..6350d677e0bc
--- /dev/null
+++ b/meson-cross-mips.txt
@@ -0,0 +1,12 @@
+[binaries]
+c = '/usr/bin/mips-linux-gnu-gcc'
+ar = '/usr/bin/mips-linux-gnu-gcc-ar'
+strip = '/usr/bin/mips-linux-gnu-strip'
+pkgconfig = 'pkg-config'
+exe_wrapper = 'qemu-mips'
+
+[host_machine]
+system = 'linux'
+cpu_family = 'mips'
+cpu = 'mips'
+endian = 'big'
-- 
2.20.1

_______________________________________________
igt-dev mailing list
igt-dev@lists.freedesktop.org
https://lists.freedesktop.org/mailman/listinfo/igt-dev

             reply	other threads:[~2019-06-18 12:42 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-06-18 12:42 Guillaume Tucker [this message]
2019-06-18 13:33 ` [igt-dev] ✓ Fi.CI.BAT: success for series starting with [i-g-t,v3,1/1] gitlab-ci: add build and tests for MIPS Patchwork
2019-06-19  1:18 ` [igt-dev] ✓ Fi.CI.IGT: " Patchwork
2019-06-25 13:08 ` [Intel-gfx] [PATCH i-g-t v3 1/1] " Guillaume Tucker
2019-06-27  7:02   ` [igt-dev] " Ser, Simon
2019-06-27 10:02     ` Guillaume Tucker
2019-06-27 13:14       ` Ser, Simon
2019-06-27 13:19         ` [Intel-gfx] " Arkadiusz Hiler
2019-06-27 14:53           ` [igt-dev] " Ser, Simon

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190618124221.62715-1-guillaume.tucker@collabora.com \
    --to=guillaume.tucker@collabora.com \
    --cc=arkadiusz.hiler@intel.com \
    --cc=igt-dev@lists.freedesktop.org \
    --cc=intel-gfx@lists.freedesktop.org \
    --cc=petri.latvala@intel.com \
    --cc=simon.ser@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox