Subject: toolchain/24509: MKSOFTFLOAT=yes isn't working for powerpc
To: None <>
From: None <>
List: netbsd-bugs
Date: 02/21/2004 12:35:41
>Number:         24509
>Category:       toolchain
>Synopsis:       MKSOFTFLOAT=yes isn't working for powerpc
>Confidential:   no
>Severity:       serious
>Priority:       low
>Responsible:    toolchain-manager
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sat Feb 21 03:36:00 UTC 2004
>Originator:     Masao Uebayashi
>Release:        NetBSD 1.6ZK
	Pultek Corp.
System: NetBSD 1.6ZK NetBSD 1.6ZK (ORATOSQUILLA) #4: Thu Feb 19 00:09:10 JST 2004 i386
Architecture: i386
Machine: i386
	" -m evbppc -V MKSOFTFLOAT=yes" fails as follows
		/src/TNF/arch/evbppc/dest/usr/lib/libc.a(softfloat.o)(.text+0x31e8): In function `__fixunsdfsi':
		: multiple definition of `__fixunsdfsi'
		/src/TNF/arch/evbppc/dest/usr/lib/libgcc.a(_fixunsdfsi.o)(.text+0x0): first defined here
		/src/TNF/arch/evbppc/tools/lib/gcc-lib/powerpc--netbsd/3.3.2/../../../../powerpc--netbsd/bin/ld: Warning: size of symbol `__fixunsdfsi' changed from 120 in /src
		/TNF/arch/evbppc/dest/usr/lib/libgcc.a(_fixunsdfsi.o) to 284 in /src/TNF/arch/evbppc/dest/usr/lib/libgcc.a(_fixunsdfsi.o)
		collect2: ld returned 1 exit status
		ERROR: Failed to make release
	This is because our libc's soft float functions (lib/libc/softfloat)
	are conflicting with libgcc's soft float functions.  There lacks a way
	to build the libgcc's soft float functions conditionally, which seems
	to need a hack in our gcc/libgcc build process.
	A work around by M L Riechers is
	This tweaks /mnt/mnt/usr/local/src/usr/src/gnu/lib/libgcc3/
	to not build conflicting functions in libgcc.
	% cd /usr/src
	% -m evbppc -V MKSOFTFLOAT=yes