tech-pkg archive

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

Re: libidn2 question



If you grep in this file:
https://d.n0.is/pub/tmp/gnunet0118_pkgsrc_config.log

for idn2, you can see that for some reason it is failing
to get detected. So my question is, is the error on my
side with the gnunet hat on, or on the pkgsrc side?

ng0 transcribed 6.3K bytes:
> Hi,
> 
> I am debugging a curious behavior of wip/gnunet building with libidn2.
> Outside of pkgsrc it works.
> 
> With idn keyword (which just switches from idn1 to idn2, logic to
> deal with presence of both with a favor for libidn2 is present in
> our (gnunet) build system), this happens.
> 
> I should mention that this mk code is for idn in wip/gnunet:
> 
> # idn is mandatory but idn or idn2 can be used with a preference
> # for idn2.
> .if !empty(PKG_OPTIONS:Midn)
> .include "../../devel/libidn2/buildlink3.mk"
> CONFIGURE_ARGS+=        --with-libidn2=${BUILDLINK_PREFIX.libidn2}
> .else
> .include "../../devel/libidn/buildlink3.mk"
> CONFIGURE_ARGS+=        --with-libidn=${BUILDLINK_PREFIX.libidn}
> .endif
> 
> 
> 
> This leads to what is pasted below. Do we deal differently with
> libidn2 (with libidn1 the build in pkgsrc works)?
> 
> 
> --- dnsparser.lo ---
> --- dnsstub.lo ---
>   CC       dnsstub.lo
> --- dnsparser.lo ---
>   CC       dnsparser.lo
> dnsparser.c: In function 'GNUNET_DNSPARSER_check_label':
> dnsparser.c:62:7: error: 'IDNA_SUCCESS' undeclared (first use in this function); did you mean 'EXIT_SUCCESS'?
>    if (IDNA_SUCCESS != idna_to_ascii_8z (label, &output, IDNA_ALLOW_UNASSIGNED))
>        ^~~~~~~~~~~~
>        EXIT_SUCCESS
> dnsparser.c:62:7: note: each undeclared identifier is reported only once for each function it appears in
> dnsparser.c:62:23: warning: implicit declaration of function 'idna_to_ascii_8z' [-Wimplicit-function-declaration]
>    if (IDNA_SUCCESS != idna_to_ascii_8z (label, &output, IDNA_ALLOW_UNASSIGNED))
>                        ^~~~~~~~~~~~~~~~
> dnsparser.c:62:57: error: 'IDNA_ALLOW_UNASSIGNED' undeclared (first use in this function)
>    if (IDNA_SUCCESS != idna_to_ascii_8z (label, &output, IDNA_ALLOW_UNASSIGNED))
>                                                          ^~~~~~~~~~~~~~~~~~~~~
> dnsparser.c: In function 'GNUNET_DNSPARSER_check_name':
> dnsparser.c:94:7: error: 'IDNA_SUCCESS' undeclared (first use in this function); did you mean 'EXIT_SUCCESS'?
>    if (IDNA_SUCCESS != idna_to_ascii_8z (name, &output, IDNA_ALLOW_UNASSIGNED))
>        ^~~~~~~~~~~~
>        EXIT_SUCCESS
> dnsparser.c:94:56: error: 'IDNA_ALLOW_UNASSIGNED' undeclared (first use in this function)
>    if (IDNA_SUCCESS != idna_to_ascii_8z (name, &output, IDNA_ALLOW_UNASSIGNED))
>                                                         ^~~~~~~~~~~~~~~~~~~~~
> dnsparser.c: In function 'parse_name':
> dnsparser.c:226:3: error: unknown type name 'Idna_rc'
>    Idna_rc rc;
>    ^~~~~~~
> dnsparser.c:250:11: error: 'IDNA_SUCCESS' undeclared (first use in this function); did you mean 'EXIT_SUCCESS'?
>        if (IDNA_SUCCESS !=
>            ^~~~~~~~~~~~
>            EXIT_SUCCESS
> dnsparser.c:251:17: warning: implicit declaration of function 'idna_to_unicode_8z8z' [-Wimplicit-function-declaration]
>            (rc = idna_to_unicode_8z8z (tmp, &utf8, IDNA_ALLOW_UNASSIGNED)))
>                  ^~~~~~~~~~~~~~~~~~~~
> dnsparser.c:251:51: error: 'IDNA_ALLOW_UNASSIGNED' undeclared (first use in this function)
>            (rc = idna_to_unicode_8z8z (tmp, &utf8, IDNA_ALLOW_UNASSIGNED)))
>                                                    ^~~~~~~~~~~~~~~~~~~~~
> In file included from ../../src/include/gnunet_crypto_lib.h:59,
>                  from ../../src/include/gnunet_util_lib.h:64,
>                  from dnsparser.c:41:
> dnsparser.c:256:21: warning: implicit declaration of function 'idna_strerror'; did you mean 'gcry_strerror'? [-Wimplicit-function-declaration]
>                      idna_strerror (rc));
>                      ^~~~~~~~~~~~~
> ../../src/include/gnunet_common.h:523:39: note: in definition of macro 'GNUNET_log'
>            GNUNET_log_nocheck ((kind), __VA_ARGS__);                       \
>                                        ^~~~~~~~~~~
> dnsparser.c:254:24: warning: format '%s' expects argument of type 'char *', but argument 4 has type 'int' [-Wformat=]
>                      _ ("Failed to convert DNS IDNA name `%s' to UTF-8: %s\n"),
>                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ../../src/include/gnunet_common.h:523:39: note: in definition of macro 'GNUNET_log'
>            GNUNET_log_nocheck ((kind), __VA_ARGS__);                       \
>                                        ^~~~~~~~~~~
> dnsparser.c:254:21: note: in expansion of macro '_'
>                      _ ("Failed to convert DNS IDNA name `%s' to UTF-8: %s\n"),
>                      ^
> dnsparser.c: In function 'GNUNET_DNSPARSER_builder_add_name':
> dnsparser.c:900:3: error: unknown type name 'Idna_rc'
>    Idna_rc rc;
>    ^~~~~~~
> dnsparser.c:905:7: error: 'IDNA_SUCCESS' undeclared (first use in this function); did you mean 'EXIT_SUCCESS'?
>    if (IDNA_SUCCESS !=
>        ^~~~~~~~~~~~
>        EXIT_SUCCESS
> dnsparser.c:906:50: error: 'IDNA_ALLOW_UNASSIGNED' undeclared (first use in this function)
>        (rc = idna_to_ascii_8z (name, &idna_start, IDNA_ALLOW_UNASSIGNED)))
>                                                   ^~~~~~~~~~~~~~~~~~~~~
> In file included from ../../src/include/gnunet_crypto_lib.h:59,
>                  from ../../src/include/gnunet_util_lib.h:64,
>                  from dnsparser.c:41:
> dnsparser.c:910:19: warning: format '%s' expects argument of type 'char *', but argument 4 has type 'int' [-Wformat=]
>                    "Failed to convert UTF-8 name `%s' to DNS IDNA format: %s\n"),
>                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> ../../src/include/gnunet_common.h:523:39: note: in definition of macro 'GNUNET_log'
>            GNUNET_log_nocheck ((kind), __VA_ARGS__);                       \
>                                        ^~~~~~~~~~~
> dnsparser.c:909:17: note: in expansion of macro '_'
>                  _ (
>                  ^
> *** [dnsparser.lo] Error code 1
> 
> make[3]: stopped in /usr/work/wip/gnunet/work/gnunet-0.11.8/src/util
> 1 error
> 
> make[3]: stopped in /usr/work/wip/gnunet/work/gnunet-0.11.8/src/util
> *** [all-recursive] Error code 1
> make[2]: stopped in /usr/work/wip/gnunet/work/gnunet-0.11.8/src
> 1 error
> 
> make[2]: stopped in /usr/work/wip/gnunet/work/gnunet-0.11.8/src
> *** [all-recursive] Error code 1
> 
> make[1]: stopped in /usr/work/wip/gnunet/work/gnunet-0.11.8
> 1 error
> 
> make[1]: stopped in /usr/work/wip/gnunet/work/gnunet-0.11.8
> *** [all] Error code 2
> 
> make: stopped in /usr/work/wip/gnunet/work/gnunet-0.11.8
> 1 error
> 
> make: stopped in /usr/work/wip/gnunet/work/gnunet-0.11.8
> *** Error code 2
> 
> Stop.
> make[1]: stopped in /usr/pkgsrc/wip/gnunet
> *** Error code 1
> 
> Stop.
> make: stopped in /usr/pkgsrc/wip/gnunet
> 


Home | Main Index | Thread Index | Old Index