aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTheodore Ts'o <tytso@mit.edu>2024-04-23 01:00:56 -0400
committerTheodore Ts'o <tytso@mit.edu>2024-04-23 01:00:56 -0400
commit8c012b7b572175c116e69756e4a03c553787ed3f (patch)
treebc253499b810cb154272669c465a57e73689db96
parentea562cbcd98d3bdd75e2435e14d82da9985c9a31 (diff)
downloade2fsprogs-8c012b7b572175c116e69756e4a03c553787ed3f.tar.gz
mke2fs: use the correct shared library version for libarchive on FreeBSD
Adjust for the fact that Linux uses libarchive.so.13, while freeBSD uses libarchive.so.7. Signed-off-by: Theodore Ts'o <tytso@mit.edu>
-rw-r--r--misc/create_inode_libarchive.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/misc/create_inode_libarchive.c b/misc/create_inode_libarchive.c
index 97b82d232..4d561fed5 100644
--- a/misc/create_inode_libarchive.c
+++ b/misc/create_inode_libarchive.c
@@ -55,10 +55,16 @@ static int (*dl_archive_read_support_format_all)(struct archive *);
static void *libarchive_handle;
+#if defined(__FreeBSD__)
+#define LIBARCHIVE_SO "libarchive.so.7"
+#else
+#define LIBARCHIVE_SO "libarchive.so.13"
+#endif
+
static int libarchive_available(void)
{
if (!libarchive_handle) {
- libarchive_handle = dlopen("libarchive.so.13", RTLD_NOW);
+ libarchive_handle = dlopen(LIBARCHIVE_SO, RTLD_NOW);
if (!libarchive_handle)
return 0;