49 lines
1.6 KiB
Diff
49 lines
1.6 KiB
Diff
|
From 9a993ce24fdd5de45774b65211570dd514cdf61d Mon Sep 17 00:00:00 2001
|
||
|
From: Luis Chamberlain <mcgrof@kernel.org>
|
||
|
Date: Wed, 17 Aug 2022 18:23:04 -0700
|
||
|
Subject: [PATCH 213/217] meson.build: be specific for library path
|
||
|
|
||
|
If you run the typical configure script on a typical linux software
|
||
|
project say with ./configure --prefix=/usr/ then the libdir defaults
|
||
|
to /usr/lib/ however this is not true with meson.
|
||
|
|
||
|
With meson the current libdir path follows the one set by the prefix,
|
||
|
and so with the current setup with prefix forced by default to /usr/
|
||
|
we end up with libdir set to /usr/ as well and so libraries built
|
||
|
and installed also placed into /usr/ as well, not /usr/lib/ as we
|
||
|
would typically expect.
|
||
|
|
||
|
So you if you use today's defaults you end up with the libraries placed
|
||
|
into /usr/ and then a simple error such as:
|
||
|
|
||
|
cxl: error while loading shared libraries: libcxl.so.1: cannot open shared object file: No such file or directory
|
||
|
|
||
|
Folks may have overlooked this as their old library is still usable.
|
||
|
|
||
|
Fix this by forcing the default library path to /usr/lib, and so
|
||
|
requiring users to set both prefix and libdir if they want to
|
||
|
customize both.
|
||
|
|
||
|
Link: https://lore.kernel.org/r/Yv2UeCIcA00lJC5j@bombadil.infradead.org
|
||
|
Signed-off-by: Luis Chamberlain <mcgrof@kernel.org>
|
||
|
Signed-off-by: Vishal Verma <vishal.l.verma@intel.com>
|
||
|
---
|
||
|
meson.build | 1 +
|
||
|
1 file changed, 1 insertion(+)
|
||
|
|
||
|
diff --git a/meson.build b/meson.build
|
||
|
index aecf461..802b38c 100644
|
||
|
--- a/meson.build
|
||
|
+++ b/meson.build
|
||
|
@@ -9,6 +9,7 @@ project('ndctl', 'c',
|
||
|
default_options : [
|
||
|
'c_std=gnu99',
|
||
|
'prefix=/usr',
|
||
|
+ 'libdir=/usr/lib',
|
||
|
'sysconfdir=/etc',
|
||
|
'localstatedir=/var',
|
||
|
],
|
||
|
--
|
||
|
2.27.0
|
||
|
|