#! /bin/sh

prefix="/usr"
exec_prefix="/usr"
includedir="/usr/include"
libdir="/usr/lib64"
LIBS="-llz4 -levent_pthreads -levent -lhiredis -lmaxminddb -lmagic -lbpf -lelf -lcap-ng -lbpf -lxdp -lelf -lpcap -lnet -lnetfilter_log -lnetfilter_queue -lnfnetlink -ljansson -lpthread -lyaml -lhs -lpcre2-8  -lz -lhs -lpcap -ldl -lrt -lm"

# Shared library to link to (the default).
shared_lib="-lsuricata"

# Static libraries to link to. We duplicate these as there are
# circular references and --start-group is not portable.
static_lib="-lsuricata_c -lsuricata_rust -lsuricata_c -lsuricata_rust"

lib="$shared_lib"

show_libs="no"
show_cflags="no"
use_static="no"

if [ "$#" = 0 ]; then
    echo "usage: suricata-config [--cflags] [--libs] [--static]"
    exit 0
fi

while [ "$#" != 0 ]
do
    case "$1" in
        --libs)
            show_libs="yes"
            ;;
        --cflags)
            show_cflags="yes"
            ;;
        --static)
            lib="$static_lib"
            use_static="yes"
            ;;
    esac
    shift
done

# If --static wasn't provided, use the static library if the shared
# library is not available.
if [ "$use_static" = "no" ]; then
    if ! test -e "$libdir/libsuricata.so"; then
        lib="$static_lib"
    fi
fi

output=""

if [ "$show_cflags" = "yes" ]; then
    output="${output} -DHAVE_CONFIG_H -I$includedir/suricata"
fi

if [ "$show_libs" = "yes" ]; then
    output="${output} -L$libdir $lib $LIBS"
fi

echo "$output"
