The predefined %_localstatedir macro should evaluate to /var, not to %_prefix/var
Using e.g. %_localstatedir/xyz in a spec file that is used for rpmbuild (Linux) as well yields
On Linux:
/var/xyz
On Solaris:
/usr/var/xyz
N.B. the directory /usr/var doesn't even exist on a standard solaris 10 installation, so it cannot be THAT common ;-)