summaryrefslogtreecommitdiffstats
path: root/.github
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--.github/cross/ubuntu-armhf.txt1
-rw-r--r--.github/cross/ubuntu-ppc64le.txt1
-rw-r--r--.github/cross/ubuntu-s390x.txt18
-rw-r--r--.github/cross/ubuntu-static.txt6
-rw-r--r--.github/workflows/meson.yml72
5 files changed, 88 insertions, 10 deletions
diff --git a/.github/cross/ubuntu-armhf.txt b/.github/cross/ubuntu-armhf.txt
index 2eee70b..41c8328 100644
--- a/.github/cross/ubuntu-armhf.txt
+++ b/.github/cross/ubuntu-armhf.txt
@@ -4,6 +4,7 @@ ar = '/usr/arm-linux-gnueabihf/bin/ar'
strip = '/usr/arm-linux-gnueabihf/bin/strip'
pkgconfig = '/usr/bin/arm-linux-gnueabihf-pkg-config'
ld = '/usr/bin/arm-linux/gnueabihf-ld'
+exe_wrapper = '/usr/bin/qemu-arm-static'
[properties]
root = '/usr/arm-linux-gnueabihf'
diff --git a/.github/cross/ubuntu-ppc64le.txt b/.github/cross/ubuntu-ppc64le.txt
index 4cf6a92..6baaefb 100644
--- a/.github/cross/ubuntu-ppc64le.txt
+++ b/.github/cross/ubuntu-ppc64le.txt
@@ -4,6 +4,7 @@ ar = '/usr/powerpc64le-linux-gnu/bin/ar'
strip = '/usr/powerpc64le-linux-gnu/bin/strip'
pkgconfig = '/usr/bin/powerpc64le-linux-gnu-pkg-config'
ld = '/usr/bin/powerpc64le-linux-gnu-ld'
+exe_wrapper = '/usr/bin/qemu-ppc64le-static'
[properties]
root = '/usr/powerpc64le-linux-gnu'
diff --git a/.github/cross/ubuntu-s390x.txt b/.github/cross/ubuntu-s390x.txt
new file mode 100644
index 0000000..51a3511
--- /dev/null
+++ b/.github/cross/ubuntu-s390x.txt
@@ -0,0 +1,18 @@
+[binaries]
+c = '/usr/bin/s390x-linux-gnu-gcc'
+ar = '/usr/s390x-linux-gnu/bin/ar'
+strip = '/usr/s390x-linux-gnu/bin/strip'
+pkgconfig = '/usr/bin/s390x-linux-gnu-pkg-config'
+ld = '/usr/bin/s390x-linux-gnu-ld'
+exe_wrapper = '/usr/bin/qemu-s390x-static'
+
+[properties]
+root = '/usr/s390x-linux-gnu'
+has_function_printf = true
+skip_sanity_check = true
+
+[host_machine]
+system = 'linux'
+cpu_family = 's390x'
+cpu = ''
+endian = 'big'
diff --git a/.github/cross/ubuntu-static.txt b/.github/cross/ubuntu-static.txt
new file mode 100644
index 0000000..d4d6c9a
--- /dev/null
+++ b/.github/cross/ubuntu-static.txt
@@ -0,0 +1,6 @@
+[properties]
+c_args = '-static'
+cpp_args = c_args
+
+[binaries]
+c = '/usr/bin/gcc'
diff --git a/.github/workflows/meson.yml b/.github/workflows/meson.yml
index 52b2b6a..340cff3 100644
--- a/.github/workflows/meson.yml
+++ b/.github/workflows/meson.yml
@@ -13,7 +13,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: install libraries
- run: sudo apt-get install libjson-c-dev
+ run: sudo apt-get install libjson-c-dev libdbus-1-dev
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
@@ -44,16 +44,16 @@ jobs:
EOF
sudo apt update
- name: install armhf compiler
- run: sudo apt install gcc-arm-linux-gnueabihf pkg-config
+ run: sudo apt install gcc-arm-linux-gnueabihf pkg-config qemu-user-static
- name: install libraries
- run: sudo apt install uuid-dev:armhf libjson-c-dev:armhf
+ run: sudo apt install libjson-c-dev:armhf
- uses: actions/checkout@v3
- uses: BSFishy/meson-build@v1.0.3
with:
# suppress python for now; the python headers currently assume native
setup-options: --werror --cross-file=.github/cross/ubuntu-armhf.txt --wrap-mode=nofallback -Dpython=false
options: --verbose
- action: build
+ action: test
- uses: actions/upload-artifact@v3
if: failure()
with:
@@ -74,16 +74,46 @@ jobs:
EOF
sudo apt update
- name: install powerpc64le compiler
- run: sudo apt install gcc-powerpc64le-linux-gnu pkg-config
+ run: sudo apt install gcc-powerpc64le-linux-gnu pkg-config qemu-user-static
- name: install libraries
- run: sudo apt install uuid-dev:ppc64el libjson-c-dev:ppc64el
+ run: sudo apt install libjson-c-dev:ppc64el
- uses: actions/checkout@v3
- uses: BSFishy/meson-build@v1.0.3
with:
# suppress python for now; the python headers currently assume native
setup-options: --werror --cross-file=.github/cross/ubuntu-ppc64le.txt --wrap-mode=nofallback -Dpython=false
options: --verbose
- action: build
+ action: test
+ - uses: actions/upload-artifact@v3
+ if: failure()
+ with:
+ name: Linux_Meson_Testlog
+ path: build/meson-logs/testlog.txt
+
+ build-cross-s390x:
+ runs-on: ubuntu-latest
+ steps:
+ - name: set up s390x architecture
+ run: |
+ export release=$(lsb_release -c -s)
+ sudo dpkg --add-architecture s390x
+ sudo sed -i -e 's/deb http/deb [arch=amd64] http/g' /etc/apt/sources.list
+ sudo dd of=/etc/apt/sources.list.d/s390x.list <<EOF
+ deb [arch=s390x] http://ports.ubuntu.com/ $release main universe restricted"
+ deb [arch=s390x] http://ports.ubuntu.com/ $release-updates main universe restricted"
+ EOF
+ sudo apt update
+ - name: install s390x compiler
+ run: sudo apt install gcc-s390x-linux-gnu pkg-config qemu-user-static
+ - name: install libraries
+ run: sudo apt install libjson-c-dev:s390x
+ - uses: actions/checkout@v3
+ - uses: BSFishy/meson-build@v1.0.3
+ with:
+ # suppress python for now; the python headers currently assume native
+ setup-options: --werror --cross-file=.github/cross/ubuntu-s390x.txt --wrap-mode=nofallback -Dpython=false
+ options: --verbose
+ action: test
- uses: actions/upload-artifact@v3
if: failure()
with:
@@ -101,7 +131,29 @@ jobs:
python-version: '3.x'
- uses: BSFishy/meson-build@v1.0.3
with:
- setup-options: --werror --wrap-mode=forcefallback
+ setup-options: --wrap-mode=forcefallback
+ options: --verbose
+ action: test
+ meson-version: 0.61.2
+ # Preserve meson's log file on failure
+ - uses: actions/upload-artifact@v3
+ if: failure()
+ with:
+ name: Linux_Meson_log
+ path: build/meson-logs/meson-log.txt
+
+ build-with-libray-static:
+ runs-on: ubuntu-latest
+ steps:
+ - name: install libraries
+ run: sudo apt-get install -y libpam-dev libcap-ng-dev
+ - uses: actions/checkout@v3
+ - uses: actions/setup-python@v4
+ with:
+ python-version: '3.x'
+ - uses: BSFishy/meson-build@v1.0.3
+ with:
+ setup-options: --wrap-mode=forcefallback --default-library=static
options: --verbose
action: test
meson-version: 0.61.2
@@ -123,7 +175,7 @@ jobs:
python-version: '3.x'
- uses: BSFishy/meson-build@v1.0.3
with:
- setup-options: --werror --wrap-mode=forcefallback --default-library=static
+ setup-options: --wrap-mode=forcefallback --cross-file=.github/cross/ubuntu-static.txt --default-library=static
options: --verbose
action: test
meson-version: 0.61.2
@@ -138,7 +190,7 @@ jobs:
runs-on: ubuntu-latest
steps:
- name: install libraries
- run: sudo apt-get install libjson-c-dev lcov
+ run: sudo apt-get install libjson-c-dev libdbus-1-dev lcov
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with: