[libgudev/tchaik/meson: 4/5] ci: Use meson and publish documentation




commit ef094855cf51655485ad538d086d92745acb897f
Author: Martin Blanchard <tchaik gmx com>
Date:   Tue Feb 19 19:26:49 2019 +0000

    ci: Use meson and publish documentation
    
    Publish documentation on GitLab pages as meson does not embed generated
    documentation in distribution tarballs. Pages URL:
    
        https://gnome.pages.gitlab.gnome.org/libgudev/libgudev

 .ci/check-abi  | 13 +++++++------
 .gitlab-ci.yml | 51 ++++++++++++++++++++++++++++++++++++---------------
 2 files changed, 43 insertions(+), 21 deletions(-)
---
diff --git a/.ci/check-abi b/.ci/check-abi
index f511e10..f2f27a7 100755
--- a/.ci/check-abi
+++ b/.ci/check-abi
@@ -65,13 +65,14 @@ def build_install(revision):
         rm_rf(build_dir)
         rm_rf(revision)
 
-        subprocess.check_call(['./autogen.sh',
+        subprocess.check_call(['meson', 'setup', build_dir,
                                '--prefix=/usr',
-                               '--libdir=/usr/lib/',
-                               '--disable-gtk-doc',
-                               '--disable-umockdev'])
-        subprocess.check_call(['make'])
-        subprocess.check_call(['make', 'install'],
+                               '--libdir=lib',
+                               '-Dintrospection=disabled',
+                               '-Dvapi=disabled',
+                               '-Dgtk_doc=false'])
+        subprocess.check_call(['meson', 'compile', '-C', build_dir])
+        subprocess.check_call(['meson', 'install', '-C', build_dir],
                               env={'DESTDIR': dest_dir})
 
     return dest_dir
diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml
index 45e80fd..742aaf8 100644
--- a/.gitlab-ci.yml
+++ b/.gitlab-ci.yml
@@ -1,14 +1,12 @@
+image: fedora:latest
+
 variables:
-  LAST_ABI_BREAK: "43a593b5b4097b887e49eaacafbc1337bd709718"
+  LAST_ABI_BREAK: "334f31b3cf0837ffb2298f498686905e8ba14f7b"
   DNF_CORE_DEPS: >
     gcc
     gettext
-    redhat-rpm-config
-    libtool
-    automake
-    autoconf
-    xz
-    make
+    meson
+    ninja-build
     git
     gnome-common
     systemd-devel
@@ -23,16 +21,39 @@ variables:
 
 stages:
   - test
+  - document
+  - deploy
 
 build-fedora:
-  image: fedora:latest
   stage: test
   before_script:
-    - dnf install -y ${DNF_CORE_DEPS} ${DNF_TEST_DEPS} ${DNF_API_DOC_DEPS}
+    - dnf install -y ${DNF_CORE_DEPS} ${DNF_TEST_DEPS}
+  script:
+    - meson setup build/
+    - ninja -C build/ install
+    - .ci/check-abi ${LAST_ABI_BREAK} $(git rev-parse HEAD)
+
+reference:
+  stage: document
+  before_script:
+    - dnf install -y ${DNF_CORE_DEPS} ${DNF_API_DOC_DEPS}
+  script:
+    - meson setup build/ -Dgtk_doc=true
+    - ninja -C build/ install
+  artifacts:
+    name: libgudev-doc
+    paths:
+      - build/docs/html
+
+pages:
+  stage: deploy
+  dependencies:
+    - reference
   script:
-    - ./autogen.sh --disable-dependency-tracking
-    - make
-    - make install
-    - make check
-    - ./.ci/check-abi ${LAST_ABI_BREAK} $(git rev-parse HEAD)
-    - make distcheck
+    - mkdir -p public/
+    - mv build/docs/html/ public/libgudev/
+  artifacts:
+    paths:
+      - public
+  only:
+    - master


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]