Skip to content

Commit 8d292d6

Browse files
committed
Add github workflow for meson build [skip ci]
1 parent e5086b3 commit 8d292d6

File tree

1 file changed

+65
-0
lines changed

1 file changed

+65
-0
lines changed

.github/workflows/make.yml

Lines changed: 65 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,65 @@
1+
name: CI Meson
2+
3+
on: push
4+
5+
jobs:
6+
build:
7+
strategy:
8+
matrix:
9+
os:
10+
- ubuntu-latest
11+
- linux-arm64
12+
build_type:
13+
- release
14+
- debugoptimized
15+
blocksize:
16+
- 8
17+
- 16
18+
- 32
19+
name: ${{ matrix.os }}-${{ matrix.build_type }}-${{ matrix.blocksize }}
20+
runs-on:
21+
labels:
22+
- ${{ matrix.os }}
23+
steps:
24+
- name: Checkout code
25+
uses: actions/checkout@v4
26+
- name: Update install packages
27+
run: |
28+
sudo env DEBIAN_FRONTEND=noninteractive apt update
29+
sudo env DEBIAN_FRONTEND=noninteractive apt full-upgrade -y
30+
- name: Install packages
31+
run: >
32+
sudo env DEBIAN_FRONTEND=noninteractive apt install -y
33+
bison
34+
build-essential
35+
ccache
36+
flex
37+
libicu-dev
38+
libreadline-dev
39+
libssl-dev
40+
libxml2-dev
41+
libxml2-utils
42+
libxslt-dev
43+
libzstd-dev
44+
pkg-config
45+
xsltproc
46+
zlib1g-dev
47+
- name: Set up Python
48+
uses: actions/setup-python@v5
49+
with:
50+
python-version: '>= 3.7'
51+
- name: Install dependencies
52+
run: python -m pip install meson ninja
53+
- name: Configure Project
54+
run: meson setup build/ --prefix $PWD/installdir -D blocksize=${{ matrix.blocksize }} --buildtype ${{ matrix.build_type }}
55+
- name: Compile
56+
run: meson compile -C build/
57+
- name: Run Tests
58+
run: meson test -C build/ -v
59+
- name: Install
60+
run: meson install -C build/
61+
- name: Upload Install
62+
uses: actions/upload-artifact@v4
63+
with:
64+
name: postgres-${{ matrix.os }}-${{ matrix.build_type }}-${{ matrix.blocksize }}
65+
path: installdir/**

0 commit comments

Comments
 (0)