From: Jason Ish Date: Mon, 28 Apr 2025 18:20:38 +0000 (-0600) Subject: libsuricata-config: fix static library dependency order X-Git-Tag: suricata-8.0.0-rc1~394 X-Git-Url: http://git.ipfire.org/gitweb/gitweb.cgi?a=commitdiff_plain;h=272d6c8903ea51f3b6912b556e36fd5d2193abb3;p=thirdparty%2Fsuricata.git libsuricata-config: fix static library dependency order When static linking we have a circular dependency between libsuricata_rust, and libsuricata_c, so we have to list each twice. An alternative is to use "-Wl,--start-group", but that isn't portable outside the GNU toolchain. --- diff --git a/libsuricata-config.in b/libsuricata-config.in index f03e3b3487..85cc098a19 100644 --- a/libsuricata-config.in +++ b/libsuricata-config.in @@ -6,8 +6,12 @@ includedir="@includedir@" libdir="@libdir@" LIBS="@LIBS@ @RUST_LDADD@" +# Shared library to link to (the default). shared_lib="-lsuricata" -static_lib="-lsuricata_c -lsuricata_rust" + +# 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"