Description of problem: The %{_var} macro generally expands to /var/ $ rpmbuild --showrc | grep _var -14: _dbpath %{_var}/lib/rpm -14: _tmppath %{_var}/tmp -14: _var /var but macros.scl does not redefine it in terms of scl root: $ grep _var /etc/rpm/macros.scl (no output) This casues scl-using rpms that use %{_var} to create/own/put files in /var instead of somehwere under /opt.
I'm pretty sure you are not supposed to use %_var. IIRC you should be using %_localstatedir and that one is defined correctly. Redefining %_var might actually cause some problems, as _dbpath and _tmppath depend on it.