tech-pkg archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
Re: [Fwd: Re: gnutls guile]
Greg Troxel transcribed 610 bytes:
> ng0%n0.is@localhost writes:
>
> > this is about building GnuTLS with the guile bindings.
> > As detailed here http://lists.gnu.org/archive/html/help-guix/2019-03/msg00051.html
> > and here http://lists.gnu.org/archive/html/help-guix/2019-03/msg00058.html
> > there are some issues.
>
> I am having a hard time following. Can you step back and briefly
> explain the big picture, in terms of if these are the autoconf triplets,
> what the middle one means, where it's being changed (and why if you
> know), how that leads to trouble, what the right fix is, and, assuming
> that this fix doesn't happen, what you think we (pkgsrc) should do?
Okay.
The best way to reproduce this under NetBSD (or probably any system
running pkgsrc) is to try and build wip/gnutls-guile, which I have
just commited. It's not really finished but serves best for
demonstration purposes.
gnutls-guile[1] assumes a hard-coded tripplet for all systems. In other
words, you will (problably, see[1]) run into no problems compiling this
without pkgsrc as the tripplet matches.
So these are not your regular autoconf tripplets as far as I remember.
1: or guile, it's been a while since I've read the code responsible for
for building.
I could be way of with assuming this is a fault in GnuTLS, which is why
I asked the maintainer of the bindings (but this wasn't very productive
so far).
Now the guile bindings of gnutls make use of
http://git.savannah.gnu.org/cgit/guile.git/tree/module/system/base/target.scm
I've compiled this again, the results are below.
In pkgsrc:
Making all in tests
gmake[2]: Entering directory '/usr/work/wip/gnutls-guile/work/gnutls-3.6.5/tests'
Making all in .
gmake[3]: Entering directory '/usr/work/wip/gnutls-guile/work/gnutls-3.6.5/tests'
CC utils.lo
CC seccomp.lo
CC utils-adv.lo
CCLD libutils.la
CC pkcs11/pkcs11-mock.lo
CCLD libpkcs11mock1.la
gmake[3]: Leaving directory '/usr/work/wip/gnutls-guile/work/gnutls-3.6.5/tests'
Making all in cert-tests
gmake[3]: Entering directory '/usr/work/wip/gnutls-guile/work/gnutls-3.6.5/tests/cert-tests'
gmake[3]: Nothing to be done for 'all'.
gmake[3]: Leaving directory '/usr/work/wip/gnutls-guile/work/gnutls-3.6.5/tests/cert-tests'
Making all in slow
gmake[3]: Entering directory '/usr/work/wip/gnutls-guile/work/gnutls-3.6.5/tests/slow'
gmake[3]: Nothing to be done for 'all'.
gmake[3]: Leaving directory '/usr/work/wip/gnutls-guile/work/gnutls-3.6.5/tests/slow'
gmake[2]: Leaving directory '/usr/work/wip/gnutls-guile/work/gnutls-3.6.5/tests'
Making all in fuzz
gmake[2]: Entering directory '/usr/work/wip/gnutls-guile/work/gnutls-3.6.5/fuzz'
gmake[2]: Nothing to be done for 'all'.
gmake[2]: Leaving directory '/usr/work/wip/gnutls-guile/work/gnutls-3.6.5/fuzz'
Making all in guile
gmake[2]: Entering directory '/usr/work/wip/gnutls-guile/work/gnutls-3.6.5/guile'
Making all in src
gmake[3]: Entering directory '/usr/work/wip/gnutls-guile/work/gnutls-3.6.5/guile/src'
GEN enum-map.i.c
GEN smob-types.i.c
GEN enums.h
GEN smobs.h
GEN core.x
GEN errors.x
/usr/pkg/bin/gmake all-am
gmake[4]: Entering directory '/usr/work/wip/gnutls-guile/work/gnutls-3.6.5/guile/src'
CC guile_gnutls_v_2_la-core.lo
core.c:806:19: warning: 'session_record_port_gc_hint' defined but not used [-Wunused-const-variable=]
static const char session_record_port_gc_hint[] =
^~~~~~~~~~~~~~~~~~~~~~~~~~~
CC guile_gnutls_v_2_la-errors.lo
CC guile_gnutls_v_2_la-utils.lo
CCLD guile-gnutls-v-2.la
ld: /usr/pkg/guile/2.2/lib/libguile-2.2.so: warning: warning: tmpnam() possibly used unsafely, use mkstemp() or mkdtemp()
gmake[4]: Leaving directory '/usr/work/wip/gnutls-guile/work/gnutls-3.6.5/guile/src'
gmake[3]: Leaving directory '/usr/work/wip/gnutls-guile/work/gnutls-3.6.5/guile/src'
gmake[3]: Entering directory '/usr/work/wip/gnutls-guile/work/gnutls-3.6.5/guile'
GEN modules/gnutls.scm
GUILEC modules/gnutls.go
;;; note: auto-compilation is enabled, set GUILE_AUTO_COMPILE=0
;;; or pass the --no-auto-compile argument to disable.
;;; compiling /usr/work/wip/gnutls-guile/work/.buildlink/bin/guild
;;; compiled /usr/work/wip/gnutls-guile/work/.home/.cache/guile/ccache/2.2-LE-8-3.A/usr/pkg/guile/2.2/bin/guild.go
Backtrace:
7 (apply-smob/1 #<catch-closure 757d34548a20>)
In ice-9/boot-9.scm:
705:2 6 (call-with-prompt _ _ #<procedure default-prompt-handle?>)
In ice-9/eval.scm:
619:8 5 (_ #(#(#<directory (guile-user) 757d3397d140>)))
In /usr/work/wip/gnutls-guile/work/.buildlink/bin/guild:
72:17 4 (main _)
In srfi/srfi-1.scm:
640:9 3 (for-each #<procedure 757d325d3340 at scripts/compile.?> ?)
In scripts/compile.scm:
259:26 2 (_ _)
In system/base/target.scm:
52:2 1 (with-target "x86_64--netbsd" #<procedure 757d325d3300 ?>)
In unknown file:
0 (scm-error misc-error #f "~A ~S" ("invalid target" "?") #)
ERROR: In procedure scm-error:
invalid target "x86_64--netbsd"
gmake[3]: *** [Makefile:2318: modules/gnutls.go] Error 1
gmake[3]: Leaving directory '/usr/work/wip/gnutls-guile/work/gnutls-3.6.5/guile'
gmake[2]: *** [Makefile:1806: all-recursive] Error 1
gmake[2]: Leaving directory '/usr/work/wip/gnutls-guile/work/gnutls-3.6.5/guile'
gmake[1]: *** [Makefile:1539: all-recursive] Error 1
gmake[1]: Leaving directory '/usr/work/wip/gnutls-guile/work/gnutls-3.6.5'
gmake: *** [Makefile:1466: all] Error 2
*** Error code 2
Stop.
make[1]: stopped in /usr/pkgsrc/wip/gnutls-guile
*** Error code 1
Stop.
make: stopped in /usr/pkgsrc/wip/gnutls-guile
The non-pkgsrc way assumes that you have a gnu gettext, git, autoconf,
and because of those also guile2.0.. so instead I have build it this
time from the 3.6.5 tarball. It throws a different error, but at least
passes the check.
LDFLAGS=-L/usr/pkg/lib CFLAGS="-g -O0" ./configure --enable-guile --disable-openssl-compatibility --disable-libdane --without-idn --without-tpm --disable-valgrind-tests
configure: summary of build options:
version: 3.6.5 shared 53:0:23
Host/Target system: x86_64-unknown-netbsd8.99
Build system: x86_64-unknown-netbsd8.99
Install prefix: /usr/local
Compiler: gcc
Valgrind: no
CFlags: -g -O0
Library types: Shared=yes, Static=no
Local libopts: yes
Local libtasn1: no
Local unistring: no
Use nettle-mini: no
Documentation: yes (manpages: yes)
configure: External hardware support:
/dev/crypto: no
Hardware accel: x86-64
Padlock accel: yes
Random gen. variant: auto-detect
PKCS#11 support: yes
TPM support: no
configure: Optional features:
(note that included applications might not compile properly
if features are disabled)
SSL3.0 support: no
SSL2.0 client hello: yes
Allow SHA1 sign: no
DTLS-SRTP support: yes
ALPN support: yes
OCSP support: yes
SRP support: yes
PSK support: yes
DHE support: yes
ECDHE support: yes
GOST support: yes
Anon auth support: yes
Heartbeat support: yes
IDNA support: no
Non-SuiteB curves: yes
FIPS140 mode: no
configure: Optional libraries:
Guile wrappers: no
C++ library: yes
DANE library: no
OpenSSL compat: no
configure: System files:
Trust store pkcs11:
Trust store dir:
Trust store file:
Blacklist file:
CRL file:
Priority file: /etc/gnutls/default-priorities
DNSSEC root key file: /etc/unbound/root.key
configure: WARNING:
***
*** The DNSSEC root key file in /etc/unbound/root.key was not found.
*** This file is needed for the verification of DNSSEC responses.
*** Use the command: unbound-anchor -a "/etc/unbound/root.key"
*** to generate or update it.
***
copying selected object files to avoid basename conflicts...
Making all in tests
Making all in .
CC utils.lo
CC seccomp.lo
CC utils-adv.lo
CCLD libutils.la
CC pkcs11/pkcs11-mock.lo
CCLD libpkcs11mock1.la
Making all in cert-tests
Making all in slow
Making all in fuzz
Making all in guile
Making all in src
GEN enum-map.i.c
Backtrace:
In ice-9/boot-9.scm:
160: 8 [catch #t #<catch-closure 7986a59ff6e0> ...]
In unknown file:
?: 7 [apply-smob/1 #<catch-closure 7986a59ff6e0>]
In ice-9/boot-9.scm:
66: 6 [call-with-prompt prompt0 ...]
In ice-9/eval.scm:
432: 5 [eval # #]
In ice-9/boot-9.scm:
2412: 4 [save-module-excursion #<procedure 7986a58eb840 at ice-9/boot-9.scm:4084:3 ()>]
4091: 3 [#<procedure 7986a58eb840 at ice-9/boot-9.scm:4084:3 ()>]
1734: 2 [%start-stack load-stack ...]
1739: 1 [#<procedure 7986a58fe900 ()>]
In unknown file:
?: 0 [primitive-load "/home/ng0/gnutls-3.6.5/guile/src/"]
ERROR: In procedure primitive-load:
ERROR: Throw to key `decoding-error' with args `("scm_from_stringn" "input locale conversion error" 85 #vu8(63 190 193 2))'.
*** Error code 1
Stop.
make[3]: stopped in /home/ng0/gnutls-3.6.5/guile/src
*** Error code 1
Stop.
make[2]: stopped in /home/ng0/gnutls-3.6.5/guile
*** Error code 1
Stop.
make[1]: stopped in /home/ng0/gnutls-3.6.5
*** Error code 1
Stop.
make: stopped in /home/ng0/gnutls-3.6.5
Home |
Main Index |
Thread Index |
Old Index