[circleci] Make dist tarball with meson

This commit is contained in:
Khaled Hosny 2022-12-17 00:19:27 +02:00 committed by خالد حسني (Khaled Hosny)
parent afcae83a06
commit 80157cc60b
1 changed files with 22 additions and 11 deletions

View File

@ -7,7 +7,7 @@ executors:
win64-executor: win64-executor:
docker: docker:
- image: cimg/base:edge-20.04 - image: cimg/base:edge-20.04
autotools-executor: ubuntu-executor:
docker: docker:
- image: cimg/base:edge-20.04 - image: cimg/base:edge-20.04
@ -27,29 +27,39 @@ jobs:
path: build/meson-logs/ path: build/meson-logs/
# will be dropped with autotools removal # will be dropped with autotools removal
distcheck: autotools:
executor: autotools-executor executor: ubuntu-executor
steps: steps:
- checkout - checkout
- run: sudo apt update && DEBIAN_FRONTEND=noninteractive sudo apt install -y git ninja-build binutils libtool autoconf automake make gcc g++ pkg-config ragel gtk-doc-tools gobject-introspection libfreetype6-dev libglib2.0-dev libgirepository1.0-dev libcairo2-dev libicu-dev libgraphite2-dev python3 python3-pip - run: sudo apt update && DEBIAN_FRONTEND=noninteractive sudo apt install -y git ninja-build binutils libtool autoconf automake make gcc g++ pkg-config ragel gtk-doc-tools gobject-introspection libfreetype6-dev libglib2.0-dev libgirepository1.0-dev libcairo2-dev libicu-dev libgraphite2-dev python3 python3-pip
- run: pip3 install fonttools meson --upgrade
- run: ./autogen.sh - run: ./autogen.sh
- run: make -j2 distcheck - run: make -j2 distcheck
- run: rm harfbuzz-* && make distdir
- run: cd harfbuzz-* && meson build && ninja -j2 -Cbuild test
- run: make dist
- persist_to_workspace: - persist_to_workspace:
root: . root: .
paths: harfbuzz-*.tar.xz paths: harfbuzz-*.tar.xz
dist:
executor: ubuntu-executor
steps:
- checkout
- run: sudo apt update && DEBIAN_FRONTEND=noninteractive sudo apt install -y git ninja-build binutils gcc g++ pkg-config gtk-doc-tools gobject-introspection libfreetype6-dev libglib2.0-dev libgirepository1.0-dev libcairo2-dev libicu-dev libgraphite2-dev python3 python3-pip
- run: pip3 install fonttools meson --upgrade
- run: meson setup build
- run: ninja -j2 -Cbuild
- run: ninja -j2 -Cbuild test
- run: ninja -j2 -Cbuild dist
- persist_to_workspace:
root: .
paths: build/meson-dist/harfbuzz-*.tar.xz
publish-dist: publish-dist:
executor: autotools-executor executor: ubuntu-executor
steps: steps:
- checkout - checkout
- attach_workspace: - attach_workspace:
at: . at: .
- run: | - run: |
.ci/publish_release_artifact.sh harfbuzz-$CIRCLE_TAG.tar.xz .ci/publish_release_artifact.sh build/meson-dist/harfbuzz-$CIRCLE_TAG.tar.xz
fedora-valgrind: fedora-valgrind:
docker: docker:
@ -184,18 +194,19 @@ workflows:
build: build:
jobs: jobs:
- macos-aat-fonts - macos-aat-fonts
- distcheck: - dist:
filters: # must have filter or won't work as a dependency filters: # must have filter or won't work as a dependency
tags: tags:
only: /.*/ only: /.*/
- publish-dist: - publish-dist:
requires: requires:
- distcheck - dist
filters: filters:
tags: tags:
only: /^\d+\.\d+\.\d+$/ only: /^\d+\.\d+\.\d+$/
branches: branches:
ignore: /.*/ ignore: /.*/
- autotools
- fedora-valgrind - fedora-valgrind
- alpine - alpine
#- archlinux #- archlinux