pkgsrc-Bugs archive

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

Re: pkg/55086: compiling net/tigervnc on Solaris



The following reply was made to PR pkg/55086; it has been noted by GNATS.

From: =?UTF-8?Q?Clausen=2c_J=c3=b6rn?= <joern.clausen%uni-bielefeld.de@localhost>
To: <gnats-bugs%netbsd.org@localhost>, <solaris-pkg-people%netbsd.org@localhost>,
	<gnats-admin%netbsd.org@localhost>, <pkgsrc-bugs%netbsd.org@localhost>,
	<dholland-pbugs%netbsd.org@localhost>
Cc: 
Subject: Re: pkg/55086: compiling net/tigervnc on Solaris
Date: Mon, 12 Jul 2021 08:08:33 +0200

 I just noticed that I never actually documented the original problem 
 with mcookie...
 
 
 Compiling devel/libuuid and x11/mcookie on Solaris now fails with
 
 $ bmake MAKE_JOBS=1
 => Bootstrap dependency digest>=20010302: found digest-20190127
 ===> Skipping vulnerability checks.
 WARNING: No /opt/pkg-hrz/20201118/pkgdb/pkg-vulnerabilities file found.
 WARNING: To fix run: `/opt/pkg-hrz/20201118/sbin/pkg_admin -K 
 /opt/pkg-hrz/20201118/pkgdb fetch-pkg-vulnerabilities'.
 ===> Building for libuuid-2.32.1
 /opt/pkg-hrz/20201118/bin/bmake  all-recursive
 Making all in po
    CC       lib/libuuid_la-randutils.lo
 In file included from lib/randutils.c:29:
 /usr/include/sys/random.h:81:12: error: conflicting types for 
 'random_get_bytes'
     81 | extern int random_get_bytes(uint8_t *dbuf, size_t dlen);
        |            ^~~~~~~~~~~~~~~~
 In file included from lib/randutils.c:19:
 ./include/randutils.h:14:13: note: previous declaration of 
 'random_get_bytes' was here
     14 | extern void random_get_bytes(void *buf, size_t nbytes);
        |             ^~~~~~~~~~~~~~~~
 *** [lib/libuuid_la-randutils.lo] Error code 1
 
 bmake[2]: stopped in 
 /opt/pkgsrc/pkg-hrz/pkgsrc/devel/libuuid/work.pkgsrc-sol11i86/util-linux-2.32.1
 1 error
 
 
 mcookie fails with the same error, but NB in its own code, i.e. 
 randutil.{ch} are copied verbatim from libuuid.
 
 randutil.c contains an unconditional implementation of
 
 void random_get_bytes(void *buf, size_t nbytes)
 
 that conflicts with Solaris'
 
 extern int random_get_bytes(uint8_t *dbuf, size_t dlen);
 
 as long as <sys/random.h> is included. When that header is commented 
 out, other definitions are missing and compilations fails as well. I 
 guess it would take some effort to make libuuid more portable...
 
 -- 
 Jörn Clausen
 BITS - Bielefelder IT-Servicezentrum
 https://www.uni-bielefeld.de/bits
 


Home | Main Index | Thread Index | Old Index