Hi M Santala, On Sat, Sep 21, 2019 at 4:45 PM M Santala <markoad...@gmail.com> wrote: > The icu-config script has been deprecated, however, it has not yet been made > obsolete. We may argue on this. It was never a common way to detect ICU. It can be detected via pkg-config for years I believe, but very few migrated to that. Somewhere I understand this, as if it (icu-config) works, why should the code changed to pkg-config. Meaning they need a reason to update. As it's easy to migrate, I don't see why icu-config should be carried over for years.
> Hence, it should should still be included in order not to break legacy code > still relying > on it. As it has been deprecated only recently, only code under active > development has had > time to adapt. Other code will be broken and it is not at all trivial to fix > such issues > when the aim is to only compile a code package. As I remember, its deprecation was in the queue since 2014 which mean five years now. As noted above upstream may not follow under the hood changes in other sources until their code works with it. > I stumbled upon the same error as the previous poster while trying to build > LTFS support > using RHEL sources. I got around the issue by building libicu-dev from > sources and > manually tweaking the ./configure rules by adding --enable-icu-config. > Nevertheless it did > not get included in the .deb package so I ended up copying it manually from > the build > directory to /usr/bin. Clearly this is not a proper way to install missing > utilities. Do you see what are you doing? You spend (more) time to remain in the past, instead of updating LTFS and send the changes to LTFS. Meaning keeping this problem open instead of fixing it. > I would expect deprecated features to remain available as legacy code won't > know of anything > better. It is essential to avoid breaking something that works if at all > possible. Only after > a feature is genuinely obsolete should it be scheduled for removal in a few > years time. Maybe > a utility like icu-config could be ultimately converted into a wrapper > running pkg-config > internally? Again. Please tell me why do you want to live in the past? If you mean this LTFS [1], then it seems all you have to do is some changes in configure.ac file. "icu-config --cppflags" should be "pkg-config --cflags", "icu-config --ldflags" should be "pkg-config --libs icu-i18n" and "icu-config --version" should be "pkg-config --modversion icu-i18n". But for any source the migration from icu-config to its pkg-config detection is such simple. I will definitely _not_ put back icu-config just because others don't want to make this simple change in their source. Regards, Laszlo/GCS [1] https://github.com/LinearTapeFileSystem/ltfs/wiki