blob: 69bf12ff99b0cc9b33178212ec5661f31a0c348c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
#!/bin/sh
set -e
version="$(git describe --tags --first-parent --abbrev=40 --long --dirty --always)"
CC=cc
SAN="$SAN -fsanitize=address -fsanitize=undefined -fsanitize=leak"
CFLAGS="$CFLAGS -g -O0 -DENABLE_ASSERT=1 -DENABLE_DEBUG=1 -DVERSION=\"$version\""
CFLAGS="$CFLAGS -Wall -Wextra -Weverything -pedantic"
CFLAGS="$CFLAGS -Wno-unsafe-buffer-usage -Wno-gnu-zero-variadic-macro-arguments -Wno-format-non-iso -Wno-declaration-after-statement -Wno-padded -Wno-covered-switch-default -Wno-gnu-empty-struct -Wno-c++-compat -Wno-alloca -Wno-zero-length-array"
CFLAGS="$CFLAGS -I/usr/local/include"
LDFLAGS="$LDFLAGS -L/usr/local/lib -lucl -lnetgraph -ljail -lutil getmntopts.o"
$CC -c /usr/src/sbin/mount/getmntopts.c -o getmntopts.o
for i in $(ls -d src/module.*); do
name="$(basename $i)"
$CC $CFLAGS $SAN src/*.c src/module/module.c $i/*.c $LDFLAGS -o "sf.${name##*.}"
done
$CC $CFLAGS $SAN src/*.c src/base/*.c $LDFLAGS $LIBS -o sf.base
$CC $CFLAGS $SAN src/*.c src/lamina/*.c $LDFLAGS $LIBS -o sf.lamina
|