bookmarkfs/.builds/freebsd.yml
2025-02-27 11:06:00 +08:00

50 lines
1.7 KiB
YAML

#
# Copyright (C) 2025 CismonX <admin@cismon.net>
#
# Copying and distribution of this file, with or without modification, are
# permitted in any medium without royalty, provided the copyright notice and
# this notice are preserved. This file is offered as-is, without any warranty.
#
image: freebsd/latest
packages: [
# build
autoconf, automake, libtool, autoconf-archive, pkgconf, texinfo,
# lib
fusefs-libs3, sqlite3, jansson, nettle, readline, tcl86, uriparser, xxhash,
]
sources:
- https://git.sr.ht/~cismonx/bookmarkfs
environment:
BUILD_CFLAGS: >-
-std=c99 -O0 -g -Wall -Wextra -Wpedantic -Wshadow
-fsanitize=address,undefined -fno-sanitize-recover
BUILD_CPPFLAGS: ""
tasks:
# Unlike Debian, FreeBSD Ports does not have a "dependency package" concept,
# and we have to manually create a symlink for Tcl's pkg-config file.
- init: |
cd /usr/local/libdata/pkgconfig
sudo ln -s tcl86.pc tcl.pc
- setup: |
mkdir bookmarkfs/build && cd bookmarkfs/build
autoreconf -i ..
../configure \
--enable-bookmarkfs-debug --enable-xxhash-inline \
--enable-bookmarkfs-util --enable-bookmarkfs-mount \
--enable-bookmarkfs-fsck --enable-bookmarkfs-mkfs \
--enable-bookmarkctl --enable-fsck-handler-tcl \
--enable-backend-firefox --enable-backend-chromium \
CFLAGS="$BUILD_CFLAGS" CPPFLAGS="$BUILD_CPPFLAGS"
- build: |
cd bookmarkfs/build
make
make info
- test: |
sudo kldload fusefs
sudo sysctl vfs.usermount=1
cd bookmarkfs/build
make check
# For history builds, see:
# <https://builds.sr.ht/~cismonx/bookmarkfs/commits/master/freebsd.yml>