Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Date: Sun, 10 Nov 2013 18:14:13 +0100
From: Szabolcs Nagy <nsz@...t70.net>
To: musl@...ts.openwall.com
Cc: Gregor Richards <gr@...due.edu>
Subject: Re: Latest pkgsrc results [What builds on musl 0.9.13?]

* Rich Felker <dalias@...ifal.cx> [2013-11-09 11:41:47 -0500]:
> On Sat, Nov 09, 2013 at 05:16:55PM +0100, Szabolcs Nagy wrote:
> > this is sad
> > so c++ code that includes mm_malloc.h and stdlib.h will fail
> 
> What is mm_malloc.h and why is it declaring malloc itself rather than
> including stdlib.h?
> 

it declares posix_memalign and defined _mm_malloc and _mm_free

i think it was added to gcc so it is possible to allocate memory
for the sse intrinsics with the right alignment (included in
xmmintrin.h which follows the intel and msvc api, see bug report)

and for c++ they add throw() to posix_memalign so it's incompatible
with the libc one hence boost fails to build (or anythning that
uses both xmmintrin.h and stdlib.h)

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=16570

> Yes, possibly. (Is it possible that "ar" is getting used to make a .a
> file and somehow busybox ar is getting used?)

i dont know, i think gregor could look into this

===> Building for tk-8.5.14nb3
--- libtk85.so ---
rm -f libtk85.so
gcc -shared -O2 -Wno-error -I/usr/include -I/usr/include/freetype2 -O2 -O2 -Wno-error -I/usr/include -I/usr/include/freetype2 -pipe -I/usr/include -I/usr/include/freetype2  -L/usr/lib -Wl,-R/usr/lib -Wl,--export-dynamic -o libtk85.so tk3d.o tkArgv.o tkAtom.o [..] tkUnixXId.o -lpthread -Wl,-R/usr/lib -lXft -L/usr/lib64 -Wl,-R/usr/lib64 -lX11 -ldl  -lpthread -L/usr/lib -ltclstub85   -Wl,-rpath,/usr/lib
tkPanedWindow.o: file not recognized: File truncated
collect2: error: ld returned 1 exit status

meanwhile i finished scanning the rest of the logs:

missing symbols (compile or link time):

ffsl, ffsll
	redis, qemu

	glibc only api (ffs is bsd as well)
	many pkgs check for ffsl (including redis, which does it incorrectly)
	both redis and qemu silently succeed because implicit declaration
	(and it might even work because it is a gcc builtin)

finite
	tuxracer, clutter-box2d, maude, polyml, see

	these are build failures, but configure is broken for more pkgs.
	AC_CHECK_FUNCS will fail for all macros because it tries to check
	linkage (this is broken in itself but the way the check is done
	is broken as well) and of course that's how most packages check for
	isnan, isinf, isfinite or finite
	some packages only check for finite not isfinite others only try
	to get it from ieeefp.h, so if we provide it, it has to be an
	extern function otherwise php, ruby, etc will continue to use their
	own pitiful implementations (they are lucky that gcc builtins will
	override that)

drem
	xplot

	alias to remainder, i can add it

NETDB_INTERNAL, NETDB_SUCCESS
	ecl, gambc, libspf2, knc
NO_ADDRESS
	ecl, gambc, dovecot, elm-me, bglibs, nullmailer, pptp, rlpr, libghttp

	i think NO_ADDRESS alias is safe to add
	NETDB_* i'm not sure about

TIOCGETP, TIOCSETP
	ucblogo, splitvt

	seem to be non-linux ioctls, there were many
	other non-linux failures i assume they work on glibc
	because of ifdef __GLIBC__

bsd struct tcphdr, TH_*
	darkstat, dnscap, flodo, knock, lft, scamper, tcpflow, tcptrace, trafshow, ipv6-toolkit, portsentry, rid
struct ip_mreq_source
	flow-tools
struct tcp_info
	httping, py27-uwsgi
tcp_seq
	ssldump
struct tcp_md5sig
	quagga
TCP_ESTABLISHED, TCP_LISTEN
	ruby-raindrops

	it maybe useful to add the bsd version of struct tcphdr
	with the TH_* macros under _BSD_SOURCE in netinet/tcp.h
	(i'm not sure if the listed pkgs are supposed to be
	bsd only or not though)

PTHREAD_MUTEX_RECURSIVE_NP
	panomatic
PTHREAD_MUTEX_ERRORCHECK_NP, PTHREAD_ERRORCHECK_MUTEX_INITIALIZER_NP
	miredo
PTHREAD_MUTEX_ADAPTIVE_NP, PTHREAD_ADAPTIVE_MUTEX_INITIALIZER_NP
	varnish
GLOB_ONLYDIR
	monit
GLOB_TILDE
	GutenMark, remind, i3, libdesktop-agnostic
GLOB_BRACE
	remind, libdesktop-agnostic
HZ
	fujiplay, nntpcache, dvdrecord
CLK_TCK
	euler
_PATH_MOUNTED
	samba35, bacula
_PATH_SENDMAIL
	distribute
WTMPX_FILE
	wterm, vsftpd, rxvt-unicode
_WTMP_FILE
	srp-client
union semun
	buffer
union wait
	tcsh, skkfep, ttyrec, tcx, mxterm
struct dqblk
	wu-ftpd
current_salt (member of struct crypt_data)
	nginx
ut_xtime (member of struct utmpx)
	eterm
encrypt
	claws-mail
herror
	cstream, yafc, newsfetch
re_comp, re_exec
	fep
setnetgrent, getnetgrent, endnetgrent
	netgroup
gwtwd
	vscm
mallinfo
	threadingbuildingblocks
getprogname
	nologinmsg
program_invocation_name
	gchore
getdirentries
	9base
ruserok
	amanda-common
rresvport
	htdig
sigblock, sigsetmask
	ispell
SIGCLD
	openvmps
XCASE
	brandybasic
NCC
	heyu
INADDR_MAX_LOCAL_GROUP
	xorp
_STAT_VER
	fakeroot
__GLIBC__
	lilo explicitly checks for this :)

missing symbol because include or featuretest fail
	maelstrom-x11 fd_set
	moria time_t
	uqm fd_set
	gpspoint EOF
	sane-backends u_char
	py27-numarray FE_INVALID
	mandelbulber fd_set, timeval
	tesseract fd_set, timeval
	dpbox u_char
	scim-ccinput uint
	sj3-client uid_t
	sj3-server uid_t
	chicken NSIG
	konoha timeval
	dcc u_char
	distribute O_RDWR
	dspam u_int32_t
	ja-mh6 O_RDWR
	vanessa_logger CODE
	openfst ssize_t
	qalculate fd_set, timeval
	xfractint O_RDONLY
	mdp LOCK_EX,LOCK_NB,LOCK_UN
	p5-pkgsrc-Dewey ssize_t
	bsdiff u_char
	celestia sprintf
	colorls u_long
	ibutton-pdkit ulong, ushort
	stellarium fd_set
	usbprog ssize_t
	ggrab timeval
	hwdecode-demos timeval
	libdvbpsi ssize_t
	libva-driver-vdpau timeval
	cmu-dhcpd SA_NOMASK
	dhcpcd O_WRONLY, pid_t
	gopher MADV_SEQUENTIAL, caddr_t
	libsscript F_GETFL
	nap u_short
	omniORB usleep, gettimeofday
	p5-Net-RawIP u_int32_t
	partysip u_char
	radiusd-cistron O_RDWR
	libssh mode_t
	sendfile mode_t
	socks4 F_GETFL
	spegla struct statfs
	tcpdpriv struct statfs
	udpcast fd_set
	unworkable u_int32_t
	vde PATH_MAX
	vnstat O_RDONLY
	zsync off_t
	hplip u_char
	pslib uint
	coolkey strlen
	chkrootkit O_RDONLY
	libfprint memmem
	libprelude-python ptrdiff_t
	rainbowcrack u_int64_t
	smtpd O_WRONLY
	acpica-utils pthread_t
	acpidump u_char
	amtterm timeval
	bsign caddr_t
	fs-kit uid_t
	gpart errno
	libhfs time_t
	mtscan O_RDONLY
	pv struct stat64
	radmind u_int
	rtty uchar
	strace PTRACE_PEEKUSER
	wipe u_int32_t
	xfce4-battery-plugin R_OK
	xfce4-diskperf-plugin dev_t
	xfe mode_t
	catdoc int32_t
	highlight stderr
	makeztxt u_long
	rasqal int16_t
	stardic fopen
	notion itimerval
	bozohttpd u_int
	qDecoder O_RDONLY
	vte029 ptsname_r
	xmindpath MAXNAMLEN

busybox and pkgsrc build env failures:

missing tbl and nroff
/bin/sed: No such file or directory
/usr/bin/file: not found
/bin/awk: not found
/usr/bin/fetch: not found
/bin/sh: git: not found
pax: Cannot set permissions on [..] (Not supported)
/bin/sh: scrollkeeper-config: not found
sed: bad option in substitution expression
sed: illegal option: E
ls: illegal option: f
cat: illegal option: v
diff: illegal option: I
sh: no: unknown operand
mount: Out of memory
env: can't execute '/usr/bin/bmake': No such file or directory
env: can't execute '/bin/sh': Out of memory
and link failures for curses, intl, iconv

other kind of build failures:

picoc, pdflib-lite
	sizeof(FILE)
squeak-vm
	static FILE stdoutStack[STDOUT_STACK_SZ];
geomview
	static FILE oldfile;
delegate
	FILE s_FILE;
netsurf
	stdout = stderr;
STk
	#    define READ_DATA_PENDING(fp) (fp->_cnt)
nmh, ja-mh6
	if ((io->_ptr = io->_base))
	io->_cnt = 0;
regionset
	dvd_udf.c:222:9: error: cast to union type from type not present in union
	pos = (fpos64_t)lb_number * (fpos64_t)DVD_VIDEO_LB_LEN;
libgii
	#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE)
xsc
	checking for gettimeofday... no
zphoto
	extern int vasprintf (char **ptr, const char *fmt, ...);
molden
	static int linkat = 0;
gauche, mercury
	/usr/include/asm/sigcontext.h:134:8: error: redefinition of 'struct _fpstate'
	/usr/include/asm/sigcontext.h:157:8: error: redefinition of 'struct sigcontext'
	/usr/include/bits/signal.h:44:8: note: originally defined here
gcc47
	error: conflicting types for 'size_t'
	(gcc stddef vs musl alltypes)
swi-prolog-lite
	error: conflicting types for '__assert_fail'
bing
	sysdep.h:74:19: error: 'IPOPT_EOL' undeclared (first use in this function)
	#define IPOPT_EOL IPOPT_END
	(in musl IPOPT_END is defined as IPOPT_EOL)
tcpreplay
	typedef int socklen_t;
microdc2, rc, elinks
	error: incompatible types when assigning to type 'va_list' from type 'struct __va_list_tag *'
couriertcpd
	configure: error: I give up -- neither wait nor wait3 works properly
pspp, gnuls, findutils, libunistring
	fseterr.c:72:3: error: #error "Please port gnulib fseterr.c to your platform! Look at the definitions of ferror and clearerr on your system, then report this to bug-gnulib."
exim-4
	ld: cannot find -lnsl
mush
	gcc: error: unrecognized command line option '-fwritable-strings'
mutt
	error: "Could not determine where new mail is stored."
clamav
	configure: error: C++ compiler cannot create executables
fityk
	g++: internal compiler error: Killed (program cc1plus)
dirac
	std::abs(double) -> double, fails in int context
	if ( (std::abs(m_coeff_data[j][i])<<2) >= u_threshold )
	val = std::max( val , std::abs(m_coeff_data[j][i]) );
aiccu, ettercap, openvpn, rp-pppoe, vpnc, socat, tinc
	linux/if_ether.h:126:8: error: redefinition of 'struct ethhdr'
	netinet/if_ether.h:93:8: error: redefinition of 'struct ethhdr'
cfengine
	linux/if.h:137:8: error: redefinition of 'struct ifmap'

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.