Not building -mcpu=ultrasparc results in ATOMIC_INT_LOCK_FREE == 1
which is responsible for the missing symbols on sparc64 multilib [2].
Maybe Jose (CC) can give some hints regarding the proper buildflags
which will make gcc build with -mcpu=ultrasparc when -mcpu32 is
specified.
Jose, any idea? The full background of the problem can be found
in the full bug report #792204 [3]:
In gcc.spec we are using this:
OPT_FLAGS=`echo $OPT_FLAGS|sed -e 's/-mcpu=ultrasparc/-mtune=ultrasparc/g;s/-mcpu=v[78]//g'`
Which effectively sets -mcpu=ultrasparc when building GCC. I presume
you want to do the same in the rules you use to build the Debian
package.
The default cpu option for -m32 in sparc is very very conservative: a v7
cpu. It may be worth it to consider bumping it to ultrasparc/v9a or, at
least v9, when GCC is built for sparcv9-* targets...