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...