Thanks for the input
here is also the libreoffice approach for new icu
https://github.com/LibreOffice/core/commit/fabad007c60958f2ff87e8f636ff6a798ad1f963#diff-5cdae6d283d6fdef5700f98b098748cc
I guess the new icu will work on new distros with firebird 3.0
2.5 is already removed in debian testing / next ubuntu versions
On Tue, Oct 31, 2017 at 9:52 AM, Michal Kubecek <m...@mk-sys.cz> wrote:
> On Mon, Oct 30, 2017 at 05:04:25PM +0200, marius adrian popa wrote:
> > Firebird 3.0 icu59 ubuntu related patch
> >
> > ---------- Forwarded message ----------
> > From: Adam Conrad <adcon...@debian.org>
> > Date: Fri, Oct 27, 2017 at 10:03 PM
> > Subject: [pkg-firebird-general] Bug#879972: firebird3.0: FTBFS with
> icu59,
> > simple workaround/patch attached
> > To: Debian Bug Tracking System <sub...@bugs.debian.org>
> >
> >
> > Package: firebird3.0
> > Version: 3.0.2.32703.ds4-11
> > Severity: important
> > Tags: patch
> > User: ubuntu-de...@lists.ubuntu.com
> > Usertags: origin-ubuntu bionic ubuntu-patch
> >
> >
> >
> > In Ubuntu, the attached patch was applied to achieve the following:
> >
> > * Define UCHAR_TYPE=uint16_t to avoid C++11 and fix FTBFS with icu59.
> >
> > So, here's what's happening. In icu59, UChar is defined as char16_t if
> > you're compiling a C++ project (ie: ifdef __cplusplus), but char16_t is
> > a C++11 type. One could argue this is an ICU bug for forcing rdeps to
> > conform to a newer C++ standard (and one could even win that argument,
> > I imagine), but I figured working around it in firebird was the path of
> > least resistance.
> >
> > My first attempt was to change the firebird build from std=gnu++98 to
> > std=gnu++11. Don't do that. I mean, try if you want, but it does not
> > end well.
> >
> > This patch just tells icu to use the same type for UChar that it used to
> > and it seems to do the trick here. So, enjoy.
>
> This will probably work around the immediate build problem but as
> I pointed out some time ago in
>
> http://firebird.1100200.n4.nabble.com/heads-up-ICU-59-1-
> requires-C-11-td4645984.html
>
> the real problem is that starting with version 59.1, ICU officially
> requires C++11 so that there may be other, more subtle, issues with it
> and even if not, more can be expected to come with newer versions.
>
> On the other hand, making 2.5 code fully conform to C++11 might bring
> other problems so addressing ICU compatibility problems one by one is
> probably the only viable option (except just claiming that users of
> distributions that new should use 3.0).
>
> Michal Kubecek
>
>
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
Firebird-Devel mailing list, web interface at
https://lists.sourceforge.net/lists/listinfo/firebird-devel