summaryrefslogtreecommitdiffstats
path: root/.github
diff options
context:
space:
mode:
Diffstat (limited to '.github')
-rw-r--r--.github/AppImageBuilder.yml14
-rw-r--r--.github/azure-pipelines.yml5
-rw-r--r--.github/cross/clang.txt5
-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/workflows/appimage.yml9
-rw-r--r--.github/workflows/build.yml314
-rw-r--r--.github/workflows/release.yml11
9 files changed, 59 insertions, 319 deletions
diff --git a/.github/AppImageBuilder.yml b/.github/AppImageBuilder.yml
index 67b215c..3675edf 100644
--- a/.github/AppImageBuilder.yml
+++ b/.github/AppImageBuilder.yml
@@ -28,15 +28,17 @@ AppDir:
include:
- libjson-c5
- libhugetlbfs0
- - libssl3
files:
include:
- - libcrypt.so.3
- - libdbus-1.so.3
- - libjson-c.so.5
+ - /lib64/libcrypto.so.3
+ - /lib64/libdbus-1.so.3
+ - /lib64/libjson-c.so.5
exclude:
- - usr/share/man
- - usr/share/doc
+ - usr/share/man
+ - usr/share/doc/*/README.*
+ - usr/share/doc/*/changelog.*
+ - usr/share/doc/*/NEWS.*
+ - usr/share/doc/*/TODO.*
test:
fedora-30:
image: appimagecrafters/tests-env:fedora-30
diff --git a/.github/azure-pipelines.yml b/.github/azure-pipelines.yml
index f9eb5ed..4b52903 100644
--- a/.github/azure-pipelines.yml
+++ b/.github/azure-pipelines.yml
@@ -6,10 +6,7 @@
# - nvme/012
# - nvme/013
-trigger:
- - master
-pr:
- - master
+trigger: none # Disable CI triggers.
jobs:
- job: blktests
diff --git a/.github/cross/clang.txt b/.github/cross/clang.txt
deleted file mode 100644
index 1484a3e..0000000
--- a/.github/cross/clang.txt
+++ /dev/null
@@ -1,5 +0,0 @@
-[binaries]
-c = 'clang'
-cpp = 'clang++'
-strip = 'strip'
-pkgconfig = 'pkg-config'
diff --git a/.github/cross/ubuntu-armhf.txt b/.github/cross/ubuntu-armhf.txt
index 41c8328..2eee70b 100644
--- a/.github/cross/ubuntu-armhf.txt
+++ b/.github/cross/ubuntu-armhf.txt
@@ -4,7 +4,6 @@ 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 6baaefb..4cf6a92 100644
--- a/.github/cross/ubuntu-ppc64le.txt
+++ b/.github/cross/ubuntu-ppc64le.txt
@@ -4,7 +4,6 @@ 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
deleted file mode 100644
index 51a3511..0000000
--- a/.github/cross/ubuntu-s390x.txt
+++ /dev/null
@@ -1,18 +0,0 @@
-[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/workflows/appimage.yml b/.github/workflows/appimage.yml
index 80b0496..c64dfb3 100644
--- a/.github/workflows/appimage.yml
+++ b/.github/workflows/appimage.yml
@@ -1,22 +1,21 @@
---
-name: appimage
+name: AppImage
on:
push:
- branches: [master]
+ branches: [ master ]
pull_request:
- branches: [master]
+ branches: [ master ]
env:
DESTDIR: ../AppDir
jobs:
build-appimage:
- name: build AppImage
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: install dependencies
- run: sudo apt-get install libjson-c-dev libssl-dev libdbus-1-dev libhugetlbfs-dev
+ run: sudo apt-get install libjson-c-dev libdbus-1-dev libhugetlbfs-dev
- uses: actions/setup-python@v4
with:
python-version: '3.x'
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
index fae50a5..805a962 100644
--- a/.github/workflows/build.yml
+++ b/.github/workflows/build.yml
@@ -3,178 +3,29 @@ name: build
on:
push:
- branches: [master]
+ branches: [ master ]
pull_request:
- branches: [master]
+ branches: [ master ]
workflow_dispatch:
jobs:
- gcc-debug:
- name: gcc debug
+ build-distro:
runs-on: ubuntu-latest
- steps:
- - name: install dependencies
- run: sudo apt-get install gcc pkg-config libjson-c-dev libhugetlbfs-dev
- - uses: actions/checkout@v3
- - uses: actions/setup-python@v4
- with:
- python-version: '3.x'
- - uses: bsfishy/meson-build@v1.0.3
- name: build
- with:
- action: build
- setup-options: >
- --werror
- --buildtype=debug
- -Dlibnvme:werror=false
- meson-version: 0.61.2
- - uses: bsfishy/meson-build@v1.0.3
- name: test
- with:
- action: test
- meson-version: 0.61.2
- - uses: actions/upload-artifact@v3
- if: failure()
- with:
- name: log files
- path: |
- build/meson-logs/*.txt
-
- gcc-release:
- name: gcc release
- runs-on: ubuntu-latest
- steps:
- - name: install dependencies
- run: sudo apt-get install gcc pkg-config libjson-c-dev libhugetlbfs-dev
- - uses: actions/checkout@v3
- - uses: actions/setup-python@v4
- with:
- python-version: '3.x'
- - uses: bsfishy/meson-build@v1.0.3
- name: build
- with:
- action: build
- setup-options: >
- --werror
- --buildtype=release
- -Dlibnvme:werror=false
- meson-version: 0.61.2
- - uses: bsfishy/meson-build@v1.0.3
- name: test
- with:
- action: test
- meson-version: 0.61.2
- - uses: actions/upload-artifact@v3
- if: failure()
- with:
- name: log files
- path: |
- build/meson-logs/*.txt
-
- clang-release:
- name: clang release
- runs-on: ubuntu-latest
- steps:
- - name: install dependencies
- run: sudo apt-get install clang pkg-config libjson-c-dev libhugetlbfs-dev
- - uses: actions/checkout@v3
- - uses: actions/setup-python@v4
- with:
- python-version: '3.x'
- - uses: bsfishy/meson-build@v1.0.3
- name: build
- with:
- action: build
- setup-options: >
- --werror
- --buildtype=release
- --cross-file=.github/cross/clang.txt
- -Dlibnvme:werror=false
- -Dopenssl:werror=false
- meson-version: 0.61.2
- - uses: bsfishy/meson-build@v1.0.3
- name: test
- with:
- action: test
- meson-version: 0.61.2
- - uses: actions/upload-artifact@v3
- if: failure()
- with:
- name: log files
- path: |
- build/meson-logs/*.txt
-
- fallback-shared-libraries:
- name: fallback shared libraries
- runs-on: ubuntu-latest
- steps:
- - name: install dependencies
- run: sudo apt-get install 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
- name: build
- with:
- action: build
- setup-options: >
- --werror
- --buildtype=release
- --wrap-mode=forcefallback
- --default-library=shared
- -Dlibnvme:werror=false
- -Dopenssl:werror=false
- meson-version: 0.61.2
- - uses: bsfishy/meson-build@v1.0.3
- name: test
- with:
- action: test
- meson-version: 0.61.2
- - uses: actions/upload-artifact@v3
- if: failure()
- with:
- name: log files
- path: |
- build/meson-logs/*.txt
- fallback-static-libraries:
- name: fallback static libraries
- runs-on: ubuntu-latest
steps:
- name: install dependencies
- run: sudo apt-get install libpam-dev libcap-ng-dev
+ run: sudo apt-get install libjson-c-dev libhugetlbfs-dev libdbus-1-dev
- uses: actions/checkout@v3
- uses: actions/setup-python@v4
with:
python-version: '3.x'
- uses: BSFishy/meson-build@v1.0.3
- name: build
- with:
- action: build
- setup-options: >
- --werror
- --buildtype=release
- --wrap-mode=forcefallback
- --default-library=static
- -Dlibnvme:werror=false
- -Dopenssl:werror=false
- meson-version: 0.61.2
- - uses: bsfishy/meson-build@v1.0.3
- name: test
with:
+ setup-options: --werror
action: test
- meson-version: 0.61.2
- - uses: actions/upload-artifact@v3
- if: failure()
- with:
- name: log files
- path: |
- build/meson-logs/*.txt
- cross-armhf:
- name: cross armhf
+ build-cross-armhf:
runs-on: ubuntu-latest
steps:
- name: set up arm architecture
@@ -188,35 +39,23 @@ jobs:
EOF
sudo apt update
- name: install armhf compiler
- run: sudo apt install gcc-arm-linux-gnueabihf pkg-config qemu-user-static
+ run: sudo apt install gcc-arm-linux-gnueabihf pkg-config
- name: install libraries
- run: sudo apt install libjson-c-dev:armhf
+ run: sudo apt install uuid-dev:armhf libjson-c-dev:armhf libdbus-1-dev:armhf
- uses: actions/checkout@v3
- uses: BSFishy/meson-build@v1.0.3
- name: build
with:
+ # suppress python for now; the python headers currently assume native
+ setup-options: --werror --cross-file=.github/cross/ubuntu-armhf.txt -Dlibnvme:python=false
+ options: --verbose
action: build
- setup-options: >
- --werror
- --buildtype=release
- --cross-file=.github/cross/ubuntu-armhf.txt
- -Dlibnvme:python=disabled
- -Dopenssl:werror=false
- meson-version: 0.61.2
- - uses: bsfishy/meson-build@v1.0.3
- name: test
- with:
- action: test
- meson-version: 0.61.2
- uses: actions/upload-artifact@v3
if: failure()
with:
- name: log files
- path: |
- build/meson-logs/*.txt
+ name: Linux_Meson_Testlog
+ path: build/meson-logs/testlog.txt
- cross-ppc64le:
- name: cross ppc64le
+ build-cross-ppc64le:
runs-on: ubuntu-latest
steps:
- name: set up ppc64le architecture
@@ -230,121 +69,50 @@ jobs:
EOF
sudo apt update
- name: install powerpc64le compiler
- run: sudo apt install gcc-powerpc64le-linux-gnu pkg-config qemu-user-static
+ run: sudo apt install gcc-powerpc64le-linux-gnu pkg-config
- name: install libraries
- run: sudo apt install libjson-c-dev:ppc64el
+ run: sudo apt install uuid-dev:ppc64el libjson-c-dev:ppc64el libdbus-1-dev:ppc64el
- uses: actions/checkout@v3
- uses: BSFishy/meson-build@v1.0.3
- name: build
with:
+ # suppress python for now; the python headers currently assume native
+ setup-options: --werror --cross-file=.github/cross/ubuntu-ppc64le.txt -Dlibnvme:python=false
+ options: --verbose
action: build
- setup-options: >
- --werror
- --buildtype=release
- --cross-file=.github/cross/ubuntu-ppc64le.txt
- -Dlibnvme:werror=false
- -Dlibnvme:python=disabled
- -Dopenssl:werror=false
- meson-version: 0.61.2
- - uses: bsfishy/meson-build@v1.0.3
- name: test
- with:
- action: test
- meson-version: 0.61.2
- uses: actions/upload-artifact@v3
if: failure()
with:
- name: log files
- path: |
- build/meson-logs/*.txt
+ name: Linux_Meson_Testlog
+ path: build/meson-logs/testlog.txt
- cross-s390x:
- name: cross s390x
+ build-fallback:
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
+ - name: install dependencies
+ run: sudo apt-get install -y libpam-dev libcap-ng-dev
- uses: actions/checkout@v3
- - uses: BSFishy/meson-build@v1.0.3
- name: build
+ - uses: actions/setup-python@v4
with:
- action: build
- setup-options: >
- --werror
- --buildtype=release
- --cross-file=.github/cross/ubuntu-s390x.txt
- -Dlibnvme:werror=false
- -Dlibnvme:python=disabled
- -Dopenssl:werror=false
- meson-version: 0.61.2
- - uses: bsfishy/meson-build@v1.0.3
- name: test
+ python-version: '3.x'
+ - uses: BSFishy/meson-build@v1.0.3
with:
+ setup-options: --werror -Dopenssl:werror=false -Ddbus:werror=false --wrap-mode=forcefallback
+ options: --verbose
action: test
meson-version: 0.61.2
- - uses: actions/upload-artifact@v3
- if: failure()
- with:
- name: log files
- path: |
- build/meson-logs/*.txt
- build-minimal:
- name: muon minimal
+ build-static:
runs-on: ubuntu-latest
steps:
+ - name: install dependencies
+ run: sudo apt-get install -y libpam-dev libcap-ng-dev
- uses: actions/checkout@v3
- - name: build muon and samurai build-tool
- run: |
- mkdir build-tools
- cd build-tools
- git clone --depth 1 https://git.sr.ht/~lattis/muon
- cd muon
-
- export CC=gcc
- export ninja=build/samu
-
- ./tools/bootstrap_ninja.sh build
- ./bootstrap.sh build
-
- build/muon setup \
- -Dlibcurl=disabled \
- -Dlibarchive=disabled \
- -Ddocs=disabled \
- -Dsamurai=disabled \
- build
- build/samu -C build
- build/muon -C build test
- - name: fetch libnvme
- run: |
- cd subprojects
- git clone https://github.com/linux-nvme/libnvme.git
- libnvme_ref=$(sed -n "s/revision = \([0-9a-z]\+\)/\1/p" libnvme.wrap)
- git -C libnvme checkout $libnvme_ref
- - name: build
- run: |
- export PATH=$(pwd)/build-tools/muon/build:$PATH
-
- muon setup \
- -Dlibnvme:python=disabled \
- -Dlibnvme:json-c=disabled \
- -Djson-c=disabled \
- build
- samu -C build
- - name: test
- run: |
- export PATH=$(pwd)/build-tools/muon/build:$PATH
-
- muon -C build test
+ - uses: actions/setup-python@v4
+ with:
+ python-version: '3.x'
+ - uses: BSFishy/meson-build@v1.0.3
+ with:
+ setup-options: --werror -Dopenssl:werror=false -Ddbus:werror=false --wrap-mode=forcefallback --default-library=static
+ options: --verbose
+ action: test
+ meson-version: 0.61.2
diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml
index c88be9e..e4ccb70 100644
--- a/.github/workflows/release.yml
+++ b/.github/workflows/release.yml
@@ -1,12 +1,11 @@
---
-name: release
+name: releases
on:
push:
branches: [ master ]
tags:
- '**'
-
jobs:
build:
runs-on: ubuntu-latest
@@ -14,7 +13,7 @@ jobs:
permissions:
contents: write
steps:
- - uses: actions/checkout@v3
- - uses: ncipollo/release-action@v1
- with:
- token: ${{ secrets.GITHUB_TOKEN }}
+ - uses: actions/checkout@v3
+ - uses: ncipollo/release-action@v1
+ with:
+ token: ${{ secrets.GITHUB_TOKEN }}