Обсуждение: allow meson to find ICU in non-standard localtion
I attached a simple patch that allows meson to find ICU in a non- standard location if if you specify -Dextra_lib_dirs and -Dextra_include_dirs. I'm not sure it's the right thing to do though. One downside is that it doesn't output the version that it finds, it only outputs "YES".
Вложения
Hi,
Thanks for the patch.
On Wed, 22 Feb 2023 at 21:26, Jeff Davis <pgsql@j-davis.com> wrote:
>
> I'm not sure it's the right thing to do though. One downside is that it
> doesn't output the version that it finds, it only outputs "YES".
- icu = dependency('icu-uc', required: icuopt.enabled())
- icu_i18n = dependency('icu-i18n', required: icuopt.enabled())
I think you can do dependency checks with 'required: false' first and
if they weren't found by dependency checks; then you can do
cc.find_library() checks. This also solves only the outputting "YES"
problem if they were found by dependency checks.
Regards,
Nazir Bilal Yavuz
Microsoft
Hi, On 2023-02-22 10:26:23 -0800, Jeff Davis wrote: > I attached a simple patch that allows meson to find ICU in a non- > standard location if if you specify -Dextra_lib_dirs and > -Dextra_include_dirs. If you tell meson where to find the pkg-config file in those directories it'd also work. -Dpkg_config_path=... Does that suffice? Greetings, Andres Freund
On Sun, 2023-02-26 at 09:57 -0800, Andres Freund wrote:
> If you tell meson where to find the pkg-config file in those
> directories it'd
> also work. -Dpkg_config_path=...
Setup is able to find it, which is good, but it seems like it's not
adding it to RPATH so it's not working.
I think we need some doc updates to clarify which features are affected
by -Dextra_lib_dirs/-Dpkg_config_path.
Regards,
Jeff Davis
On Sun, Feb 26, 2023 at 7:36 PM Jeff Davis <pgsql@j-davis.com> wrote: > > On Sun, 2023-02-26 at 09:57 -0800, Andres Freund wrote: > > If you tell meson where to find the pkg-config file in those > > directories it'd > > also work. -Dpkg_config_path=... > > Setup is able to find it, which is good, but it seems like it's not > adding it to RPATH so it's not working. For my custom OpenSSL setups using -Dpkg_config_path, meson initially adds the correct RPATH during build, then accidentally(?) strips it during the `ninja install` step. This has been complained about [1], and it seems like maybe they intended to fix it back in 0.55, but I'm not convinced they did. :) I work around it by manually setting -Dextra_lib_dirs. I just tried doing that with ICU 72, and it worked without a patch. Hopefully that helps some? --Jacob [1] https://github.com/mesonbuild/meson/issues/6541
On Wed, 2023-03-01 at 11:43 -0800, Jacob Champion wrote:
> I work around it by manually setting -Dextra_lib_dirs. I just tried
> doing that with ICU 72, and it worked without a patch. Hopefully that
> helps some?
Yes, works, thank you.
Obviously we'd like a little better solution so that others don't get
confused, but it's not really a problem for me any more.
Also there's the issue that libxml2.so pulls in the system's ICU
regardless. I don't think that causes a major problem, but I thought
I'd mention it.
Regards,
Jeff Davis
On 01.03.23 21:30, Jeff Davis wrote: > On Wed, 2023-03-01 at 11:43 -0800, Jacob Champion wrote: >> I work around it by manually setting -Dextra_lib_dirs. I just tried >> doing that with ICU 72, and it worked without a patch. Hopefully that >> helps some? > > Yes, works, thank you. > > Obviously we'd like a little better solution so that others don't get > confused, but it's not really a problem for me any more. So should we withdraw the patch from the commit fest?
On Wed, 2023-03-08 at 17:30 +0100, Peter Eisentraut wrote:
> So should we withdraw the patch from the commit fest?
Withdrawn. If someone else is interested we can still pursue some
improvements.
Regards,
Jeff Davis