Max Makarov bdbd278d61
feat: update bird2 to 2.18
Switch source URL from bird.network.cz to GitLab archive as the
release tarball for 2.18 is not published on the project website.
Add autoreconf step since the GitLab archive doesn't include a
pre-generated configure script.

Signed-off-by: Max Makarov <maxpain@linux.com>
Signed-off-by: Andrey Smirnov <andrey.smirnov@siderolabs.com>
2026-02-09 14:50:53 +04:00

56 lines
1.7 KiB
YAML

# © 2025 DE-CIX
# Licensed under the Mozilla Public License 2.0
# SPDX-License-Identifier: MPL-2.0
name: bird2
variant: scratch
shell: /bin/bash
dependencies:
- stage: base
steps:
- sources:
- url: "https://gitlab.nic.cz/labs/bird/-/archive/v{{ .BIRD2_VERSION }}/bird-v{{ .BIRD2_VERSION }}.tar.gz"
destination: bird2.tar.gz
sha256: "{{ .BIRD2_SHA256 }}"
sha512: "{{ .BIRD2_SHA512 }}"
env:
SOURCE_DATE_EPOCH: "{{ .BUILD_ARG_SOURCE_DATE_EPOCH }}"
prepare:
- |
tar -xf bird2.tar.gz --strip-components=1
- |
autoreconf -fi
export CFLAGS="${CFLAGS} -I/usr/local/include -static"
export LDFLAGS="${LDFLAGS} -static"
./configure --disable-client --prefix=/usr/local
build:
- |
make -j $(nproc) all
install:
- |
mkdir -p /rootfs/usr/local/{etc/containers,lib/containers/bird2}
cp /pkg/bird2.yaml /rootfs/usr/local/etc/containers/bird2.yaml
make DESTDIR=/rootfs/usr/local/lib/containers/bird2 install
rm /rootfs/usr/local/lib/containers/bird2/usr/local/etc/bird.conf
test:
- |
mkdir -p /extensions-validator-rootfs
cp -r /rootfs/ /extensions-validator-rootfs/rootfs
cp /pkg/manifest.yaml /extensions-validator-rootfs/manifest.yaml
/extensions-validator validate --rootfs=/extensions-validator-rootfs --pkg-name="${PKG_NAME}"
sbom:
outputPath: /rootfs/usr/local/share/spdx/bird2.spdx.json
version: "{{ .VERSION }}"
cpes:
- "cpe:2.3:a:bird_project:bird:{{ .VERSION }}:*:*:*:*:*:*:*"
licenses:
- GPL-2.0-or-later
finalize:
- from: /rootfs
to: /rootfs
- from: /pkg/manifest.yaml
to: /