summaryrefslogtreecommitdiff
path: root/.gitlab-ci.yml
blob: 00693145b26356f9199f8ca41082e91186c52cb4 (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
image: fedora:latest

variables:
  DEPENDENCIES_GRILO:
    gobject-introspection-devel
    libxml2-devel
    libsoup-devel
    glib2-devel
    gtk3-devel
    liboauth-devel
    totem-pl-parser-devel
    meson
    redhat-rpm-config
    gcc
    gcc-c++
    glibc-devel
    git
    vala
    gtk-doc

  DEPENDENCIES:
    sqlite-devel
    libgcrypt-devel
    itstool
    lua-devel
    libsoup-devel
    gperf
    libarchive-devel
    json-glib-devel
    avahi-gobject-devel
    totem-pl-parser-devel
    rest-devel
    libdmapsharing-devel
    libmediaart-devel
    gom-devel
    gnome-online-accounts-devel
    libgdata-devel
    gstreamer1-plugins-good
    gstreamer1-plugins-bad-free-extras
    python3-gobject-base
    dbus-daemon

build_stable:
  before_script:
    - dnf update -y --nogpgcheck
  script:
    - dnf install -y --nogpgcheck $DEPENDENCIES_GRILO $DEPENDENCIES
    # FIXME: While tracker3 isn't in Fedora
    - dnf install -y --nogpgcheck libseccomp-devel
    - git clone https://gitlab.gnome.org/GNOME/tracker.git
    - cd tracker
    - meson . _build --prefix=/usr -Ddocs=false -Dman=false -Dbash_completion=false -Dtest_utils=true
    - ninja -C _build install
    - cd ..
    - git clone https://gitlab.gnome.org/GNOME/tracker-miners.git
    - cd tracker-miners
    - meson . _build --prefix=/usr -Dpng=enabled -Dgeneric_media_extractor=gstreamer -Dminer_rss=false -Dman=false
    - ninja -C _build install
    - cd ..
    # As part of configuring grilo-plugins.git for build, the latest code from
    # grilo.git will be fetched by Meson and it will be built as a subproject.
    - meson . _build --prefix=/usr
      -Denable-bookmarks=yes
      -Denable-chromaprint=yes
      -Denable-dleyna=yes
      -Denable-dmap=yes
      -Denable-filesystem=yes
      -Denable-flickr=yes
      -Denable-freebox=yes
      -Denable-gravatar=yes
      -Denable-jamendo=yes
      -Denable-local-metadata=yes
      -Denable-lua-factory=yes
      -Denable-magnatune=yes
      -Denable-metadata-store=yes
      -Denable-opensubtitles=yes
      -Denable-optical-media=yes
      -Denable-podcasts=yes
      -Denable-raitv=yes
      -Denable-shoutcast=yes
      -Denable-thetvdb=yes
      -Denable-tmdb=yes
      -Denable-tracker3=yes
      -Denable-vimeo=yes
      -Denable-youtube=yes
    - ninja -C _build
    - ninja -C _build install
    - LANG=C.UTF-8 meson test -C _build --suite=grilo-plugins
  artifacts:
    name: meson-logs
    when: on_failure
    paths:
      - _build/meson-logs

build_tracker2:
  before_script:
    - dnf update -y --nogpgcheck
  script:
    - dnf install -y --nogpgcheck $DEPENDENCIES_GRILO $DEPENDENCIES tracker-devel
    # As part of configuring grilo-plugins.git for build, the latest code from
    # grilo.git will be fetched by Meson and it will be built as a subproject.
    - meson . _build --prefix=/usr
      -Denable-tracker=yes
    - ninja -C _build
    - ninja -C _build install
    - meson test -C _build --suite=grilo-plugins