help-libidn
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: providing a libidn compatibility API


From: Tim Rühsen
Subject: Re: providing a libidn compatibility API
Date: Fri, 10 Feb 2017 17:14:16 +0100
User-agent: KMail/5.2.3 (Linux/4.9.0-1-amd64; KDE/5.28.0; x86_64; ; )

On Freitag, 10. Februar 2017 15:29:42 CET Nikos Mavrogiannopoulos wrote:
> On Fri, Feb 10, 2017 at 10:23 AM, Tim Rühsen <address@hidden> wrote:
> > Thanks for the docs !
> > idn2_to_ascii_4i has different argument names than the docs - IMO, we
> > should amend the arg names of the function to be in sync with the other
> > to_ascii functions.
> > 
> > Regarding the flags, I made a different approach yesterday (see 'decode'
> > branch, commit 1992f3b171945677d5445f7c91a83d4746aefa04).
> 
> [...]
> 
> > The advantage would be to not hard-code flags within idn2_to_ascii_*().
> > That seems to be more flexible. If you agree, I'll commit the docs from
> > your patch and amend the arg names of idn2_to_ascii_4i.
> 
> Replying to list, that this indeed makes sense. One thing I identified
> is that libidn2 no longer compiles in mingw environment, or in other
> environments where libunistring is missing (i.e., the internal
> unistring is not sufficient).
> 
> Adding the missing items in bootstrap.conf (were already there in a
> fixme block), allows compilation if one performs it as make -C lib &&
> make
> 
> For some reason lib wouldn't compile, even though the order in Makefile.am
> is: SUBDIRS = lib . src doc examples tests po
> 
> Example:
> 
> $ make
> cat ./idna-tables-6.3.0.txt | ./gen-tables-from-iana.pl > data.c.new
> mv data.c.new data.c
>   CC       gentr46map.o
> gentr46map.c:37:20: fatal error: unistr.h: No such file or directory
>  #include <unistr.h>
> 
> while
> $ make -C lib && make
> 
> works.

We already had a commit that worked without linking libunistring - that adds 
of course extra code / binary to libidn2.so/.a.

It turned out that if libunistring is linked, this extra code is still added 
to libidn2, just blowing up the size without any advantage. Simon and I didn't 
have (fast) solution to that, so we commented the extra gnulib modules in 
bootstrap.conf.

So right now, libunistring is a prerequisite for building libidn2. And someone 
building libidn2 should have no problem building & installing libunistring - 
it basically just is gnulib modules compiled into a library.

Regards, Tim

Attachment: signature.asc
Description: This is a digitally signed message part.


reply via email to

[Prev in Thread] Current Thread [Next in Thread]