aboutsummaryrefslogtreecommitdiff
path: root/scripts/ci/setup/build-environment.yml
blob: 581c1c75d19c0bfa3a0e65e3bf5eb78a3768bd21 (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
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
# Copyright (c) 2021 Red Hat, Inc.
#
# Author:
#  Cleber Rosa <crosa@redhat.com>
#
# This work is licensed under the terms of the GNU GPL, version 2 or
# later.  See the COPYING file in the top-level directory.
#
# This is an ansible playbook file.  Run it to set up systems with the
# environment needed to build QEMU.
---
- name: Installation of basic packages to build QEMU
  hosts: all
  tasks:
    - name: Check for suitable ansible version
      delegate_to: localhost
      assert:
        that:
          - '((ansible_version.major == 2) and (ansible_version.minor >= 8)) or (ansible_version.major >= 3)'
        msg: "Unsuitable ansible version, please use version 2.8.0 or later"

    - name: Update apt cache / upgrade packages via apt
      apt:
        update_cache: yes
        upgrade: yes
      when:
        - ansible_facts['distribution'] == 'Ubuntu'

    - name: Install basic packages to build QEMU on Ubuntu 18.04/20.04
      package:
        name:
        # Originally from tests/docker/dockerfiles/ubuntu1804.docker
          - ccache
          - gcc
          - gettext
          - git
          - glusterfs-common
          - libaio-dev
          - libattr1-dev
          - libbrlapi-dev
          - libbz2-dev
          - libcacard-dev
          - libcap-ng-dev
          - libcurl4-gnutls-dev
          - libdrm-dev
          - libepoxy-dev
          - libfdt-dev
          - libgbm-dev
          - libgtk-3-dev
          - libibverbs-dev
          - libiscsi-dev
          - libjemalloc-dev
          - libjpeg-turbo8-dev
          - liblzo2-dev
          - libncurses5-dev
          - libncursesw5-dev
          - libnfs-dev
          - libnss3-dev
          - libnuma-dev
          - libpixman-1-dev
          - librados-dev
          - librbd-dev
          - librdmacm-dev
          - libsasl2-dev
          - libsdl2-dev
          - libseccomp-dev
          - libsnappy-dev
          - libspice-protocol-dev
          - libssh-dev
          - libusb-1.0-0-dev
          - libusbredirhost-dev
          - libvdeplug-dev
          - libvte-2.91-dev
          - libzstd-dev
          - make
          - python3-yaml
          - python3-sphinx
          - python3-sphinx-rtd-theme
          - ninja-build
          - sparse
          - xfslibs-dev
        state: present
      when:
        - ansible_facts['distribution'] == 'Ubuntu'

    - name: Install packages to build QEMU on Ubuntu 18.04/20.04 on non-s390x
      package:
        name:
          - libspice-server-dev
          - libxen-dev
        state: present
      when:
        - ansible_facts['distribution'] == 'Ubuntu'
        - ansible_facts['architecture'] != 's390x'

    - name: Install basic packages to build QEMU on Ubuntu 18.04
      package:
        name:
        # Originally from tests/docker/dockerfiles/ubuntu1804.docker
          - clang
      when:
        - ansible_facts['distribution'] == 'Ubuntu'
        - ansible_facts['distribution_version'] == '18.04'

    - name: Install basic packages to build QEMU on Ubuntu 20.04
      package:
        name:
        # Originally from tests/docker/dockerfiles/ubuntu2004.docker
          - clang-10
          - genisoimage
          - liblttng-ust-dev
          - libslirp-dev
          - netcat-openbsd
      when:
        - ansible_facts['distribution'] == 'Ubuntu'
        - ansible_facts['distribution_version'] == '20.04'