btrfs: depend on kernel UAPI instead of libbtrfs
See containerd/btrfs PR 40 and moby/moby PR 44761. (Thanks to [@]neersighted.) The containerd/btrfs library now requires headers from kernel 4.12 or newer: - https://github.com/torvalds/linux/blob/master/include/uapi/linux/btrfs.h - https://github.com/torvalds/linux/blob/master/include/uapi/linux/btrfs_tree.h These files are licensed under the GPL-2.0 WITH Linux-syscall-note, so it should be compatible with the Apache License 2.0. https://spdx.org/licenses/Linux-syscall-note.html The dependency on the kernel headers only affects users building from source. Users on older kernels may opt to not compile this library (`BUILDTAGS=no_btfs`), or to provide headers from a newer kernel. Signed-off-by: Akihiro Suda <akihiro.suda.cz@hco.ntt.co.jp>
This commit is contained in:
16
.github/workflows/ci.yml
vendored
16
.github/workflows/ci.yml
vendored
@@ -34,12 +34,6 @@ jobs:
|
||||
os: [ubuntu-20.04, macos-12, windows-2019]
|
||||
|
||||
steps:
|
||||
- name: Install dependencies
|
||||
if: matrix.os == 'ubuntu-20.04'
|
||||
run: |
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y libbtrfs-dev
|
||||
|
||||
- uses: actions/setup-go@v3
|
||||
with:
|
||||
go-version: ${{ env.GO_VERSION }}
|
||||
@@ -165,7 +159,7 @@ jobs:
|
||||
- run: |
|
||||
set -e -x
|
||||
|
||||
packages="libbtrfs-dev"
|
||||
packages=""
|
||||
platform="${{matrix.goos}}/${{matrix.goarch}}"
|
||||
if [ -n "${{matrix.goarm}}" ]; then
|
||||
platform+="/v${{matrix.goarm}}"
|
||||
@@ -214,12 +208,6 @@ jobs:
|
||||
os: [ubuntu-20.04, macos-12, windows-2019, windows-2022]
|
||||
go-version: ["1.19.5", "1.18.10"]
|
||||
steps:
|
||||
- name: Install dependencies
|
||||
if: matrix.os == 'ubuntu-20.04'
|
||||
run: |
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y libbtrfs-dev
|
||||
|
||||
- uses: actions/setup-go@v3
|
||||
with:
|
||||
go-version: ${{ matrix.go-version }}
|
||||
@@ -437,7 +425,7 @@ jobs:
|
||||
RUNC_FLAVOR: ${{ matrix.runc }}
|
||||
run: |
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y gperf libbtrfs-dev
|
||||
sudo apt-get install -y gperf
|
||||
script/setup/install-seccomp
|
||||
script/setup/install-runc
|
||||
script/setup/install-cni $(grep containernetworking/plugins go.mod | awk '{print $2}')
|
||||
|
||||
2
.github/workflows/codeql.yml
vendored
2
.github/workflows/codeql.yml
vendored
@@ -43,7 +43,7 @@ jobs:
|
||||
# languages: go, javascript, csharp, python, cpp, java
|
||||
|
||||
- run: |
|
||||
sudo apt-get install -y libseccomp-dev libbtrfs-dev
|
||||
sudo apt-get install -y libseccomp-dev
|
||||
make
|
||||
|
||||
- name: Perform CodeQL Analysis
|
||||
|
||||
7
.github/workflows/nightly.yml
vendored
7
.github/workflows/nightly.yml
vendored
@@ -62,12 +62,7 @@ jobs:
|
||||
libseccomp-dev:arm64 \
|
||||
libseccomp-dev:s390x \
|
||||
libseccomp-dev:ppc64el \
|
||||
libseccomp-dev:riscv64 \
|
||||
libbtrfs-dev:amd64 \
|
||||
libbtrfs-dev:arm64 \
|
||||
libbtrfs-dev:s390x \
|
||||
libbtrfs-dev:ppc64el \
|
||||
libbtrfs-dev:riscv64
|
||||
libseccomp-dev:riscv64
|
||||
|
||||
- name: Build amd64
|
||||
env:
|
||||
|
||||
1
.github/workflows/release/Dockerfile
vendored
1
.github/workflows/release/Dockerfile
vendored
@@ -28,7 +28,6 @@ RUN apt-get update && \
|
||||
apt-get install -y dpkg-dev git make pkg-config
|
||||
ARG TARGETPLATFORM
|
||||
RUN xx-apt-get install -y libseccomp-dev btrfs-progs gcc
|
||||
RUN if grep -qE 'UBUNTU_CODENAME=(focal|jammy)' /etc/os-release; then xx-apt-get install -y libbtrfs-dev; fi
|
||||
ENV PATH=/usr/local/go/bin:$PATH
|
||||
ENV GOPATH=/go
|
||||
ENV CGO_ENABLED=1
|
||||
|
||||
Reference in New Issue
Block a user